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

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 (116) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/aiService.js +1 -1
  76. package/src/services/apiKeyManager.js +1 -1
  77. package/src/services/benchmarkService.js +1 -1
  78. package/src/services/budgetService.js +1 -1
  79. package/src/services/contextInjectionService.js +1 -1
  80. package/src/services/conversationCompactionService.js +1 -1
  81. package/src/services/errorHandler.js +1 -1
  82. package/src/services/fileAttachmentService.js +1 -1
  83. package/src/services/modelRouterService.js +1 -1
  84. package/src/services/modelsService.js +1 -1
  85. package/src/services/qualityInspector.js +1 -1
  86. package/src/services/tokenCountingService.js +1 -1
  87. package/src/tools/agentCommunicationTool.js +1 -1
  88. package/src/tools/agentDelayTool.js +1 -1
  89. package/src/tools/asyncToolManager.js +1 -1
  90. package/src/tools/baseTool.js +1 -1
  91. package/src/tools/browserTool.js +1 -1
  92. package/src/tools/cloneDetectionTool.js +1 -1
  93. package/src/tools/dependencyResolverTool.js +1 -1
  94. package/src/tools/fileContentReplaceTool.js +1 -1
  95. package/src/tools/fileSystemTool.js +1 -1
  96. package/src/tools/fileTreeTool.js +1 -1
  97. package/src/tools/imageTool.js +1 -1
  98. package/src/tools/importAnalyzerTool.js +1 -1
  99. package/src/tools/jobDoneTool.js +1 -1
  100. package/src/tools/seekTool.js +1 -1
  101. package/src/tools/staticAnalysisTool.js +1 -1
  102. package/src/tools/taskManagerTool.js +1 -1
  103. package/src/tools/terminalTool.js +1 -1
  104. package/src/tools/webTool.js +1 -1
  105. package/src/types/agent.js +1 -1
  106. package/src/types/contextReference.js +1 -1
  107. package/src/types/conversation.js +1 -1
  108. package/src/types/toolCommand.js +1 -1
  109. package/src/utilities/attachmentValidator.js +1 -1
  110. package/src/utilities/configManager.js +1 -1
  111. package/src/utilities/constants.js +1 -1
  112. package/src/utilities/directoryAccessManager.js +1 -1
  113. package/src/utilities/fileProcessor.js +1 -1
  114. package/src/utilities/logger.js +1 -1
  115. package/src/utilities/tagParser.js +1 -1
  116. package/src/utilities/toolConstants.js +1 -1
@@ -1 +1 @@
1
- const a0_0x406365=a0_0x57d1;(function(_0x372b35,_0x14befc){const _0x3fafac=a0_0x57d1,_0x3e918b=_0x372b35();while(!![]){try{const _0x3091e6=-parseInt(_0x3fafac(0x19a))/0x1+parseInt(_0x3fafac(0x179))/0x2+-parseInt(_0x3fafac(0x18a))/0x3*(parseInt(_0x3fafac(0x1a1))/0x4)+parseInt(_0x3fafac(0x19e))/0x5+-parseInt(_0x3fafac(0x194))/0x6*(-parseInt(_0x3fafac(0x19d))/0x7)+parseInt(_0x3fafac(0x1a0))/0x8+-parseInt(_0x3fafac(0x184))/0x9*(parseInt(_0x3fafac(0x19c))/0xa);if(_0x3091e6===_0x14befc)break;else _0x3e918b['push'](_0x3e918b['shift']());}catch(_0x1ce79c){_0x3e918b['push'](_0x3e918b['shift']());}}}(a0_0x4023,0x5ecd8));import a0_0x838cf3 from'typescript';function a0_0x57d1(_0x3715df,_0x280c4a){_0x3715df=_0x3715df-0x170;const _0x402369=a0_0x4023();let _0x57d1be=_0x402369[_0x3715df];if(a0_0x57d1['LrgFWs']===undefined){var _0x1265ce=function(_0xf078cd){const _0xaa49da='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x838cf3='',_0x4b3af8='';for(let _0x352ad7=0x0,_0x562696,_0x582b38,_0x2c6d11=0x0;_0x582b38=_0xf078cd['charAt'](_0x2c6d11++);~_0x582b38&&(_0x562696=_0x352ad7%0x4?_0x562696*0x40+_0x582b38:_0x582b38,_0x352ad7++%0x4)?_0x838cf3+=String['fromCharCode'](0xff&_0x562696>>(-0x2*_0x352ad7&0x6)):0x0){_0x582b38=_0xaa49da['indexOf'](_0x582b38);}for(let _0x51030e=0x0,_0x3b5dbf=_0x838cf3['length'];_0x51030e<_0x3b5dbf;_0x51030e++){_0x4b3af8+='%'+('00'+_0x838cf3['charCodeAt'](_0x51030e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4b3af8);};a0_0x57d1['OWBtSO']=_0x1265ce,a0_0x57d1['wueuAx']={},a0_0x57d1['LrgFWs']=!![];}const _0x2dcd43=_0x402369[0x0],_0x4ca3bc=_0x3715df+_0x2dcd43,_0x1fd932=a0_0x57d1['wueuAx'][_0x4ca3bc];return!_0x1fd932?(_0x57d1be=a0_0x57d1['OWBtSO'](_0x57d1be),a0_0x57d1['wueuAx'][_0x4ca3bc]=_0x57d1be):_0x57d1be=_0x1fd932,_0x57d1be;}import a0_0x4b3af8 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';class JavaScriptAnalyzer{constructor(_0x352ad7=null){const _0x17931f=a0_0x57d1;this[_0x17931f(0x19f)]=_0x352ad7,this[_0x17931f(0x1a2)]={'allowJs':!![],'checkJs':!![],'noEmit':!![],'jsx':a0_0x838cf3['JsxEmit'][_0x17931f(0x189)],'target':a0_0x838cf3['ScriptTarget'][_0x17931f(0x183)],'module':a0_0x838cf3[_0x17931f(0x191)][_0x17931f(0x192)],'moduleResolution':a0_0x838cf3['ModuleResolutionKind']['NodeJs'],'esModuleInterop':!![],'skipLibCheck':!![],'strict':![],'noImplicitAny':![]};}async['analyze'](_0x562696,_0x582b38,_0x2c6d11={}){const _0x1cd762=a0_0x57d1;try{const _0x51030e=[],_0x3b5dbf=a0_0x838cf3[_0x1cd762(0x176)](_0x562696,_0x582b38,a0_0x838cf3[_0x1cd762(0x185)]['Latest'],!![]),_0x50eb86=this[_0x1cd762(0x173)](_0x3b5dbf);_0x51030e[_0x1cd762(0x19b)](..._0x50eb86);const _0x5c4ac6=await this['getSemanticDiagnostics'](_0x562696,_0x582b38);return _0x51030e[_0x1cd762(0x19b)](..._0x5c4ac6),this['logger']?.[_0x1cd762(0x181)]('JavaScript\x20analysis\x20completed',{'file':_0x562696,'totalDiagnostics':_0x51030e[_0x1cd762(0x17d)],'errors':_0x51030e[_0x1cd762(0x180)](_0x490f42=>_0x490f42[_0x1cd762(0x17a)]===STATIC_ANALYSIS[_0x1cd762(0x193)]['ERROR'])['length'],'warnings':_0x51030e['filter'](_0x165bd6=>_0x165bd6['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING'])['length']}),_0x51030e;}catch(_0x2f974f){return this[_0x1cd762(0x19f)]?.['error']('JavaScript\x20analysis\x20failed',{'file':_0x562696,'error':_0x2f974f['message']}),[{'file':_0x562696,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS[_0x1cd762(0x193)]['ERROR'],'rule':'analyzer-error','message':'Analysis\x20failed:\x20'+_0x2f974f[_0x1cd762(0x17e)],'category':STATIC_ANALYSIS[_0x1cd762(0x17c)][_0x1cd762(0x178)]}];}}[a0_0x406365(0x173)](_0x26bab4){const _0x432ffe=a0_0x406365,_0x56a1c6=[],_0x5099e8=_0x52226f=>{const _0x1a54d9=a0_0x57d1;if(_0x52226f['kind']===a0_0x838cf3['SyntaxKind']['Unknown']){const _0xe3a67=_0x26bab4['getLineAndCharacterOfPosition'](_0x52226f['getStart']());_0x56a1c6[_0x1a54d9(0x19b)]({'file':_0x26bab4['fileName'],'line':_0xe3a67['line']+0x1,'column':_0xe3a67[_0x1a54d9(0x170)]+0x1,'severity':STATIC_ANALYSIS[_0x1a54d9(0x193)][_0x1a54d9(0x187)],'rule':_0x1a54d9(0x186),'message':_0x1a54d9(0x198),'category':STATIC_ANALYSIS['CATEGORY'][_0x1a54d9(0x178)],'fixable':![]});}a0_0x838cf3[_0x1a54d9(0x172)](_0x52226f,_0x5099e8);};_0x5099e8(_0x26bab4);if(_0x26bab4[_0x432ffe(0x171)]&&_0x26bab4[_0x432ffe(0x171)][_0x432ffe(0x17d)]>0x0)for(const _0x52f0e5 of _0x26bab4['parseDiagnostics']){_0x56a1c6['push'](this[_0x432ffe(0x195)](_0x52f0e5,_0x26bab4));}return _0x56a1c6;}async[a0_0x406365(0x196)](_0x26c37e,_0x31b16e){const _0xe14f6f=a0_0x406365,_0x502e42=[];try{const _0x58d6c5=a0_0x838cf3[_0xe14f6f(0x176)](_0x26c37e,_0x31b16e,a0_0x838cf3[_0xe14f6f(0x185)][_0xe14f6f(0x183)],!![]),_0x4ed780={'getSourceFile':_0x57db1e=>{if(_0x57db1e===_0x26c37e)return _0x58d6c5;return undefined;},'getDefaultLibFileName':()=>_0xe14f6f(0x17f),'writeFile':()=>{},'getCurrentDirectory':()=>a0_0x4b3af8[_0xe14f6f(0x174)](_0x26c37e),'getDirectories':()=>[],'fileExists':_0x3f50cf=>_0x3f50cf===_0x26c37e,'readFile':_0x4ddc87=>{if(_0x4ddc87===_0x26c37e)return _0x31b16e;return undefined;},'getCanonicalFileName':_0x15276b=>_0x15276b,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x15916a=a0_0x838cf3[_0xe14f6f(0x18b)]({'rootNames':[_0x26c37e],'options':this['compilerOptions'],'host':_0x4ed780}),_0x117efd=_0x15916a['getSemanticDiagnostics'](_0x58d6c5);for(const _0x28df4b of _0x117efd){_0x502e42['push'](this[_0xe14f6f(0x195)](_0x28df4b,_0x58d6c5));}}catch(_0x35793a){this['logger']?.['debug']('Semantic\x20analysis\x20skipped',{'file':_0x26c37e,'reason':_0x35793a[_0xe14f6f(0x17e)]});}return _0x502e42;}[a0_0x406365(0x195)](_0x9a5cb1,_0x546356){const _0x464804=a0_0x406365;let _0x35a37b=0x0,_0x2ebc1=0x0;if(_0x9a5cb1[_0x464804(0x188)]&&_0x9a5cb1['start']!==undefined){const _0x3ceaed=_0x9a5cb1[_0x464804(0x188)]['getLineAndCharacterOfPosition'](_0x9a5cb1[_0x464804(0x182)]);_0x35a37b=_0x3ceaed[_0x464804(0x190)]+0x1,_0x2ebc1=_0x3ceaed[_0x464804(0x170)]+0x1;}else{if(_0x546356&&_0x9a5cb1['start']!==undefined){const _0xc5cbbf=_0x546356[_0x464804(0x18e)](_0x9a5cb1['start']);_0x35a37b=_0xc5cbbf[_0x464804(0x190)]+0x1,_0x2ebc1=_0xc5cbbf[_0x464804(0x170)]+0x1;}}const _0x1738c0=a0_0x838cf3[_0x464804(0x18f)](_0x9a5cb1[_0x464804(0x18d)],'\x0a');let _0xf6303d;switch(_0x9a5cb1['category']){case a0_0x838cf3['DiagnosticCategory'][_0x464804(0x177)]:_0xf6303d=STATIC_ANALYSIS['SEVERITY'][_0x464804(0x187)];break;case a0_0x838cf3['DiagnosticCategory']['Warning']:_0xf6303d=STATIC_ANALYSIS[_0x464804(0x193)]['WARNING'];break;case a0_0x838cf3[_0x464804(0x18c)]['Message']:case a0_0x838cf3['DiagnosticCategory'][_0x464804(0x197)]:_0xf6303d=STATIC_ANALYSIS[_0x464804(0x193)][_0x464804(0x17b)];break;default:_0xf6303d=STATIC_ANALYSIS[_0x464804(0x193)][_0x464804(0x187)];}let _0x1e5f87=STATIC_ANALYSIS['CATEGORY'][_0x464804(0x178)];const _0x5848d1=_0x9a5cb1['code'];if(_0x5848d1>=0x7d0&&_0x5848d1<0xbb8)_0x1e5f87=STATIC_ANALYSIS[_0x464804(0x17c)]['TYPE'];else{if(_0x5848d1>=0x3e8&&_0x5848d1<0x7d0)_0x1e5f87=STATIC_ANALYSIS['CATEGORY'][_0x464804(0x178)];else _0x5848d1>=0x8fc&&_0x5848d1<0x960&&(_0x1e5f87=STATIC_ANALYSIS['CATEGORY']['IMPORT']);}return(_0x1738c0['toLowerCase']()[_0x464804(0x175)]('cannot\x20find\x20module')||_0x1738c0['toLowerCase']()['includes']('import'))&&(_0x1e5f87=STATIC_ANALYSIS['CATEGORY']['IMPORT']),{'file':_0x9a5cb1[_0x464804(0x188)]?.['fileName']||_0x546356?.['fileName']||_0x464804(0x199),'line':_0x35a37b,'column':_0x2ebc1,'severity':_0xf6303d,'rule':'TS'+_0x5848d1,'message':_0x1738c0,'category':_0x1e5f87,'fixable':![],'code':_0x9a5cb1['code']};}}function a0_0x4023(){const _0xadb659=['zMLSzq','uMvHy3q','mZi4nJe3vLPnwer3','y3jLyxrLuhjVz3jHBq','rgLHz25VC3rPy0nHDgvNB3j5','BwvZC2fNzvrLEhq','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','BgLUzq','tw9KDwXLs2LUza','rvnozxH0','u0vwrvjjvfK','mZa3mduWruTps1zn','zM9YBwf0rgLHz25VC3rPyW','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','u3vNz2vZDgLVBG','u3LUDgf4igvYCM9Y','Dw5RBM93BG','mJC5ndmYu0TZwNf5','ChvZAa','mtb3qvPdBuu','ntzHyxzMCKy','mtKZntiXnurPzg9Zva','Bg9Nz2vY','nZi5mdu2sNzmqvH4','mJrft3vgBui','y29TCgLSzxjpChrPB25Z','y2HHCMfJDgvY','CgfYC2veAwfNBM9ZDgLJCW','zM9YrwfJAenOAwXK','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','zgLYBMfTzq','Aw5JBhvKzxm','y3jLyxrLu291CMnLrMLSzq','rxjYB3i','u1Lovefy','mta0ode0ng96BgrVwa','C2v2zxjPDhK','su5gtW','q0furuDpuLK','BgvUz3rO','BwvZC2fNzq','BgLIlMqUDhm','zMLSDgvY','zgvIDwC','C3rHCNq','tgf0zxn0','nZGWmdiXseviAffW','u2nYAxb0vgfYz2v0','C3LUDgf4lwvYCM9Y','rvjst1i'];a0_0x4023=function(){return _0xadb659;};return a0_0x4023();}export default JavaScriptAnalyzer;
1
+ const a0_0x483976=a0_0x2ee9;(function(_0x526c48,_0x188503){const _0x3b1439=a0_0x2ee9,_0x332a2b=_0x526c48();while(!![]){try{const _0x4f98c6=parseInt(_0x3b1439(0x183))/0x1+-parseInt(_0x3b1439(0x169))/0x2+parseInt(_0x3b1439(0x16c))/0x3*(-parseInt(_0x3b1439(0x17c))/0x4)+-parseInt(_0x3b1439(0x15e))/0x5+parseInt(_0x3b1439(0x173))/0x6+-parseInt(_0x3b1439(0x176))/0x7*(-parseInt(_0x3b1439(0x17e))/0x8)+parseInt(_0x3b1439(0x157))/0x9;if(_0x4f98c6===_0x188503)break;else _0x332a2b['push'](_0x332a2b['shift']());}catch(_0x560c57){_0x332a2b['push'](_0x332a2b['shift']());}}}(a0_0x4031,0xc82cd));import a0_0x39aa88 from'typescript';import a0_0x4ec588 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';function a0_0x2ee9(_0x28550c,_0xa450e6){_0x28550c=_0x28550c-0x14f;const _0x403126=a0_0x4031();let _0x2ee934=_0x403126[_0x28550c];if(a0_0x2ee9['krQnhB']===undefined){var _0x20dfcd=function(_0x48dc11){const _0x36437b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39aa88='',_0x4ec588='';for(let _0xe75453=0x0,_0x6d6027,_0x150fbc,_0x35182e=0x0;_0x150fbc=_0x48dc11['charAt'](_0x35182e++);~_0x150fbc&&(_0x6d6027=_0xe75453%0x4?_0x6d6027*0x40+_0x150fbc:_0x150fbc,_0xe75453++%0x4)?_0x39aa88+=String['fromCharCode'](0xff&_0x6d6027>>(-0x2*_0xe75453&0x6)):0x0){_0x150fbc=_0x36437b['indexOf'](_0x150fbc);}for(let _0x1e2a6d=0x0,_0x4fcd0c=_0x39aa88['length'];_0x1e2a6d<_0x4fcd0c;_0x1e2a6d++){_0x4ec588+='%'+('00'+_0x39aa88['charCodeAt'](_0x1e2a6d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ec588);};a0_0x2ee9['DZxqYh']=_0x20dfcd,a0_0x2ee9['jJTTgC']={},a0_0x2ee9['krQnhB']=!![];}const _0xbd9b83=_0x403126[0x0],_0x3a9aee=_0x28550c+_0xbd9b83,_0x59b7a0=a0_0x2ee9['jJTTgC'][_0x3a9aee];return!_0x59b7a0?(_0x2ee934=a0_0x2ee9['DZxqYh'](_0x2ee934),a0_0x2ee9['jJTTgC'][_0x3a9aee]=_0x2ee934):_0x2ee934=_0x59b7a0,_0x2ee934;}function a0_0x4031(){const _0x462cf7=['mtK1ntC1ndLZqNv5BLC','BwvZC2fNzq','BgLIlMqUDhm','zgvIDwC','Bg9Nz2vY','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','rvjst1i','oda0mZK4nw9NCNPSqG','A2LUza','zMLSzq','y3jLyxrLuhjVz3jHBq','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','y2HHCMfJDgvY','tw9KDwXLuMvZB2X1DgLVBKTPBMq','u3LUDgf4igvYCM9Y','y2fUBM90igzPBMqGBw9KDwXL','zM9YBwf0rgLHz25VC3rPyW','C3LUDgf4lwvYCM9Y','mtm0ndyXmNL0uLH2Dq','y29TCgLSzxjpChrPB25Z','C3rHCNq','otG3svzTAe16','y2f0zwDVCNK','zxjYB3i','rgLHz25VC3rPy0nHDgvNB3j5','vfLqrq','rvnozxH0','u2nYAxb0vgfYz2v0','mZy1ntyWofrQs0T0yW','zgLYBMfTzq','u2vTyw50AwmGyw5HBhLZAxmGC2TPChbLza','mte5De5LAwnM','u0vwrvjjvfK','rxjYB3i','yw5HBhL6zq','uMvHy3q','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','mtC4otzKvurwBuW','qw5HBhLZAxmGzMfPBgvKoIa','nJq4nta0sxnfwwLt','Aw5JBhvKzxm','q0furuDpuLK','sMf2yvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','twvZC2fNzq','ndeYnty2vg1hAuvX','BgLUzq','ChvZAa','yw5HBhL6zxiTzxjYB3i','BgvUz3rO','C2v2zxjPDhK','v0fstKLorW','u3vNz2vZDgLVBG','z2v0u3rHCNq','u1Lovefy'];a0_0x4031=function(){return _0x462cf7;};return a0_0x4031();}class JavaScriptAnalyzer{constructor(_0xe75453=null){const _0x2e8a8a=a0_0x2ee9;this['logger']=_0xe75453,this[_0x2e8a8a(0x16a)]={'allowJs':!![],'checkJs':!![],'noEmit':!![],'jsx':a0_0x39aa88['JsxEmit'][_0x2e8a8a(0x17a)],'target':a0_0x39aa88[_0x2e8a8a(0x172)]['Latest'],'module':a0_0x39aa88['ModuleKind'][_0x2e8a8a(0x171)],'moduleResolution':a0_0x39aa88[_0x2e8a8a(0x164)]['NodeJs'],'esModuleInterop':!![],'skipLibCheck':!![],'strict':![],'noImplicitAny':![]};}async[a0_0x483976(0x179)](_0x6d6027,_0x150fbc,_0x35182e={}){const _0x19fb07=a0_0x483976;try{const _0x1e2a6d=[],_0x4fcd0c=a0_0x39aa88['createSourceFile'](_0x6d6027,_0x150fbc,a0_0x39aa88['ScriptTarget']['Latest'],!![]),_0x9a33b9=this['getSyntacticDiagnostics'](_0x4fcd0c);_0x1e2a6d['push'](..._0x9a33b9);const _0x4997c3=await this['getSemanticDiagnostics'](_0x6d6027,_0x150fbc);return _0x1e2a6d['push'](..._0x4997c3),this['logger']?.[_0x19fb07(0x15a)](_0x19fb07(0x181),{'file':_0x6d6027,'totalDiagnostics':_0x1e2a6d['length'],'errors':_0x1e2a6d['filter'](_0x38d46a=>_0x38d46a[_0x19fb07(0x152)]===STATIC_ANALYSIS['SEVERITY'][_0x19fb07(0x15d)])['length'],'warnings':_0x1e2a6d['filter'](_0x1d983d=>_0x1d983d['severity']===STATIC_ANALYSIS[_0x19fb07(0x177)]['WARNING'])[_0x19fb07(0x151)]}),_0x1e2a6d;}catch(_0xd432f3){return this['logger']?.[_0x19fb07(0x16e)]('JavaScript\x20analysis\x20failed',{'file':_0x6d6027,'error':_0xd432f3['message']}),[{'file':_0x6d6027,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS[_0x19fb07(0x177)][_0x19fb07(0x15d)],'rule':_0x19fb07(0x150),'message':_0x19fb07(0x17d)+_0xd432f3[_0x19fb07(0x158)],'category':STATIC_ANALYSIS[_0x19fb07(0x180)][_0x19fb07(0x156)]}];}}['getSyntacticDiagnostics'](_0x2f4eba){const _0x332da3=a0_0x483976,_0x20a540=[],_0x462cf6=_0x1fcb67=>{const _0x36c1de=a0_0x2ee9;if(_0x1fcb67[_0x36c1de(0x15f)]===a0_0x39aa88['SyntaxKind']['Unknown']){const _0x29ca9f=_0x2f4eba[_0x36c1de(0x162)](_0x1fcb67[_0x36c1de(0x155)]());_0x20a540['push']({'file':_0x2f4eba['fileName'],'line':_0x29ca9f['line']+0x1,'column':_0x29ca9f[_0x36c1de(0x163)]+0x1,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':_0x36c1de(0x168),'message':_0x36c1de(0x165),'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX'],'fixable':![]});}a0_0x39aa88['forEachChild'](_0x1fcb67,_0x462cf6);};_0x462cf6(_0x2f4eba);if(_0x2f4eba['parseDiagnostics']&&_0x2f4eba['parseDiagnostics'][_0x332da3(0x151)]>0x0)for(const _0x2bc4b0 of _0x2f4eba['parseDiagnostics']){_0x20a540[_0x332da3(0x14f)](this[_0x332da3(0x167)](_0x2bc4b0,_0x2f4eba));}return _0x20a540;}async[a0_0x483976(0x17b)](_0x3ec075,_0x3c4851){const _0x2f0e12=a0_0x483976,_0x43504d=[];try{const _0x1f5bbc=a0_0x39aa88['createSourceFile'](_0x3ec075,_0x3c4851,a0_0x39aa88[_0x2f0e12(0x172)]['Latest'],!![]),_0x2457aa={'getSourceFile':_0x562bd4=>{if(_0x562bd4===_0x3ec075)return _0x1f5bbc;return undefined;},'getDefaultLibFileName':()=>_0x2f0e12(0x159),'writeFile':()=>{},'getCurrentDirectory':()=>a0_0x4ec588[_0x2f0e12(0x174)](_0x3ec075),'getDirectories':()=>[],'fileExists':_0x33070a=>_0x33070a===_0x3ec075,'readFile':_0x2280dc=>{if(_0x2280dc===_0x3ec075)return _0x3c4851;return undefined;},'getCanonicalFileName':_0x4d2205=>_0x4d2205,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x206bb3=a0_0x39aa88[_0x2f0e12(0x161)]({'rootNames':[_0x3ec075],'options':this[_0x2f0e12(0x16a)],'host':_0x2457aa}),_0x51e719=_0x206bb3[_0x2f0e12(0x17b)](_0x1f5bbc);for(const _0x5c3e97 of _0x51e719){_0x43504d['push'](this[_0x2f0e12(0x167)](_0x5c3e97,_0x1f5bbc));}}catch(_0x4c30fd){this[_0x2f0e12(0x15b)]?.['debug'](_0x2f0e12(0x175),{'file':_0x3ec075,'reason':_0x4c30fd[_0x2f0e12(0x158)]});}return _0x43504d;}['formatDiagnostic'](_0x4a0c23,_0x591219){const _0x41ac03=a0_0x483976;let _0x860659=0x0,_0x5e4950=0x0;if(_0x4a0c23[_0x41ac03(0x160)]&&_0x4a0c23[_0x41ac03(0x16b)]!==undefined){const _0x3a4f3b=_0x4a0c23[_0x41ac03(0x160)][_0x41ac03(0x162)](_0x4a0c23['start']);_0x860659=_0x3a4f3b[_0x41ac03(0x184)]+0x1,_0x5e4950=_0x3a4f3b[_0x41ac03(0x163)]+0x1;}else{if(_0x591219&&_0x4a0c23[_0x41ac03(0x16b)]!==undefined){const _0x46d17a=_0x591219['getLineAndCharacterOfPosition'](_0x4a0c23[_0x41ac03(0x16b)]);_0x860659=_0x46d17a['line']+0x1,_0x5e4950=_0x46d17a[_0x41ac03(0x163)]+0x1;}}const _0x43e5d0=a0_0x39aa88[_0x41ac03(0x15c)](_0x4a0c23['messageText'],'\x0a');let _0x1b6080;switch(_0x4a0c23[_0x41ac03(0x16d)]){case a0_0x39aa88['DiagnosticCategory'][_0x41ac03(0x178)]:_0x1b6080=STATIC_ANALYSIS[_0x41ac03(0x177)]['ERROR'];break;case a0_0x39aa88[_0x41ac03(0x16f)]['Warning']:_0x1b6080=STATIC_ANALYSIS[_0x41ac03(0x177)][_0x41ac03(0x153)];break;case a0_0x39aa88['DiagnosticCategory'][_0x41ac03(0x182)]:case a0_0x39aa88[_0x41ac03(0x16f)][_0x41ac03(0x154)]:_0x1b6080=STATIC_ANALYSIS[_0x41ac03(0x177)]['INFO'];break;default:_0x1b6080=STATIC_ANALYSIS[_0x41ac03(0x177)][_0x41ac03(0x15d)];}let _0x39f243=STATIC_ANALYSIS[_0x41ac03(0x180)]['SYNTAX'];const _0x4814c1=_0x4a0c23['code'];if(_0x4814c1>=0x7d0&&_0x4814c1<0xbb8)_0x39f243=STATIC_ANALYSIS[_0x41ac03(0x180)][_0x41ac03(0x170)];else{if(_0x4814c1>=0x3e8&&_0x4814c1<0x7d0)_0x39f243=STATIC_ANALYSIS['CATEGORY'][_0x41ac03(0x156)];else _0x4814c1>=0x8fc&&_0x4814c1<0x960&&(_0x39f243=STATIC_ANALYSIS['CATEGORY']['IMPORT']);}return(_0x43e5d0['toLowerCase']()[_0x41ac03(0x17f)](_0x41ac03(0x166))||_0x43e5d0['toLowerCase']()[_0x41ac03(0x17f)]('import'))&&(_0x39f243=STATIC_ANALYSIS[_0x41ac03(0x180)]['IMPORT']),{'file':_0x4a0c23[_0x41ac03(0x160)]?.['fileName']||_0x591219?.['fileName']||'unknown','line':_0x860659,'column':_0x5e4950,'severity':_0x1b6080,'rule':'TS'+_0x4814c1,'message':_0x43e5d0,'category':_0x39f243,'fixable':![],'code':_0x4a0c23['code']};}}export default JavaScriptAnalyzer;
@@ -1 +1 @@
1
- const a0_0x137879=a0_0x1922;(function(_0x1437e0,_0x5c8d8d){const _0x163325=a0_0x1922,_0x357460=_0x1437e0();while(!![]){try{const _0x269f88=-parseInt(_0x163325(0xfc))/0x1*(-parseInt(_0x163325(0x10f))/0x2)+-parseInt(_0x163325(0x102))/0x3*(-parseInt(_0x163325(0x10b))/0x4)+parseInt(_0x163325(0x107))/0x5+-parseInt(_0x163325(0xef))/0x6+-parseInt(_0x163325(0xf9))/0x7*(parseInt(_0x163325(0x10a))/0x8)+parseInt(_0x163325(0xea))/0x9+-parseInt(_0x163325(0xf4))/0xa;if(_0x269f88===_0x5c8d8d)break;else _0x357460['push'](_0x357460['shift']());}catch(_0x4a415f){_0x357460['push'](_0x357460['shift']());}}}(a0_0x6407,0x9838b));import a0_0x1ee269 from'prettier';function a0_0x6407(){const _0x2d700c=['mJa1nZnAu1PswMy','C3bSAxq','BgvUz3rO','mJmWnNj3Bw1gDG','EwfTBa','lM1K','y29UzMLNq2fJAgu','CMvTB3zLza','Aw5JBhvKzxm','mty3mdf6zez0Cfe','uhjLDhrPzxiGy2HLy2SGzMfPBgvK','AhrTBa','zM9YBwf0','z2v0uhjLDhrPzxjdB25MAwC','mJC5nZq1nxjOsLzyra','DNvL','z2v0','ntG0A3z6Bu1z','mJyWyu12BKv2','yMfIzwW','lM1QCW','y291BNrdAgfUz2vKtgLUzxm','ndGYzxjcq3jj','z2v0ugfYC2vY','AgfZ','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','lMnQCW','lNLTBa','nZK5mJe1m0rduNfIyq','BwvZC2fNzq','zxH0BMfTzq','DhLWzxnJCMLWDa','Bg9Nz2vY','nJG3ntyWnfrUu1vLuq','zgvZy3jPyMvdAgfUz2vZ','zxjYB3i','lNz1zq','zgvIDwC','mZGXmti5mfbkyNfLwG','lNnJC3m','ywrKzwq','AxntDxbWB3j0zwq','Dg9mB3DLCKnHC2u'];a0_0x6407=function(){return _0x2d700c;};return a0_0x6407();}function a0_0x1922(_0xd791d,_0x19cea8){_0xd791d=_0xd791d-0xe8;const _0x6407b6=a0_0x6407();let _0x192239=_0x6407b6[_0xd791d];if(a0_0x1922['zKXZbz']===undefined){var _0x4566a0=function(_0x3aa7dd){const _0x31e83e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ee269='',_0x59f8f1='';for(let _0x1b8b5b=0x0,_0x35531d,_0x300ec5,_0xa2acd5=0x0;_0x300ec5=_0x3aa7dd['charAt'](_0xa2acd5++);~_0x300ec5&&(_0x35531d=_0x1b8b5b%0x4?_0x35531d*0x40+_0x300ec5:_0x300ec5,_0x1b8b5b++%0x4)?_0x1ee269+=String['fromCharCode'](0xff&_0x35531d>>(-0x2*_0x1b8b5b&0x6)):0x0){_0x300ec5=_0x31e83e['indexOf'](_0x300ec5);}for(let _0x1b2bf9=0x0,_0x2a6b10=_0x1ee269['length'];_0x1b2bf9<_0x2a6b10;_0x1b2bf9++){_0x59f8f1+='%'+('00'+_0x1ee269['charCodeAt'](_0x1b2bf9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x59f8f1);};a0_0x1922['kImVcr']=_0x4566a0,a0_0x1922['ZnCwoG']={},a0_0x1922['zKXZbz']=!![];}const _0x4a5f51=_0x6407b6[0x0],_0xc024b0=_0xd791d+_0x4a5f51,_0x2640a9=a0_0x1922['ZnCwoG'][_0xc024b0];return!_0x2640a9?(_0x192239=a0_0x1922['kImVcr'](_0x192239),a0_0x1922['ZnCwoG'][_0xc024b0]=_0x192239):_0x192239=_0x2640a9,_0x192239;}import a0_0x59f8f1 from'path';import a0_0x1b8b5b from'fs/promises';class PrettierFormatter{constructor(_0x35531d=null){const _0x21e33b=a0_0x1922;this[_0x21e33b(0xee)]=_0x35531d,this[_0x21e33b(0xff)]=new Map();}async['format'](_0x300ec5,_0xa2acd5,_0x1b2bf9={}){const _0x3e8f95=a0_0x1922;try{const _0x2a6b10=await this['getPrettierConfig'](_0x300ec5,_0x1b2bf9['workingDir']),_0x46c62c=this['getParser'](_0x300ec5),_0x1e14be=await a0_0x1ee269[_0x3e8f95(0x105)](_0xa2acd5,{..._0x2a6b10,'filepath':_0x300ec5,'parser':_0x46c62c}),_0x1c7049=_0x1e14be!==_0xa2acd5;return{'formatted':_0x1c7049,'content':_0x1e14be,'original':_0xa2acd5,'changes':_0x1c7049?this['describeChanges'](_0xa2acd5,_0x1e14be):[],'linesChanged':_0x1c7049?this[_0x3e8f95(0x10e)](_0xa2acd5,_0x1e14be):0x0};}catch(_0x45cd6e){this[_0x3e8f95(0xee)]?.[_0x3e8f95(0xf1)]('Prettier\x20formatting\x20failed',{'file':_0x300ec5,'error':_0x45cd6e['message']});throw new Error('Prettier\x20formatting\x20failed:\x20'+_0x45cd6e['message']);}}async['check'](_0x1ece30,_0x3a56a4,_0x4f62cb={}){const _0x1b271a=a0_0x1922;try{const _0x4fa2df=await this[_0x1b271a(0x106)](_0x1ece30,_0x4f62cb['workingDir']),_0x598798=this['getParser'](_0x1ece30),_0x58b36d=await a0_0x1ee269[_0x1b271a(0x105)](_0x3a56a4,{..._0x4fa2df,'filepath':_0x1ece30,'parser':_0x598798});return _0x58b36d!==_0x3a56a4;}catch(_0x3d70d3){return this['logger']?.['warn'](_0x1b271a(0x103),{'file':_0x1ece30,'error':_0x3d70d3[_0x1b271a(0xeb)]}),![];}}async['getPrettierConfig'](_0x5ab98b,_0x314041){const _0x5a2d3a=a0_0x1922,_0x45a07d=_0x314041||a0_0x59f8f1['dirname'](_0x5ab98b);if(this[_0x5a2d3a(0xff)][_0x5a2d3a(0x111)](_0x45a07d))return this['configCache'][_0x5a2d3a(0x109)](_0x45a07d);let _0x474dc7={};if(_0x314041)try{const _0x5438fb=await a0_0x1ee269['resolveConfig'](_0x5ab98b,{'config':_0x314041});_0x5438fb&&(this['logger']?.[_0x5a2d3a(0xf3)]('Found\x20Prettier\x20config',{'workingDir':_0x314041}),_0x474dc7=_0x5438fb);}catch(_0x84d6cd){this['logger']?.['debug']('No Prettier config found, using defaults');}const defaultConfig={'semi':!![],'singleQuote':!![],'tabWidth':0x2,'trailingComma':'es5','printWidth':0x64,'arrowParens':'avoid','endOfLine':'lf',..._0x474dc7};return this[_0x5a2d3a(0xff)]['set'](_0x45a07d,defaultConfig),defaultConfig;}[a0_0x137879(0x110)](_0xc05deb){const _0xda0557=a0_0x137879,_0xb4dcb4=a0_0x59f8f1[_0xda0557(0xec)](_0xc05deb)[_0xda0557(0xf8)](),_0xc5c109={'.js':'babel','.jsx':'babel','.mjs':'babel','.cjs':'babel','.ts':_0xda0557(0xed),'.tsx':'typescript','.json':'json','.json5':'json5','.css':'css','.scss':'scss','.less':'less','.html':_0xda0557(0x104),'.vue':_0xda0557(0x108),'.md':'markdown','.yaml':_0xda0557(0xfd),'.yml':_0xda0557(0xfd)};return _0xc5c109[_0xb4dcb4]||_0xda0557(0x10c);}[a0_0x137879(0xf0)](_0x2a3b8a,_0x3f1807){const _0x1439ec=a0_0x137879,_0x3e2217=[],_0x3a5ffc=_0x2a3b8a['split']('\x0a'),_0x3af5fc=_0x3f1807[_0x1439ec(0xfa)]('\x0a'),_0x40a53e=Math['max'](_0x3a5ffc[_0x1439ec(0xfb)],_0x3af5fc['length']);for(let _0x14087c=0x0;_0x14087c<_0x40a53e;_0x14087c++){const _0x234675=_0x3a5ffc[_0x14087c],_0x41e2e5=_0x3af5fc[_0x14087c];_0x234675!==_0x41e2e5&&_0x3e2217['push']({'line':_0x14087c+0x1,'type':_0x234675!==undefined&&_0x41e2e5!==undefined?'modified':_0x234675!==undefined?_0x1439ec(0x100):_0x1439ec(0xf6),'original':_0x234675||'','formatted':_0x41e2e5||''});}return _0x3e2217;}['countChangedLines'](_0x496426,_0x5bb0b9){const _0x4b275d=a0_0x137879,_0x1406b7=_0x496426[_0x4b275d(0xfa)]('\x0a'),_0x31263f=_0x5bb0b9[_0x4b275d(0xfa)]('\x0a');let _0x3a6c22=0x0;const _0x525cd7=Math['max'](_0x1406b7[_0x4b275d(0xfb)],_0x31263f[_0x4b275d(0xfb)]);for(let _0x12ec35=0x0;_0x12ec35<_0x525cd7;_0x12ec35++){_0x1406b7[_0x12ec35]!==_0x31263f[_0x12ec35]&&_0x3a6c22++;}return _0x3a6c22;}['getSupportedExtensions'](){const _0x42a0a7=a0_0x137879;return['.js','.jsx',_0x42a0a7(0x10d),_0x42a0a7(0xe8),'.ts','.tsx','.json','.json5','.css',_0x42a0a7(0xf5),'.less','.html',_0x42a0a7(0xf2),_0x42a0a7(0xfe),'.yaml',_0x42a0a7(0xe9)];}[a0_0x137879(0xf7)](_0x21723a){const _0x59fd22=a0_0x137879,_0x213bee=a0_0x59f8f1[_0x59fd22(0xec)](_0x21723a)[_0x59fd22(0xf8)]();return this[_0x59fd22(0x112)]()[_0x59fd22(0x101)](_0x213bee);}}export default PrettierFormatter;
1
+ const a0_0x41737c=a0_0x21ff;(function(_0x16f3b1,_0x23148a){const _0x3330f2=a0_0x21ff,_0x5c8e17=_0x16f3b1();while(!![]){try{const _0x148c15=parseInt(_0x3330f2(0x137))/0x1*(parseInt(_0x3330f2(0x142))/0x2)+parseInt(_0x3330f2(0x162))/0x3+-parseInt(_0x3330f2(0x15b))/0x4*(-parseInt(_0x3330f2(0x13f))/0x5)+-parseInt(_0x3330f2(0x14b))/0x6*(parseInt(_0x3330f2(0x131))/0x7)+-parseInt(_0x3330f2(0x12a))/0x8+-parseInt(_0x3330f2(0x12f))/0x9*(parseInt(_0x3330f2(0x12e))/0xa)+-parseInt(_0x3330f2(0x14e))/0xb*(-parseInt(_0x3330f2(0x146))/0xc);if(_0x148c15===_0x23148a)break;else _0x5c8e17['push'](_0x5c8e17['shift']());}catch(_0x2b0edf){_0x5c8e17['push'](_0x5c8e17['shift']());}}}(a0_0x104f,0x322e1));import a0_0x356653 from'prettier';import a0_0x56ca2f from'path';import a0_0x6e1b75 from'fs/promises';function a0_0x21ff(_0x4383ce,_0xe000a1){_0x4383ce=_0x4383ce-0x12a;const _0x104f91=a0_0x104f();let _0x21ff7d=_0x104f91[_0x4383ce];if(a0_0x21ff['OvYcMy']===undefined){var _0x429127=function(_0x3b0e10){const _0x2d136d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x356653='',_0x56ca2f='';for(let _0x6e1b75=0x0,_0x4429a7,_0xa81bca,_0x1a5f42=0x0;_0xa81bca=_0x3b0e10['charAt'](_0x1a5f42++);~_0xa81bca&&(_0x4429a7=_0x6e1b75%0x4?_0x4429a7*0x40+_0xa81bca:_0xa81bca,_0x6e1b75++%0x4)?_0x356653+=String['fromCharCode'](0xff&_0x4429a7>>(-0x2*_0x6e1b75&0x6)):0x0){_0xa81bca=_0x2d136d['indexOf'](_0xa81bca);}for(let _0x3c7bdf=0x0,_0x1b73a6=_0x356653['length'];_0x3c7bdf<_0x1b73a6;_0x3c7bdf++){_0x56ca2f+='%'+('00'+_0x356653['charCodeAt'](_0x3c7bdf)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x56ca2f);};a0_0x21ff['CEnRAs']=_0x429127,a0_0x21ff['nIxZNG']={},a0_0x21ff['OvYcMy']=!![];}const _0xf0f46=_0x104f91[0x0],_0x420608=_0x4383ce+_0xf0f46,_0x10440c=a0_0x21ff['nIxZNG'][_0x420608];return!_0x10440c?(_0x21ff7d=a0_0x21ff['CEnRAs'](_0x21ff7d),a0_0x21ff['nIxZNG'][_0x420608]=_0x21ff7d):_0x21ff7d=_0x10440c,_0x21ff7d;}class PrettierFormatter{constructor(_0x4429a7=null){const _0x3cb21b=a0_0x21ff;this['logger']=_0x4429a7,this[_0x3cb21b(0x138)]=new Map();}async[a0_0x41737c(0x155)](_0xa81bca,_0x1a5f42,_0x3c7bdf={}){const _0x568066=a0_0x41737c;try{const _0x1b73a6=await this['getPrettierConfig'](_0xa81bca,_0x3c7bdf['workingDir']),_0x11d747=this['getParser'](_0xa81bca),_0x2a8f56=await a0_0x356653[_0x568066(0x155)](_0x1a5f42,{..._0x1b73a6,'filepath':_0xa81bca,'parser':_0x11d747}),_0x5f297f=_0x2a8f56!==_0x1a5f42;return{'formatted':_0x5f297f,'content':_0x2a8f56,'original':_0x1a5f42,'changes':_0x5f297f?this['describeChanges'](_0x1a5f42,_0x2a8f56):[],'linesChanged':_0x5f297f?this[_0x568066(0x158)](_0x1a5f42,_0x2a8f56):0x0};}catch(_0x14d07f){this['logger']?.[_0x568066(0x148)](_0x568066(0x14c),{'file':_0xa81bca,'error':_0x14d07f['message']});throw new Error(_0x568066(0x149)+_0x14d07f['message']);}}async['check'](_0x38cef4,_0x306aaf,_0x1cd195={}){const _0x3699d9=a0_0x41737c;try{const _0xa0c242=await this['getPrettierConfig'](_0x38cef4,_0x1cd195[_0x3699d9(0x13e)]),_0x2c67cf=this[_0x3699d9(0x135)](_0x38cef4),_0x4f01e1=await a0_0x356653['format'](_0x306aaf,{..._0xa0c242,'filepath':_0x38cef4,'parser':_0x2c67cf});return _0x4f01e1!==_0x306aaf;}catch(_0x5878bf){return this['logger']?.['warn']('Prettier\x20check\x20failed',{'file':_0x38cef4,'error':_0x5878bf['message']}),![];}}async[a0_0x41737c(0x144)](_0x155fb3,_0x5be4b4){const _0x136793=a0_0x41737c,_0x5d4335=_0x5be4b4||a0_0x56ca2f[_0x136793(0x15c)](_0x155fb3);if(this[_0x136793(0x138)]['has'](_0x5d4335))return this['configCache']['get'](_0x5d4335);let _0x3d2b94={};if(_0x5be4b4)try{const _0x146b06=await a0_0x356653[_0x136793(0x15a)](_0x155fb3,{'config':_0x5be4b4});_0x146b06&&(this['logger']?.[_0x136793(0x136)]('Found\x20Prettier\x20config',{'workingDir':_0x5be4b4}),_0x3d2b94=_0x146b06);}catch(_0x302332){this[_0x136793(0x14a)]?.[_0x136793(0x136)]('No Prettier config found, using defaults');}const defaultConfig={'semi':!![],'singleQuote':!![],'tabWidth':0x2,'trailingComma':_0x136793(0x15d),'printWidth':0x64,'arrowParens':_0x136793(0x159),'endOfLine':'lf',..._0x3d2b94};return this[_0x136793(0x138)][_0x136793(0x156)](_0x5d4335,defaultConfig),defaultConfig;}[a0_0x41737c(0x135)](_0x4f9328){const _0x47cf0b=a0_0x41737c,_0x37da40=a0_0x56ca2f['extname'](_0x4f9328)['toLowerCase'](),_0xb6df3c={'.js':_0x47cf0b(0x12b),'.jsx':'babel','.mjs':'babel','.cjs':'babel','.ts':'typescript','.tsx':'typescript','.json':'json','.json5':_0x47cf0b(0x15e),'.css':_0x47cf0b(0x130),'.scss':_0x47cf0b(0x15f),'.less':'less','.html':_0x47cf0b(0x160),'.vue':_0x47cf0b(0x12c),'.md':_0x47cf0b(0x157),'.yaml':'yaml','.yml':_0x47cf0b(0x133)};return _0xb6df3c[_0x37da40]||'babel';}[a0_0x41737c(0x13c)](_0x215b60,_0x23534e){const _0x13810f=a0_0x41737c,_0x271776=[],_0xdeb847=_0x215b60['split']('\x0a'),_0x20f6ba=_0x23534e['split']('\x0a'),_0x36f0d0=Math['max'](_0xdeb847[_0x13810f(0x141)],_0x20f6ba['length']);for(let _0x1ea02b=0x0;_0x1ea02b<_0x36f0d0;_0x1ea02b++){const _0x54a17b=_0xdeb847[_0x1ea02b],_0x278556=_0x20f6ba[_0x1ea02b];_0x54a17b!==_0x278556&&_0x271776[_0x13810f(0x154)]({'line':_0x1ea02b+0x1,'type':_0x54a17b!==undefined&&_0x278556!==undefined?_0x13810f(0x153):_0x54a17b!==undefined?'removed':_0x13810f(0x147),'original':_0x54a17b||'','formatted':_0x278556||''});}return _0x271776;}[a0_0x41737c(0x158)](_0x4841cf,_0x3de002){const _0x2f2514=a0_0x41737c,_0x20ca2f=_0x4841cf[_0x2f2514(0x13a)]('\x0a'),_0x4fbc81=_0x3de002[_0x2f2514(0x13a)]('\x0a');let _0x803e95=0x0;const _0xbe7143=Math[_0x2f2514(0x145)](_0x20ca2f['length'],_0x4fbc81[_0x2f2514(0x141)]);for(let _0x1f8861=0x0;_0x1f8861<_0xbe7143;_0x1f8861++){_0x20ca2f[_0x1f8861]!==_0x4fbc81[_0x1f8861]&&_0x803e95++;}return _0x803e95;}['getSupportedExtensions'](){const _0x20820d=a0_0x41737c;return[_0x20820d(0x152),'.jsx','.mjs','.cjs',_0x20820d(0x12d),_0x20820d(0x14d),_0x20820d(0x140),_0x20820d(0x150),_0x20820d(0x134),_0x20820d(0x13d),_0x20820d(0x151),'.html',_0x20820d(0x143),'.md',_0x20820d(0x161),_0x20820d(0x14f)];}[a0_0x41737c(0x132)](_0x5c09f4){const _0x2dbe2f=a0_0x41737c,_0x32041e=a0_0x56ca2f['extname'](_0x5c09f4)[_0x2dbe2f(0x13b)]();return this['getSupportedExtensions']()[_0x2dbe2f(0x139)](_0x32041e);}}export default PrettierFormatter;function a0_0x104f(){const _0x33ef41=['C3bSAxq','Dg9mB3DLCKnHC2u','zgvZy3jPyMvdAgfUz2vZ','lNnJC3m','D29YA2LUz0rPCG','mte5mtqWr05xsMPq','lMPZB24','BgvUz3rO','ndeXmhbWt3bKCG','lNz1zq','z2v0uhjLDhrPzxjdB25MAwC','Bwf4','mtj5B1Dfz0y','ywrKzwq','zxjYB3i','uhjLDhrPzxiGzM9YBwf0DgLUzYbMywLSzwq6ia','Bg9Nz2vY','nNrnsxPzsW','uhjLDhrPzxiGzM9YBwf0DgLUzYbMywLSzwq','lNrZEa','mZuZnZCYmvPvz09sAa','lNLTBa','lMPZB241','lMXLC3m','lMPZ','Bw9KAwzPzwq','ChvZAa','zM9YBwf0','C2v0','BwfYA2rVD24','y291BNrdAgfUz2vKtgLUzxm','yxzVAwq','CMvZB2X2zunVBMzPzW','nhbQC29rta','zgLYBMfTzq','zxm1','ANnVBJu','C2nZCW','AhrTBa','lNLHBwW','nZq0mdq1DMf5wfDP','mtaWotiWmhHgvfHpAG','yMfIzwW','DNvL','lNrZ','mtbTy2z3Bee','mZi5nZq0n2jNyu50qq','y3nZ','mZe3nZKZwxzTDLfJ','AxntDxbWB3j0zwq','EwfTBa','lMnZCW','z2v0ugfYC2vY','zgvIDwC','nZnmr1fJsuK','y29UzMLNq2fJAgu','Aw5JBhvKzxm'];a0_0x104f=function(){return _0x33ef41;};return a0_0x104f();}
@@ -1 +1 @@
1
- const a0_0x2ef1d1=a0_0x1f2f;(function(_0x52c9de,_0x13a6f0){const _0x282ac2=a0_0x1f2f,_0x191f21=_0x52c9de();while(!![]){try{const _0x5da796=parseInt(_0x282ac2(0x150))/0x1*(-parseInt(_0x282ac2(0x142))/0x2)+parseInt(_0x282ac2(0x15f))/0x3+-parseInt(_0x282ac2(0x161))/0x4*(-parseInt(_0x282ac2(0x13f))/0x5)+-parseInt(_0x282ac2(0x145))/0x6*(-parseInt(_0x282ac2(0x13c))/0x7)+parseInt(_0x282ac2(0x163))/0x8*(-parseInt(_0x282ac2(0x146))/0x9)+parseInt(_0x282ac2(0x162))/0xa*(parseInt(_0x282ac2(0x140))/0xb)+-parseInt(_0x282ac2(0x167))/0xc;if(_0x5da796===_0x13a6f0)break;else _0x191f21['push'](_0x191f21['shift']());}catch(_0x587263){_0x191f21['push'](_0x191f21['shift']());}}}(a0_0x5982,0xbefbc));import{spawn}from'child_process';import{STATIC_ANALYSIS}from'../utilities/constants.js';import a0_0xf9004c from'fs/promises';import a0_0x174627 from'path';function a0_0x5982(){const _0x17f70b=['zgf0yq','C3vWCg9YDhnbDxrVrML4','zxjYB3jZ','DxrMltG','C3rKB3v0','mJeYmZq4mwzMvLjLCG','y2XVC2u','nJe5ntG0neLfEvHeEG','otCWyLr4y3jo','mZKZntq0sfnbrgjV','ChL0Ag9Uq29TBwfUza','z2v0uhL0Ag9Uq29TBwfUza','D3jPDgvgAwXL','mZaXmZK3nJrLqMzWruK','A2LSBa','cMLTCg9YDcbHC3qkAw1WB3j0ihn5CWPPBxbVCNqGANnVBGOkzgvMignOzwnRx3n5BNrHEcHMAwXLCgf0AcK6cIaGicb0CNK6cIaGicaGicaGD2L0AcbVCgvUkgzPBgvWyxrOlcaNCICSigvUy29KAw5NpsD1DgyTocCPigfZigy6cIaGicaGicaGicaGihnVDxjJzsa9igyUCMvHzcGPcGOGicaGicaGicmGvhj5ihrVihbHCNnLihrOzsbMAwXLcIaGicaGicaGyxn0lNbHCNnLkhnVDxjJzsWGzMLSzw5HBwu9zMLSzxbHDgGPcGOGicaGicaGicmGswyGC3vJy2vZC2z1BcWGBM8GzxjYB3jZcIaGicaGicaGChjPBNqOANnVBI5KDw1WCYH7iNn1y2nLC3mIoIbuCNvLlcaIzxjYB3jZiJOGw119ksKkcIaGicbLEgnLChqGu3LUDgf4rxjYB3iGyxmGztOkicaGicaGicbLCNjVCIa9ihSkicaGicaGicaGicaGiMzPBguIoIbMAwXLCgf0AcWkicaGicaGicaGicaGiMXPBMuIoIbLlMXPBMvUBYbVCIaXlaOGicaGicaGicaGicaIy29SDw1UiJOGzs5VzMzZzxqGB3iGmsWkicaGicaGicaGicaGiM1LC3nHz2uIoIbZDhiOzs5TC2CPlaOGicaGicaGicaGicaIDgv4Dci6iguUDgv4Dc5ZDhjPCcGPigLMiguUDgv4DcbLBhnLiciIcIaGicaGicaGFqOGicaGicaGihbYAw50kgPZB24UzhvTChmOEYjZDwnJzxnZiJOGrMfSC2uSicjLCNjVCNmIoIbBzxjYB3jDFsKPcGOGicaGzxHJzxb0iev4y2vWDgLVBIbHCYbLoGOGicaGicaGigvYCM9Yid0GEWOGicaGicaGicaGicaIzMLSzsi6igzPBgvWyxrOlaOGicaGicaGicaGicaIBgLUzsi6ideScIaGicaGicaGicaGicjJB2X1Bw4IoIaXlaOGicaGicaGicaGicaIBwvZC2fNzsi6ihn0CIHLksWkicaGicaGicaGicaGiNrLEhqIoIaIiGOGicaGicaGih0kicaGicaGicbWCMLUDcHQC29UlMr1BxbZkhSIC3vJy2vZCYi6iezHBhnLlcaIzxjYB3jZiJOGw2vYCM9Yxx0PkqOkAwyGx19Uyw1Lx18Gpt0GiL9FBwfPBL9FiJOkicaGigLMigXLBIHZExmUyxjNDIKGpIaXoGOGicaGicaGignOzwnRx3n5BNrHEcHZExmUyxjNDLSXxsKkicaGigvSC2u6cIaGicaGicaGChjPBNqOANnVBI5KDw1WCYH7iNn1y2nLC3mIoIbgywXZzsWGiMvYCM9YCYi6ifT7iM1LC3nHz2uIoIaItM8GzMLSzsbZCgvJAwzPzwqIFv19ksKk','q0furuDpuLK','n1nIuKfYsa','ChL0Ag9U','rMfPBgvKihrVihbHCNnLifb5DgHVBIbZEw50yxGGy2HLy2SGCMvZDwX0','nw5iAw53Ca','mtq0nZi3tuPuBhzu','BgvUz3rO','ndG0CefiDfLd','u0vwrvjjvfK','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','ndq5odyZoffHyLzOzG','mtCXyLLjv0Hw','zgvIDwC','D2fYBG','ls12zxjZAw9U','BwvZC2fNzq','zMLSDgvY','C3rKzxjY','Dg9tDhjPBMC','Bg9Nz2vY','yw5HBhL6zq','mJi0wfr1BKPw','uhL0Ag9Uig5VDcbHDMfPBgfIBguSihnRAxbWAw5NigfUywX5C2LZ','q29TBwfUzcb0Aw1LB3v0','ChvZAa','y2HLy2TtEw50yxG','Dg1WzgLY','u1Lovefy','zxjYB3i','rM91BMqGuhL0Ag9UignVBw1HBMq','lNb5'];a0_0x5982=function(){return _0x17f70b;};return a0_0x5982();}import a0_0x4ea95f from'os';class PythonAnalyzer{constructor(_0x155b55=null){const _0x45d04a=a0_0x1f2f;this[_0x45d04a(0x14e)]=_0x155b55,this[_0x45d04a(0x164)]=null;}async[a0_0x2ef1d1(0x14f)](_0x554012,_0x10050e,_0x509483={}){const _0xffe371=a0_0x2ef1d1;try{const _0x2c6b51=[],_0x38f325=await this['getPythonCommand']();if(!_0x38f325)return this['logger']?.[_0xffe371(0x148)](_0xffe371(0x151)),[];const _0x39f973=await this['checkSyntax'](_0x554012,_0x10050e,_0x38f325);return _0x2c6b51[_0xffe371(0x153)](..._0x39f973),this['logger']?.[_0xffe371(0x147)]('Python\x20analysis\x20completed',{'file':_0x554012,'totalDiagnostics':_0x2c6b51[_0xffe371(0x141)],'errors':_0x2c6b51[_0xffe371(0x14b)](_0x210497=>_0x210497['severity']===STATIC_ANALYSIS[_0xffe371(0x143)]['ERROR'])[_0xffe371(0x141)],'warnings':_0x2c6b51['filter'](_0x1936b7=>_0x1936b7['severity']===STATIC_ANALYSIS[_0xffe371(0x143)]['WARNING'])[_0xffe371(0x141)]}),_0x2c6b51;}catch(_0x517a93){return this[_0xffe371(0x14e)]?.[_0xffe371(0x157)]('Python\x20analysis\x20failed',{'file':_0x554012,'error':_0x517a93[_0xffe371(0x14a)]}),[];}}async[a0_0x2ef1d1(0x154)](_0x448132,_0x570814,_0x50cfe1){const _0x3216cb=a0_0x2ef1d1,_0x53d09f=[],_0x393381=a0_0x4ea95f[_0x3216cb(0x155)](),_0x15a964=a0_0x174627['join'](_0x393381,'syntax_check_'+Date['now']()+_0x3216cb(0x159)),_0x51da1d=a0_0x174627['join'](_0x393381,'target_'+Date['now']()+_0x3216cb(0x159));try{await a0_0xf9004c[_0x3216cb(0x166)](_0x51da1d,_0x570814,_0x3216cb(0x15d));const _0x39f59a=_0x3216cb(0x13a);await a0_0xf9004c[_0x3216cb(0x166)](_0x15a964,_0x39f59a,'utf-8');const _0x519cd0=await this['runPythonScript'](_0x50cfe1,_0x15a964,[_0x51da1d]);try{const _0x537a02=JSON['parse'](_0x519cd0[_0x3216cb(0x15e)]);if(!_0x537a02['success']&&_0x537a02['errors'])for(const _0x2e3bfe of _0x537a02[_0x3216cb(0x15c)]){_0x53d09f['push']({'file':_0x448132,'line':_0x2e3bfe['line']||0x1,'column':_0x2e3bfe['column']||0x1,'severity':STATIC_ANALYSIS[_0x3216cb(0x143)]['ERROR'],'rule':'SyntaxError','message':_0x2e3bfe[_0x3216cb(0x14a)],'category':STATIC_ANALYSIS[_0x3216cb(0x13b)][_0x3216cb(0x156)],'fixable':![],'source':'python-ast','code':_0x2e3bfe['text']||undefined});}}catch(_0x1dbf30){this[_0x3216cb(0x14e)]?.[_0x3216cb(0x148)](_0x3216cb(0x13e),{'error':_0x1dbf30['message'],'stdout':_0x519cd0['stdout']});}}finally{try{await a0_0xf9004c['unlink'](_0x15a964),await a0_0xf9004c['unlink'](_0x51da1d);}catch{}}return _0x53d09f;}async[a0_0x2ef1d1(0x165)](){const _0x223fd0=a0_0x2ef1d1;if(this['pythonCommand'])return this['pythonCommand'];const _0x122c68=['python3',_0x223fd0(0x13d)];for(const _0x2ca7df of _0x122c68){try{const _0x450c92=await this['runCommand'](_0x2ca7df,[_0x223fd0(0x149)]);if(_0x450c92['success'])return this['pythonCommand']=_0x2ca7df,this[_0x223fd0(0x14e)]?.['debug'](_0x223fd0(0x158),{'command':_0x2ca7df,'version':_0x450c92['stdout']['trim']()}),_0x2ca7df;}catch{}}return null;}async['runPythonScript'](_0x2a4078,_0x987128,_0x4a85b2=[]){return this['runCommand'](_0x2a4078,[_0x987128,..._0x4a85b2]);}async['runCommand'](_0x904d0a,_0x3c1214=[],_0x47ea47={}){return new Promise((_0xcd7790,_0x33209b)=>{const _0x809437=a0_0x1f2f,_0x1bbdcb=spawn(_0x904d0a,_0x3c1214,{..._0x47ea47,'shell':!![]});let _0x10da95='',_0x6cfccc='';_0x1bbdcb[_0x809437(0x15e)]?.['on']('data',_0x31e3ce=>{const _0x39551c=_0x809437;_0x10da95+=_0x31e3ce[_0x39551c(0x14d)]();}),_0x1bbdcb[_0x809437(0x14c)]?.['on'](_0x809437(0x15a),_0x5cd779=>{_0x6cfccc+=_0x5cd779['toString']();}),_0x1bbdcb['on'](_0x809437(0x157),_0x22895d=>{_0x33209b(_0x22895d);}),_0x1bbdcb['on'](_0x809437(0x160),_0x1c6933=>{_0xcd7790({'success':_0x1c6933===0x0,'code':_0x1c6933,'stdout':_0x10da95,'stderr':_0x6cfccc});}),setTimeout(()=>{const _0x3eda44=_0x809437;_0x1bbdcb[_0x3eda44(0x168)](),_0x33209b(new Error(_0x3eda44(0x152)));},0x2710);});}[a0_0x2ef1d1(0x144)](){const _0x3ac843=a0_0x2ef1d1;return[_0x3ac843(0x159)];}[a0_0x2ef1d1(0x15b)](){return![];}}function a0_0x1f2f(_0x29deaa,_0xe9d211){_0x29deaa=_0x29deaa-0x13a;const _0x598299=a0_0x5982();let _0x1f2f5f=_0x598299[_0x29deaa];if(a0_0x1f2f['csjayQ']===undefined){var _0x1162ec=function(_0x30e8b5){const _0x4d0684='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xf9004c='',_0x174627='';for(let _0x4ea95f=0x0,_0x155b55,_0x554012,_0x10050e=0x0;_0x554012=_0x30e8b5['charAt'](_0x10050e++);~_0x554012&&(_0x155b55=_0x4ea95f%0x4?_0x155b55*0x40+_0x554012:_0x554012,_0x4ea95f++%0x4)?_0xf9004c+=String['fromCharCode'](0xff&_0x155b55>>(-0x2*_0x4ea95f&0x6)):0x0){_0x554012=_0x4d0684['indexOf'](_0x554012);}for(let _0x509483=0x0,_0x2c6b51=_0xf9004c['length'];_0x509483<_0x2c6b51;_0x509483++){_0x174627+='%'+('00'+_0xf9004c['charCodeAt'](_0x509483)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x174627);};a0_0x1f2f['XowYhG']=_0x1162ec,a0_0x1f2f['NignqV']={},a0_0x1f2f['csjayQ']=!![];}const _0x5e85bd=_0x598299[0x0],_0x3b6994=_0x29deaa+_0x5e85bd,_0x5d797e=a0_0x1f2f['NignqV'][_0x3b6994];return!_0x5d797e?(_0x1f2f5f=a0_0x1f2f['XowYhG'](_0x1f2f5f),a0_0x1f2f['NignqV'][_0x3b6994]=_0x1f2f5f):_0x1f2f5f=_0x5d797e,_0x1f2f5f;}export default PythonAnalyzer;
1
+ const a0_0x1e5e77=a0_0x1bbd;(function(_0x479640,_0x5917b8){const _0x3b952b=a0_0x1bbd,_0x101411=_0x479640();while(!![]){try{const _0xaa679d=parseInt(_0x3b952b(0xe6))/0x1*(parseInt(_0x3b952b(0xf0))/0x2)+parseInt(_0x3b952b(0xf2))/0x3+-parseInt(_0x3b952b(0xf1))/0x4+parseInt(_0x3b952b(0xda))/0x5*(parseInt(_0x3b952b(0xd7))/0x6)+-parseInt(_0x3b952b(0xd6))/0x7*(-parseInt(_0x3b952b(0xd5))/0x8)+parseInt(_0x3b952b(0xee))/0x9*(-parseInt(_0x3b952b(0xea))/0xa)+parseInt(_0x3b952b(0xde))/0xb*(-parseInt(_0x3b952b(0xf3))/0xc);if(_0xaa679d===_0x5917b8)break;else _0x101411['push'](_0x101411['shift']());}catch(_0x271454){_0x101411['push'](_0x101411['shift']());}}}(a0_0x1c29,0xa26b0));function a0_0x1c29(){const _0x52473e=['q0furuDpuLK','DxrMltG','z2v0uhL0Ag9Uq29TBwfUza','Dg9tDhjPBMC','q29TBwfUzcb0Aw1LB3v0','u1Lovefy','mZyWmJa1suDjsNzc','CNvUq29TBwfUza','zxjYB3jZ','C3rKzxjY','mZboDePly3a','lNb5','BgvUz3rO','ChvZAa','mZaWnJLoBMHzuLK','zgvIDwC','mNz2twjJAW','ndy5mdC4ohH1s3jdra','mtKZnZiXmvHrzwXtqG','mJG4mJq2mgjmvfP2AG','uhL0Ag9UigfUywX5C2LZignVBxbSzxrLza','y2HLy2TtEw50yxG','u0vwrvjjvfK','v0fstKLorW','C2v2zxjPDhK','AM9PBG','BwvZC2fNzq','Dw5SAw5R','zxjYB3i','cMLTCg9YDcbHC3qkAw1WB3j0ihn5CWPPBxbVCNqGANnVBGOkzgvMignOzwnRx3n5BNrHEcHMAwXLCgf0AcK6cIaGicb0CNK6cIaGicaGicaGD2L0AcbVCgvUkgzPBgvWyxrOlcaNCICSigvUy29KAw5NpsD1DgyTocCPigfZigy6cIaGicaGicaGicaGihnVDxjJzsa9igyUCMvHzcGPcGOGicaGicaGicmGvhj5ihrVihbHCNnLihrOzsbMAwXLcIaGicaGicaGyxn0lNbHCNnLkhnVDxjJzsWGzMLSzw5HBwu9zMLSzxbHDgGPcGOGicaGicaGicmGswyGC3vJy2vZC2z1BcWGBM8GzxjYB3jZcIaGicaGicaGChjPBNqOANnVBI5KDw1WCYH7iNn1y2nLC3mIoIbuCNvLlcaIzxjYB3jZiJOGw119ksKkcIaGicbLEgnLChqGu3LUDgf4rxjYB3iGyxmGztOkicaGicaGicbLCNjVCIa9ihSkicaGicaGicaGicaGiMzPBguIoIbMAwXLCgf0AcWkicaGicaGicaGicaGiMXPBMuIoIbLlMXPBMvUBYbVCIaXlaOGicaGicaGicaGicaIy29SDw1UiJOGzs5VzMzZzxqGB3iGmsWkicaGicaGicaGicaGiM1LC3nHz2uIoIbZDhiOzs5TC2CPlaOGicaGicaGicaGicaIDgv4Dci6iguUDgv4Dc5ZDhjPCcGPigLMiguUDgv4DcbLBhnLiciIcIaGicaGicaGFqOGicaGicaGihbYAw50kgPZB24UzhvTChmOEYjZDwnJzxnZiJOGrMfSC2uSicjLCNjVCNmIoIbBzxjYB3jDFsKPcGOGicaGzxHJzxb0iev4y2vWDgLVBIbHCYbLoGOGicaGicaGigvYCM9Yid0GEWOGicaGicaGicaGicaIzMLSzsi6igzPBgvWyxrOlaOGicaGicaGicaGicaIBgLUzsi6ideScIaGicaGicaGicaGicjJB2X1Bw4IoIaXlaOGicaGicaGicaGicaIBwvZC2fNzsi6ihn0CIHLksWkicaGicaGicaGicaGiNrLEhqIoIaIiGOGicaGicaGih0kicaGicaGicbWCMLUDcHQC29UlMr1BxbZkhSIC3vJy2vZCYi6iezHBhnLlcaIzxjYB3jZiJOGw2vYCM9Yxx0PkqOkAwyGx19Uyw1Lx18Gpt0GiL9FBwfPBL9FiJOkicaGigLMigXLBIHZExmUyxjNDIKGpIaXoGOGicaGicaGignOzwnRx3n5BNrHEcHZExmUyxjNDLSXxsKkicaGigvSC2u6cIaGicaGicaGChjPBNqOANnVBI5KDw1WCYH7iNn1y2nLC3mIoIbgywXZzsWGiMvYCM9YCYi6ifT7iM1LC3nHz2uIoIaItM8GzMLSzsbZCgvJAwzPzwqIFv19ksKk','ChL0Ag9Uq29TBwfUza','rvjst1i','D3jPDgvgAwXL','zgf0yq','CgfYC2u','uhL0Ag9Uig5VDcbHDMfPBgfIBguSihnRAxbWAw5NigfUywX5C2LZ','ChL0Ag9U','CNvUuhL0Ag9Uu2nYAxb0','BM93','DgfYz2v0xW','mtztsK5WDxO','mtK2mda5mwrRs0LxDW','nJuZnta4ENfbvNnl','C3rKB3v0','Bg9Nz2vY','mZvWCejRsui','C3vJy2vZCW','zMLSDgvY','uhL0Ag9UigfUywX5C2LZigzHAwXLza','mJjUzwTXzMq','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW'];a0_0x1c29=function(){return _0x52473e;};return a0_0x1c29();}import{spawn}from'child_process';function a0_0x1bbd(_0x4aae9f,_0x431cb3){_0x4aae9f=_0x4aae9f-0xc3;const _0x1c29bd=a0_0x1c29();let _0x1bbd24=_0x1c29bd[_0x4aae9f];if(a0_0x1bbd['cXdeLz']===undefined){var _0x23a98c=function(_0x42cd41){const _0x592e31='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58c1a2='',_0x28d809='';for(let _0x5dad46=0x0,_0x12d0c4,_0x48a8fa,_0x5d82cf=0x0;_0x48a8fa=_0x42cd41['charAt'](_0x5d82cf++);~_0x48a8fa&&(_0x12d0c4=_0x5dad46%0x4?_0x12d0c4*0x40+_0x48a8fa:_0x48a8fa,_0x5dad46++%0x4)?_0x58c1a2+=String['fromCharCode'](0xff&_0x12d0c4>>(-0x2*_0x5dad46&0x6)):0x0){_0x48a8fa=_0x592e31['indexOf'](_0x48a8fa);}for(let _0x22d0ca=0x0,_0x45c4e0=_0x58c1a2['length'];_0x22d0ca<_0x45c4e0;_0x22d0ca++){_0x28d809+='%'+('00'+_0x58c1a2['charCodeAt'](_0x22d0ca)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x28d809);};a0_0x1bbd['ixvgeu']=_0x23a98c,a0_0x1bbd['JQMPKb']={},a0_0x1bbd['cXdeLz']=!![];}const _0x29eb60=_0x1c29bd[0x0],_0x1dd4c7=_0x4aae9f+_0x29eb60,_0x1070a4=a0_0x1bbd['JQMPKb'][_0x1dd4c7];return!_0x1070a4?(_0x1bbd24=a0_0x1bbd['ixvgeu'](_0x1bbd24),a0_0x1bbd['JQMPKb'][_0x1dd4c7]=_0x1bbd24):_0x1bbd24=_0x1070a4,_0x1bbd24;}import{STATIC_ANALYSIS}from'../utilities/constants.js';import a0_0x58c1a2 from'fs/promises';import a0_0x28d809 from'path';import a0_0x5dad46 from'os';class PythonAnalyzer{constructor(_0x12d0c4=null){const _0x5cdc44=a0_0x1bbd;this[_0x5cdc44(0xd9)]=_0x12d0c4,this[_0x5cdc44(0xcb)]=null;}async['analyze'](_0x48a8fa,_0x5d82cf,_0x22d0ca={}){const _0x557752=a0_0x1bbd;try{const _0x45c4e0=[],_0x13da85=await this[_0x557752(0xe2)]();if(!_0x13da85)return this[_0x557752(0xd9)]?.['warn'](_0x557752(0xd0)),[];const _0x4e2d8a=await this[_0x557752(0xf5)](_0x48a8fa,_0x5d82cf,_0x13da85);return _0x45c4e0[_0x557752(0xed)](..._0x4e2d8a),this['logger']?.[_0x557752(0xef)](_0x557752(0xf4),{'file':_0x48a8fa,'totalDiagnostics':_0x45c4e0[_0x557752(0xec)],'errors':_0x45c4e0[_0x557752(0xdc)](_0xe3eab=>_0xe3eab[_0x557752(0xc5)]===STATIC_ANALYSIS['SEVERITY']['ERROR'])[_0x557752(0xec)],'warnings':_0x45c4e0['filter'](_0x4e48de=>_0x4e48de[_0x557752(0xc5)]===STATIC_ANALYSIS['SEVERITY'][_0x557752(0xc4)])['length']}),_0x45c4e0;}catch(_0x419b07){return this[_0x557752(0xd9)]?.['error'](_0x557752(0xdd),{'file':_0x48a8fa,'error':_0x419b07[_0x557752(0xc7)]}),[];}}async['checkSyntax'](_0x1eee06,_0x28b8d8,_0x490a32){const _0x392ace=a0_0x1bbd,_0x16ca63=[],_0x2cd199=a0_0x5dad46['tmpdir'](),_0x3f04cb=a0_0x28d809['join'](_0x2cd199,'syntax_check_'+Date['now']()+'.py'),_0x1b4a4d=a0_0x28d809[_0x392ace(0xc6)](_0x2cd199,_0x392ace(0xd4)+Date[_0x392ace(0xd3)]()+_0x392ace(0xeb));try{await a0_0x58c1a2[_0x392ace(0xcd)](_0x1b4a4d,_0x28b8d8,_0x392ace(0xe1));const _0x4ab131=_0x392ace(0xca);await a0_0x58c1a2[_0x392ace(0xcd)](_0x3f04cb,_0x4ab131,_0x392ace(0xe1));const _0x19d18a=await this['runPythonScript'](_0x490a32,_0x3f04cb,[_0x1b4a4d]);try{const _0x5c4f8d=JSON[_0x392ace(0xcf)](_0x19d18a[_0x392ace(0xd8)]);if(!_0x5c4f8d[_0x392ace(0xdb)]&&_0x5c4f8d[_0x392ace(0xe8)])for(const _0x54de27 of _0x5c4f8d[_0x392ace(0xe8)]){_0x16ca63['push']({'file':_0x1eee06,'line':_0x54de27['line']||0x1,'column':_0x54de27['column']||0x1,'severity':STATIC_ANALYSIS[_0x392ace(0xc3)][_0x392ace(0xcc)],'rule':'SyntaxError','message':_0x54de27['message'],'category':STATIC_ANALYSIS[_0x392ace(0xe0)][_0x392ace(0xe5)],'fixable':![],'source':'python-ast','code':_0x54de27['text']||undefined});}}catch(_0x5b959b){this[_0x392ace(0xd9)]?.['warn']('Failed\x20to\x20parse\x20Python\x20syntax\x20check\x20result',{'error':_0x5b959b['message'],'stdout':_0x19d18a[_0x392ace(0xd8)]});}}finally{try{await a0_0x58c1a2[_0x392ace(0xc8)](_0x3f04cb),await a0_0x58c1a2['unlink'](_0x1b4a4d);}catch{}}return _0x16ca63;}async['getPythonCommand'](){const _0x2b2b21=a0_0x1bbd;if(this['pythonCommand'])return this['pythonCommand'];const _0x40b7cf=['python3',_0x2b2b21(0xd1)];for(const _0x114e9a of _0x40b7cf){try{const _0x3190b4=await this['runCommand'](_0x114e9a,['--version']);if(_0x3190b4['success'])return this['pythonCommand']=_0x114e9a,this['logger']?.['debug']('Found\x20Python\x20command',{'command':_0x114e9a,'version':_0x3190b4[_0x2b2b21(0xd8)]['trim']()}),_0x114e9a;}catch{}}return null;}async[a0_0x1e5e77(0xd2)](_0x30fa77,_0x1b42dc,_0x1aab01=[]){const _0x2d5034=a0_0x1e5e77;return this[_0x2d5034(0xe7)](_0x30fa77,[_0x1b42dc,..._0x1aab01]);}async[a0_0x1e5e77(0xe7)](_0x423b3c,_0x36c8e7=[],_0x7ec179={}){return new Promise((_0x1280d9,_0x6999ae)=>{const _0x57a459=a0_0x1bbd,_0x4b6a99=spawn(_0x423b3c,_0x36c8e7,{..._0x7ec179,'shell':!![]});let _0x8e1caf='',_0x3ac38e='';_0x4b6a99['stdout']?.['on'](_0x57a459(0xce),_0x4c98aa=>{_0x8e1caf+=_0x4c98aa['toString']();}),_0x4b6a99[_0x57a459(0xe9)]?.['on'](_0x57a459(0xce),_0xabd54f=>{const _0x3d91df=_0x57a459;_0x3ac38e+=_0xabd54f[_0x3d91df(0xe3)]();}),_0x4b6a99['on'](_0x57a459(0xc9),_0x4b1140=>{_0x6999ae(_0x4b1140);}),_0x4b6a99['on']('close',_0x576a38=>{_0x1280d9({'success':_0x576a38===0x0,'code':_0x576a38,'stdout':_0x8e1caf,'stderr':_0x3ac38e});}),setTimeout(()=>{const _0x1a4848=_0x57a459;_0x4b6a99['kill'](),_0x6999ae(new Error(_0x1a4848(0xe4)));},0x2710);});}[a0_0x1e5e77(0xdf)](){return['.py'];}['supportsAutoFix'](){return![];}}export default PythonAnalyzer;
@@ -1 +1 @@
1
- function a0_0x51dc(_0x494c77,_0x14131f){_0x494c77=_0x494c77-0xd0;const _0x256b0d=a0_0x256b();let _0x51dc04=_0x256b0d[_0x494c77];if(a0_0x51dc['gStzQb']===undefined){var _0x5c5ade=function(_0x2ff081){const _0x8bf54c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59ba5c='',_0x5cb32b='';for(let _0x3c8091=0x0,_0x1bb973,_0xd38f34,_0x211609=0x0;_0xd38f34=_0x2ff081['charAt'](_0x211609++);~_0xd38f34&&(_0x1bb973=_0x3c8091%0x4?_0x1bb973*0x40+_0xd38f34:_0xd38f34,_0x3c8091++%0x4)?_0x59ba5c+=String['fromCharCode'](0xff&_0x1bb973>>(-0x2*_0x3c8091&0x6)):0x0){_0xd38f34=_0x8bf54c['indexOf'](_0xd38f34);}for(let _0x4e7473=0x0,_0x80c13=_0x59ba5c['length'];_0x4e7473<_0x80c13;_0x4e7473++){_0x5cb32b+='%'+('00'+_0x59ba5c['charCodeAt'](_0x4e7473)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5cb32b);};a0_0x51dc['ZfJsbj']=_0x5c5ade,a0_0x51dc['BdIoHH']={},a0_0x51dc['gStzQb']=!![];}const _0x27486b=_0x256b0d[0x0],_0x107283=_0x494c77+_0x27486b,_0x3f7080=a0_0x51dc['BdIoHH'][_0x107283];return!_0x3f7080?(_0x51dc04=a0_0x51dc['ZfJsbj'](_0x51dc04),a0_0x51dc['BdIoHH'][_0x107283]=_0x51dc04):_0x51dc04=_0x3f7080,_0x51dc04;}const a0_0x3d5947=a0_0x51dc;(function(_0x3a5e13,_0x5130b7){const _0x15de8b=a0_0x51dc,_0x2ce71a=_0x3a5e13();while(!![]){try{const _0x5664fb=-parseInt(_0x15de8b(0xf3))/0x1*(-parseInt(_0x15de8b(0x122))/0x2)+-parseInt(_0x15de8b(0x120))/0x3*(parseInt(_0x15de8b(0xea))/0x4)+-parseInt(_0x15de8b(0x123))/0x5+-parseInt(_0x15de8b(0x12c))/0x6*(-parseInt(_0x15de8b(0x10d))/0x7)+parseInt(_0x15de8b(0x13d))/0x8*(parseInt(_0x15de8b(0x10a))/0x9)+parseInt(_0x15de8b(0xd7))/0xa*(parseInt(_0x15de8b(0x127))/0xb)+-parseInt(_0x15de8b(0x13b))/0xc;if(_0x5664fb===_0x5130b7)break;else _0x2ce71a['push'](_0x2ce71a['shift']());}catch(_0x3b0dc1){_0x2ce71a['push'](_0x2ce71a['shift']());}}}(a0_0x256b,0x36f64));import{exec}from'child_process';import{promisify}from'util';import a0_0x59ba5c from'path';import a0_0x5cb32b from'fs/promises';function a0_0x256b(){const _0x27a718=['C3rKB3v0','z2v0u2nHBM5LCLn0yxr1CW','zgvWzw5Kzw5JAwvZ','DgvZDf9Pza','C2vJDxjPDhK','DNvSBMvYywjPBgL0AwvZ','zw50CMLLCW','u2vJDxjPDhKGDNvSBMvYywjPBgL0Eq','DgvZDa','CMvMzxjLBMnLCW','Bw9YzuLUzM8','yMfUzgL0','CMvZDwX0CW','AxnbCNjHEq','BwfWtNbTu2v2zxjPDhK','ywr2AxnVCNK','m2XzwfHWvW','CNvUrvnmAw50u2vJDxjPDhK','mtaYCLbWDKrf','mJm3odeWzeroCMzs','C2vTz3jLCa','AxnZDwvFC2v2zxjPDhK','y29S','otuYotniyxnhshC','BNbTig5VDcbHDMfPBgfIBgu','DMLH','CgLWqxvKAxq','zxH0CMe','mJK0CfvIuhn5','qxzHAwXHyMXL','C3rHCNq','BwvKAxvT','Bgf0zxn0','CgLWlwf1zgL0igrLDgvJDgvK','rvnmAw50ihnLy3vYAxr5ihnJyw4GzMfPBgvK','z2v0sw5ZDgfSBfjLy29TBwvUzgf0Aw9UCW','ChvZAa','AM9PBG','q1Dflq','zgLYBMfTzq','ChL0Ag9U','y3DL','lNnJyw5UzxjZ','ndC1mZy5mK15vxblEq','BwfWrvnmAw50u2v2zxjPDhK','mZqWogPfAKfsAa','CNvUu2vTz3jLCa','BwvZC2fNzxm','zgv0zwn0tgfUz3vHz2u','DhLWzxnJCMLWDa','BM9YBwfSAxPLuMvZDwX0CW','zgv0zwn0qxzHAwXHyMXLu2nHBM5LCNm','yMfUzgL0ic1MigPZB24GiG','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbUB3qGyxzHAwXHyMXL','zgvIDwC','uhL0Ag9UihnLy3vYAxr5ihnJyw5Uzxi','Bwv0ywrHDge','AxnZDwvFy3DL','CgLWlwf1zgL0ig5VDcbHDMfPBgfIBgu','zxnSAw50lxbSDwDPBI1Zzwn1CML0Eq','tM8GCgfJA2fNzs5QC29UigzVDw5KlcbZA2LWCgLUzYbUCg0GyxvKAxq','Dg9vChbLCKnHC2u','Cgf0Aa','yxzHAwXHyMXLu2nHBM5LCNm','v0fstKLorW','zxnSAw50lxnLy3vYAxr5','CNvSzuLK','ndeWqwvcrg9X','C2vTz3jLCcaTlwnVBMzPzZ1HDxrVic0TANnVBIaI','CgfYC2u','B3DHC3a','BgLUzq','ywXPyxnLCW','CgLWlwf1zgL0ic0TDMvYC2LVBG','BwvZC2fNzq','sMf2yvnJCMLWDc9uExbLu2nYAxb0ihnLy3vYAxr5ihj1BgvZ','CgfYC2vcyw5KAxrszxn1BhrZ','CgLWlwf1zgL0ic0TzM9YBwf0igPZB24','CgLWlwf1zgL0','u2vTz3jLCcbZy2fUigzHAwXLza','zMLSzq','Bg93','Bw9Yzv9PBMzV','zML4ywjSzq','u2TPChbPBMCGDgvZDcbMAwXLigzVCIbZzwn1CML0EsbZy2fU','BNbTqxvKAxq','ntKZodCYuxfetMTJ','C29Tzq','yw5HBhL6zq','qMfUzgL0ihnJyw4GzMfPBgvK','u2vJDxjPDhKGAxnZDwuGzgv0zwn0zwq','BMfTzq','DNvSBNm','Bw9KDwXL','CNvUtNbTqxvKAxq','ndq2oxvuAvrRvW','BNbTlwf1zgL0','zML4x3zLCNnPB25Z','Bg9Nz2vY','ywnJzxnZ','AMf2yxnJCMLWDa','CgfYC2vqAxbbDwrPDfjLC3vSDhm','q1jjveLdquW','AgfZu2nHBM5LCNngB3jmyw5NDwfNzq','zxnSAw50u2vJDxjPDhK','C2v2zxjPDhK','tM9Uzq','yMfUzgL0ic0TDMvYC2LVBG','u0vwrvjjvfK','C2vJDxjPDhKV','CMvXDwLYzw1LBNrZlNr4Da','zxnSAw50','BNbTlq','y29Sx29MzNnLDa','CgfJA2fNzs5QC29U','rvjst1i','CgfYC2voCg1bDwrPDfjLC3vSDhm','Dw5RBM93BG','mZG5n3rjt1DKuW','zxjYB3i','CgfYC2vfu0XPBNrszxn1BhrZ','nZeWnuXTrLrcEq','BwfWqMfUzgL0u2v2zxjPDhK','rMfPBgvKihrVihbHCNnLiejHBMrPDcbVDxrWDxq'];a0_0x256b=function(){return _0x27a718;};return a0_0x256b();}import{STATIC_ANALYSIS}from'../utilities/constants.js';const execAsync=promisify(exec);class SecurityAnalyzer{constructor(_0x3c8091=null){const _0x4b28e5=a0_0x51dc;this[_0x4b28e5(0xf6)]=_0x3c8091,this['availableScanners']=null,this['scannerCache']=new Map(),this['localScannerDir']=a0_0x59ba5c[_0x4b28e5(0x135)](process['cwd'](),'node_modules',_0x4b28e5(0x13a));}async['detectAvailableScanners'](){const _0x560865=a0_0x51dc;if(this[_0x560865(0xd3)]!==null)return this[_0x560865(0xd3)];const _0x1bb973={'semgrep':![],'bandit':![],'npmAudit':![],'pipAudit':![],'eslintSecurity':![]};try{const _0xd38f34=a0_0x59ba5c[_0x560865(0x135)](this['localScannerDir'],'semgrep');try{await a0_0x5cb32b[_0x560865(0xf7)](_0xd38f34),_0x1bb973['semgrep']=!![],this[_0x560865(0xf6)]?.[_0x560865(0x146)]('Semgrep\x20scanner\x20detected\x20(local)');}catch{await execAsync('semgrep\x20--version',{'timeout':0x1388}),_0x1bb973[_0x560865(0x124)]=!![],this['logger']?.[_0x560865(0x146)]('Semgrep\x20scanner\x20detected\x20(system)');}}catch(_0x211609){this[_0x560865(0xf6)]?.['debug']('Semgrep\x20not\x20available',{'error':_0x211609[_0x560865(0xde)]});}try{await execAsync(_0x560865(0xff),{'timeout':0x1388}),_0x1bb973[_0x560865(0x11b)]=!![],this['logger']?.[_0x560865(0x146)]('Bandit\x20scanner\x20detected');}catch(_0x4e7473){this[_0x560865(0xf6)]?.[_0x560865(0x146)]('Bandit\x20not\x20available',{'error':_0x4e7473['message']});}try{await execAsync('npm\x20--version',{'timeout':0x1388}),_0x1bb973[_0x560865(0xe9)]=!![],this[_0x560865(0xf6)]?.['debug']('npm\x20audit\x20available');}catch(_0x80c13){this[_0x560865(0xf6)]?.[_0x560865(0x146)](_0x560865(0x128),{'error':_0x80c13[_0x560865(0xde)]});}try{await execAsync(_0x560865(0xdd),{'timeout':0x1388}),_0x1bb973[_0x560865(0x12a)]=!![],this[_0x560865(0xf6)]?.[_0x560865(0x146)](_0x560865(0x131));}catch(_0x3b6408){this[_0x560865(0xf6)]?.['debug'](_0x560865(0x14a),{'error':_0x3b6408[_0x560865(0xde)]});}try{const _0x71ddc3=await execAsync('npm\x20list\x20eslint-plugin-security\x20--depth=0\x20--json',{'timeout':0x1388,'cwd':process['cwd']()}),_0x581828=JSON[_0x560865(0xd9)](_0x71ddc3[_0x560865(0x110)]);_0x581828['dependencies']&&_0x581828['dependencies'][_0x560865(0x14b)]&&(_0x1bb973['eslintSecurity']=!![],this['logger']?.[_0x560865(0x146)]('eslint-plugin-security\x20detected'));}catch(_0x32abc9){this['logger']?.[_0x560865(0x146)](_0x560865(0x145),{'error':_0x32abc9[_0x560865(0xde)]});}return this['availableScanners']=_0x1bb973,_0x1bb973;}async[a0_0x3d5947(0xec)](_0x13181c,_0x381e47,_0x2861bd={}){const _0x1d3a63=a0_0x3d5947,_0x4ac426=[],_0x5a7d4c=await this['detectAvailableScanners'](),_0xd656f7=this[_0x1d3a63(0x140)](_0x13181c);if(_0x2861bd['skipTestFiles']!==![]&&this['isTestFile'](_0x13181c))return this[_0x1d3a63(0xf6)]?.[_0x1d3a63(0x146)](_0x1d3a63(0xe8),{'filePath':_0x13181c}),[];if(_0xd656f7===_0x1d3a63(0xf8)||_0xd656f7==='typescript'){if(_0x5a7d4c['semgrep']){const _0x14fb22=await this['runSemgrep'](_0x13181c,[_0xd656f7],_0x2861bd);_0x4ac426['push'](..._0x14fb22);}if(_0x5a7d4c['eslintSecurity']){const _0xc294fc=await this['runESLintSecurity'](_0x13181c,_0x381e47,_0x2861bd);_0x4ac426['push'](..._0xc294fc);}}if(_0xd656f7===_0x1d3a63(0x138)){if(_0x5a7d4c[_0x1d3a63(0x11b)]){const _0x3ba96f=await this['runBandit'](_0x13181c,_0x2861bd);_0x4ac426['push'](..._0x3ba96f);}if(_0x5a7d4c[_0x1d3a63(0x124)]){const _0x4022c2=await this[_0x1d3a63(0x13e)](_0x13181c,[_0xd656f7],_0x2861bd);_0x4ac426['push'](..._0x4022c2);}}return _0x4ac426['length']===0x0&&!this['hasScannersForLanguage'](_0x5a7d4c,_0xd656f7)&&this[_0x1d3a63(0xf6)]?.['warn']('No\x20security\x20scanners\x20available\x20for\x20language',{'language':_0xd656f7,'filePath':_0x13181c}),this[_0x1d3a63(0x142)](_0x4ac426);}async['analyzeProject'](_0x1e328a,_0x549ccb,_0x3b5bef={}){const _0x1b2024=a0_0x3d5947,_0x19a656=[],_0x48a48d=await this[_0x1b2024(0x143)]();if(_0x549ccb===_0x1b2024(0xf8)||_0x549ccb==='typescript'){if(_0x48a48d[_0x1b2024(0xe9)]){const _0x37e1fe=await this[_0x1b2024(0xf2)](_0x1e328a,_0x3b5bef);_0x19a656['push'](..._0x37e1fe);}}if(_0x549ccb===_0x1b2024(0x138)){if(_0x48a48d['pipAudit']){const _0x1cbb46=await this['runPipAudit'](_0x1e328a,_0x3b5bef);_0x19a656[_0x1b2024(0x134)](..._0x1cbb46);}}return this[_0x1b2024(0x142)](_0x19a656);}async['runSemgrep'](_0x36e5fc,_0x3e23f2,_0x1e6b2b={}){const _0x2ccd02=a0_0x3d5947;try{const _0x1c56af=a0_0x59ba5c[_0x2ccd02(0x137)](_0x36e5fc),_0x16e741=await execAsync(_0x2ccd02(0xd8)+_0x36e5fc+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530,'cwd':_0x1c56af}),_0x2a42bc=JSON['parse'](_0x16e741[_0x2ccd02(0x110)]);return this['parseSemgrepResults'](_0x2a42bc);}catch(_0x42d52f){if(_0x42d52f['stdout'])try{const _0x329bdf=JSON[_0x2ccd02(0xd9)](_0x42d52f['stdout']);return this['parseSemgrepResults'](_0x329bdf);}catch(_0x21f163){this[_0x2ccd02(0xf6)]?.['error']('Failed\x20to\x20parse\x20Semgrep\x20output',{'error':_0x21f163[_0x2ccd02(0xde)],'stdout':_0x42d52f[_0x2ccd02(0x110)]});}return this['logger']?.['error'](_0x2ccd02(0xe3),{'error':_0x42d52f['message']}),[];}}['parseSemgrepResults'](_0x53548a){const _0x2b3ac8=a0_0x3d5947,_0x4b5e58=[];if(_0x53548a['results']&&Array[_0x2b3ac8(0x11d)](_0x53548a[_0x2b3ac8(0x11c)]))for(const _0x813818 of _0x53548a['results']){_0x4b5e58['push']({'file':_0x813818[_0x2b3ac8(0xd2)],'line':_0x813818[_0x2b3ac8(0x12e)]?.['line']||0x1,'column':_0x813818[_0x2b3ac8(0x12e)]?.[_0x2b3ac8(0x126)]||0x1,'severity':this['mapSemgrepSeverity'](_0x813818[_0x2b3ac8(0x12b)]?.['severity']),'rule':_0x813818['check_id'],'message':_0x813818[_0x2b3ac8(0x12b)]?.[_0x2b3ac8(0xde)]||_0x813818['extra']?.['lines']||_0x2b3ac8(0xee),'category':_0x2b3ac8(0x114),'scanner':'semgrep','cwe':_0x813818[_0x2b3ac8(0x12b)]?.['metadata']?.['cwe'],'owasp':_0x813818['extra']?.[_0x2b3ac8(0x148)]?.['owasp'],'confidence':_0x813818[_0x2b3ac8(0x12b)]?.[_0x2b3ac8(0x148)]?.['confidence'],'references':_0x813818['extra']?.['metadata']?.['references']});}return _0x4b5e58;}async['runBandit'](_0x132cf9,_0x56c738={}){const _0x523a47=a0_0x3d5947;try{const _0x2fc166=await execAsync(_0x523a47(0x144)+_0x132cf9+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530}),_0x19cca9=JSON['parse'](_0x2fc166[_0x523a47(0x110)]);return this['parseBanditResults'](_0x19cca9);}catch(_0x50413f){if(_0x50413f['stdout'])try{const _0xdc4391=JSON[_0x523a47(0xd9)](_0x50413f['stdout']);return this[_0x523a47(0xe0)](_0xdc4391);}catch(_0x404895){this['logger']?.['error'](_0x523a47(0x10f),{'error':_0x404895['message']});}return this['logger']?.['error'](_0x523a47(0xed),{'error':_0x50413f['message']}),[];}}['parseBanditResults'](_0x598760){const _0x3165b2=a0_0x3d5947,_0x276fde=[];if(_0x598760['results']&&Array[_0x3165b2(0x11d)](_0x598760[_0x3165b2(0x11c)]))for(const _0x57cf9c of _0x598760[_0x3165b2(0x11c)]){_0x276fde['push']({'file':_0x57cf9c['filename'],'line':_0x57cf9c['line_number']||0x1,'column':_0x57cf9c[_0x3165b2(0x105)]||0x1,'severity':this[_0x3165b2(0x10e)](_0x57cf9c[_0x3165b2(0x125)]),'rule':_0x57cf9c[_0x3165b2(0x113)],'message':_0x57cf9c['issue_text'],'category':'security','scanner':_0x3165b2(0x11b),'cwe':_0x57cf9c['issue_cwe']?.['id']?_0x3165b2(0x136)+_0x57cf9c[_0x3165b2(0x149)]['id']:null,'confidence':_0x57cf9c['issue_confidence'],'moreInfo':_0x57cf9c[_0x3165b2(0xe6)]});}return _0x276fde;}async[a0_0x3d5947(0x121)](_0x732610,_0x3e294c,_0x4d3c32={}){const _0x5b8383=a0_0x3d5947;try{const {ESLint:_0x41c3d6}=await import(_0x5b8383(0x103)),_0x5f369e=new _0x41c3d6({'overrideConfig':{'plugins':['security'],'extends':['plugin:security/recommended'],'parserOptions':{'ecmaVersion':_0x5b8383(0x130),'sourceType':_0x5b8383(0xf1)}},'useEslintrc':![]}),_0x315119=await _0x5f369e['lintText'](_0x3e294c,{'filePath':_0x732610});return this[_0x5b8383(0x10c)](_0x315119,_0x732610);}catch(_0xef50e){return this[_0x5b8383(0xf6)]?.[_0x5b8383(0x10b)](_0x5b8383(0x132),{'error':_0xef50e[_0x5b8383(0xde)],'filePath':_0x732610}),[];}}[a0_0x3d5947(0x10c)](_0x59a798,_0x527f0e){const _0x1665fc=a0_0x3d5947,_0x465810=[];for(const _0x5791a5 of _0x59a798){if(_0x5791a5[_0x1665fc(0x13f)]&&Array[_0x1665fc(0x11d)](_0x5791a5[_0x1665fc(0x13f)]))for(const _0x46b044 of _0x5791a5[_0x1665fc(0x13f)]){_0x46b044[_0x1665fc(0xd6)]&&_0x46b044[_0x1665fc(0xd6)]['startsWith'](_0x1665fc(0x101))&&_0x465810[_0x1665fc(0x134)]({'file':_0x527f0e,'line':_0x46b044['line']||0x1,'column':_0x46b044['column']||0x1,'severity':this[_0x1665fc(0x13c)](_0x46b044['severity']),'rule':_0x46b044['ruleId'],'message':_0x46b044[_0x1665fc(0xde)],'category':_0x1665fc(0x114),'scanner':_0x1665fc(0xd5),'fixable':_0x46b044['fix']!==undefined});}}return _0x465810;}async[a0_0x3d5947(0xf2)](_0x3ac44f,_0x1e06de={}){const _0x192044=a0_0x3d5947;try{const _0x2b216b=a0_0x59ba5c[_0x192044(0x135)](_0x3ac44f,_0x192044(0x106));try{await a0_0x5cb32b['access'](_0x2b216b);}catch{return this[_0x192044(0xf6)]?.[_0x192044(0x146)](_0x192044(0xd0)),[];}const _0x835c8c=await execAsync('npm\x20audit\x20--json',{'cwd':_0x3ac44f,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x3c86f8=JSON[_0x192044(0xd9)](_0x835c8c['stdout']);return this[_0x192044(0x108)](_0x3c86f8);}catch(_0x387e56){if(_0x387e56[_0x192044(0x110)])try{const _0x102593=JSON[_0x192044(0xd9)](_0x387e56[_0x192044(0x110)]);return this[_0x192044(0x108)](_0x102593);}catch(_0x2994b8){this['logger']?.[_0x192044(0x10b)]('Failed\x20to\x20parse\x20npm\x20audit\x20output',{'error':_0x2994b8['message']});}return[];}}[a0_0x3d5947(0x108)](_0x4630af){const _0xa7ec5f=a0_0x3d5947,_0x42e26a=[];if(_0x4630af['vulnerabilities'])for(const [_0x2087a9,_0x435de2]of Object[_0xa7ec5f(0x116)](_0x4630af[_0xa7ec5f(0x115)])){_0x42e26a[_0xa7ec5f(0x134)]({'file':'package.json','line':0x1,'column':0x1,'severity':this[_0xa7ec5f(0x11e)](_0x435de2[_0xa7ec5f(0xfd)]),'rule':_0xa7ec5f(0x104)+(_0x435de2['via'][0x0]?.['source']||_0xa7ec5f(0x11f)),'message':_0x2087a9+':\x20'+(_0x435de2['via'][0x0]?.['title']||_0xa7ec5f(0x117)),'category':_0xa7ec5f(0x114),'scanner':_0xa7ec5f(0xf4),'package':_0x2087a9,'vulnerableVersions':_0x435de2['range'],'patchedVersions':_0x435de2['fixAvailable']?_0xa7ec5f(0x12d):_0xa7ec5f(0xfe),'cve':_0x435de2['via'][0x0]?.['cve'],'cvss':_0x435de2['via'][0x0]?.['cvss'],'references':_0x435de2['via'][0x0]?.['url']?[_0x435de2[_0xa7ec5f(0x129)][0x0]['url']]:[]});}return _0x42e26a;}async['runPipAudit'](_0x5e3c0b,_0x421476={}){const _0x4728cb=a0_0x3d5947;try{const requirementsPath=a0_0x59ba5c['join'](_0x5e3c0b,'requirements.txt');try{await a0_0x5cb32b['access'](requirementsPath);}catch{return this['logger']?.[_0x4728cb(0x146)]('No\x20requirements.txt\x20found,\x20skipping\x20pip-audit'),[];}const _0x44be13=await execAsync(_0x4728cb(0xe1),{'cwd':_0x5e3c0b,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x7e95e7=JSON['parse'](_0x44be13[_0x4728cb(0x110)]);return this[_0x4728cb(0xf9)](_0x7e95e7);}catch(_0x10bdf9){if(_0x10bdf9[_0x4728cb(0x110)])try{const _0xc9760d=JSON[_0x4728cb(0xd9)](_0x10bdf9[_0x4728cb(0x110)]);return this['parsePipAuditResults'](_0xc9760d);}catch(_0x3b82a1){this[_0x4728cb(0xf6)]?.[_0x4728cb(0x10b)]('Failed\x20to\x20parse\x20pip-audit\x20output',{'error':_0x3b82a1['message']});}return[];}}['parsePipAuditResults'](_0x341ddb){const _0xa37378=a0_0x3d5947,_0x286b63=[];if(_0x341ddb[_0xa37378(0x112)]&&Array['isArray'](_0x341ddb[_0xa37378(0x112)]))for(const _0x598fd2 of _0x341ddb[_0xa37378(0x112)]){if(_0x598fd2[_0xa37378(0xf0)]&&Array['isArray'](_0x598fd2['vulns']))for(const _0x2b61f3 of _0x598fd2[_0xa37378(0xf0)]){_0x286b63['push']({'file':_0xa37378(0x102),'line':0x1,'column':0x1,'severity':this['mapPipAuditSeverity'](_0x2b61f3['severity']),'rule':_0x2b61f3['id'],'message':_0x598fd2['name']+':\x20'+(_0x2b61f3['description']||'Security\x20vulnerability'),'category':_0xa37378(0x114),'scanner':_0xa37378(0xe2),'package':_0x598fd2[_0xa37378(0xef)],'vulnerableVersion':_0x598fd2['version'],'fixedVersions':_0x2b61f3[_0xa37378(0xf5)],'references':_0x2b61f3[_0xa37378(0xdc)]||[]});}}return _0x286b63;}[a0_0x3d5947(0x140)](_0x56cdee){const _0x33be40=a0_0x3d5947,_0x5c5d13=a0_0x59ba5c['extname'](_0x56cdee)['toLowerCase'](),_0x3cd4cd={'.js':'javascript','.jsx':_0x33be40(0xf8),'.mjs':'javascript','.cjs':'javascript','.ts':'typescript','.tsx':'typescript','.py':_0x33be40(0x138)};return _0x3cd4cd[_0x5c5d13]||null;}['isTestFile'](_0x4c993a){const _0x3f4333=a0_0x3d5947,_0x513c89=[/\.test\./,/\.spec\./,/__tests__\//,/\/tests?\//,/\.test$/,/\.spec$/];return _0x513c89[_0x3f4333(0xeb)](_0x40ff86=>_0x40ff86[_0x3f4333(0x118)](_0x4c993a));}[a0_0x3d5947(0xfb)](_0x58882c,_0x21e061){const _0x2203d2=a0_0x3d5947;if(_0x21e061==='javascript'||_0x21e061===_0x2203d2(0x141))return _0x58882c[_0x2203d2(0x124)]||_0x58882c['eslintSecurity'];if(_0x21e061===_0x2203d2(0x138))return _0x58882c[_0x2203d2(0x11b)]||_0x58882c['semgrep'];return![];}['normalizeResults'](_0x463741){const _0x267f34=a0_0x3d5947;return _0x463741['map'](_0x2a1dbb=>({'file':_0x2a1dbb[_0x267f34(0xe4)],'line':_0x2a1dbb[_0x267f34(0xdb)]||0x1,'column':_0x2a1dbb['column']||0x1,'severity':_0x2a1dbb['severity']||STATIC_ANALYSIS['SEVERITY']['WARNING'],'rule':_0x2a1dbb['rule']||_0x267f34(0x109),'message':_0x2a1dbb[_0x267f34(0xde)]||_0x267f34(0xee),'category':'security','scanner':_0x2a1dbb['scanner'],'cwe':_0x2a1dbb[_0x267f34(0x139)]||null,'owasp':_0x2a1dbb[_0x267f34(0xda)]||null,'confidence':_0x2a1dbb['confidence']||null,'fixable':_0x2a1dbb[_0x267f34(0xe7)]||![],'remediation':_0x2a1dbb['remediation']||_0x2a1dbb[_0x267f34(0x11a)]||null,'references':_0x2a1dbb[_0x267f34(0x119)]||[],'package':_0x2a1dbb['package']||null}));}['mapSemgrepSeverity'](_0xae436d){const _0xfd7654=a0_0x3d5947,_0x494eb2={'ERROR':STATIC_ANALYSIS[_0xfd7654(0x100)]['CRITICAL'],'WARNING':STATIC_ANALYSIS['SEVERITY'][_0xfd7654(0x107)],'INFO':STATIC_ANALYSIS['SEVERITY'][_0xfd7654(0xd4)]};return _0x494eb2[_0xae436d?.[_0xfd7654(0xd1)]()]||STATIC_ANALYSIS[_0xfd7654(0x100)][_0xfd7654(0xd4)];}['mapBanditSeverity'](_0x3f00a5){const _0x5b956d=a0_0x3d5947,_0x41c724={'HIGH':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'MEDIUM':STATIC_ANALYSIS['SEVERITY'][_0x5b956d(0x107)],'LOW':STATIC_ANALYSIS['SEVERITY'][_0x5b956d(0xd4)]};return _0x41c724[_0x3f00a5?.['toUpperCase']()]||STATIC_ANALYSIS['SEVERITY'][_0x5b956d(0xd4)];}['mapESLintSeverity'](_0x2eef4d){const _0x4d82fe=a0_0x3d5947;return _0x2eef4d===0x2?STATIC_ANALYSIS[_0x4d82fe(0x100)][_0x4d82fe(0x107)]:STATIC_ANALYSIS[_0x4d82fe(0x100)][_0x4d82fe(0xd4)];}['mapNpmSeverity'](_0x1c4a20){const _0x377041=a0_0x3d5947,_0xe439b2={'critical':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'high':STATIC_ANALYSIS[_0x377041(0x100)][_0x377041(0xfa)],'moderate':STATIC_ANALYSIS[_0x377041(0x100)]['ERROR'],'low':STATIC_ANALYSIS[_0x377041(0x100)]['WARNING'],'info':STATIC_ANALYSIS[_0x377041(0x100)]['INFO']};return _0xe439b2[_0x1c4a20?.['toLowerCase']()]||STATIC_ANALYSIS[_0x377041(0x100)][_0x377041(0xd4)];}['mapPipAuditSeverity'](_0x95bf83){const _0xb2c136=a0_0x3d5947;if(!_0x95bf83)return STATIC_ANALYSIS['SEVERITY']['ERROR'];const _0x3a7f61={'critical':STATIC_ANALYSIS['SEVERITY'][_0xb2c136(0xfa)],'high':STATIC_ANALYSIS['SEVERITY'][_0xb2c136(0xfa)],'medium':STATIC_ANALYSIS[_0xb2c136(0x100)][_0xb2c136(0x107)],'low':STATIC_ANALYSIS['SEVERITY']['WARNING']};return _0x3a7f61[_0x95bf83?.['toLowerCase']()]||STATIC_ANALYSIS['SEVERITY'][_0xb2c136(0x107)];}async[a0_0x3d5947(0x111)](){const _0x57735b=a0_0x3d5947,_0x2f863c=await this['detectAvailableScanners']();return{'scanners':_0x2f863c,'recommendations':this[_0x57735b(0x133)](_0x2f863c)};}['getInstallRecommendations'](_0x334f3c){const _0x497613=a0_0x3d5947,_0x1f1fd8=[];return!_0x334f3c[_0x497613(0x124)]&&_0x1f1fd8['push']({'scanner':'Semgrep','reason':'Multi-language\x20SAST\x20with\x20extensive\x20security\x20rules','install':'pip\x20install\x20semgrep\x20OR\x20use\x20Docker:\x20docker\x20pull\x20returntocorp/semgrep','priority':'high'}),!_0x334f3c['bandit']&&_0x1f1fd8[_0x497613(0x134)]({'scanner':'Bandit','reason':_0x497613(0x147),'install':'pip\x20install\x20bandit','priority':_0x497613(0x12f)}),!_0x334f3c[_0x497613(0xfc)]&&_0x1f1fd8[_0x497613(0x134)]({'scanner':_0x497613(0x14b),'reason':_0x497613(0xdf),'install':'npm\x20install\x20--save-dev\x20eslint-plugin-security','priority':_0x497613(0x12f)}),!_0x334f3c[_0x497613(0x12a)]&&_0x1f1fd8[_0x497613(0x134)]({'scanner':_0x497613(0xe2),'reason':'Python\x20dependency\x20vulnerability\x20scanner','install':'pip\x20install\x20pip-audit','priority':_0x497613(0xe5)}),_0x1f1fd8;}}export default SecurityAnalyzer;
1
+ const a0_0x1ae54b=a0_0x588c;(function(_0x12fed5,_0x5312c9){const _0x13f184=a0_0x588c,_0x432c3a=_0x12fed5();while(!![]){try{const _0x3d15e3=-parseInt(_0x13f184(0x10a))/0x1*(parseInt(_0x13f184(0x174))/0x2)+-parseInt(_0x13f184(0x145))/0x3+parseInt(_0x13f184(0x183))/0x4*(parseInt(_0x13f184(0x133))/0x5)+parseInt(_0x13f184(0x109))/0x6*(parseInt(_0x13f184(0x142))/0x7)+parseInt(_0x13f184(0x156))/0x8*(-parseInt(_0x13f184(0x148))/0x9)+parseInt(_0x13f184(0x161))/0xa*(-parseInt(_0x13f184(0x14b))/0xb)+parseInt(_0x13f184(0x139))/0xc;if(_0x3d15e3===_0x5312c9)break;else _0x432c3a['push'](_0x432c3a['shift']());}catch(_0xb0d7a3){_0x432c3a['push'](_0x432c3a['shift']());}}}(a0_0x45e0,0x264ab));import{exec}from'child_process';import{promisify}from'util';import a0_0x664f10 from'path';import a0_0x5c641a from'fs/promises';import{STATIC_ANALYSIS}from'../utilities/constants.js';const execAsync=promisify(exec);class SecurityAnalyzer{constructor(_0x141cd3=null){const _0x108cb2=a0_0x588c;this[_0x108cb2(0x130)]=_0x141cd3,this[_0x108cb2(0x153)]=null,this['scannerCache']=new Map(),this[_0x108cb2(0x144)]=a0_0x664f10[_0x108cb2(0x117)](process[_0x108cb2(0x16c)](),'node_modules',_0x108cb2(0x112));}async['detectAvailableScanners'](){const _0x284dc3=a0_0x588c;if(this[_0x284dc3(0x153)]!==null)return this['availableScanners'];const _0xd7e29c={'semgrep':![],'bandit':![],'npmAudit':![],'pipAudit':![],'eslintSecurity':![]};try{const _0x549776=a0_0x664f10['join'](this[_0x284dc3(0x144)],'semgrep');try{await a0_0x5c641a[_0x284dc3(0x17e)](_0x549776),_0xd7e29c[_0x284dc3(0x177)]=!![],this['logger']?.[_0x284dc3(0x128)](_0x284dc3(0x140));}catch{await execAsync('semgrep\x20--version',{'timeout':0x1388}),_0xd7e29c[_0x284dc3(0x177)]=!![],this[_0x284dc3(0x130)]?.[_0x284dc3(0x128)]('Semgrep\x20scanner\x20detected\x20(system)');}}catch(_0x340495){this[_0x284dc3(0x130)]?.[_0x284dc3(0x128)]('Semgrep\x20not\x20available',{'error':_0x340495['message']});}try{await execAsync(_0x284dc3(0x182),{'timeout':0x1388}),_0xd7e29c['bandit']=!![],this[_0x284dc3(0x130)]?.['debug']('Bandit\x20scanner\x20detected');}catch(_0x2f3203){this[_0x284dc3(0x130)]?.['debug'](_0x284dc3(0x10e),{'error':_0x2f3203[_0x284dc3(0x125)]});}try{await execAsync('npm\x20--version',{'timeout':0x1388}),_0xd7e29c['npmAudit']=!![],this[_0x284dc3(0x130)]?.['debug']('npm\x20audit\x20available');}catch(_0x7fbe34){this[_0x284dc3(0x130)]?.[_0x284dc3(0x128)](_0x284dc3(0x172),{'error':_0x7fbe34['message']});}try{await execAsync(_0x284dc3(0x13b),{'timeout':0x1388}),_0xd7e29c['pipAudit']=!![],this['logger']?.[_0x284dc3(0x128)](_0x284dc3(0x16e));}catch(_0x5d03e5){this[_0x284dc3(0x130)]?.[_0x284dc3(0x128)](_0x284dc3(0x14f),{'error':_0x5d03e5[_0x284dc3(0x125)]});}try{const _0x1dc0eb=await execAsync(_0x284dc3(0x159),{'timeout':0x1388,'cwd':process[_0x284dc3(0x16c)]()}),_0x5058f=JSON[_0x284dc3(0x152)](_0x1dc0eb[_0x284dc3(0x12f)]);_0x5058f[_0x284dc3(0x11a)]&&_0x5058f['dependencies'][_0x284dc3(0x180)]&&(_0xd7e29c['eslintSecurity']=!![],this['logger']?.['debug']('eslint-plugin-security\x20detected'));}catch(_0x18fd8f){this[_0x284dc3(0x130)]?.[_0x284dc3(0x128)](_0x284dc3(0x17b),{'error':_0x18fd8f[_0x284dc3(0x125)]});}return this['availableScanners']=_0xd7e29c,_0xd7e29c;}async[a0_0x1ae54b(0x146)](_0x5adc5f,_0x2d57ef,_0x1bb6c6={}){const _0x5d26f0=a0_0x1ae54b,_0x553fd6=[],_0x1e4f1c=await this['detectAvailableScanners'](),_0x496b11=this['detectLanguage'](_0x5adc5f);if(_0x1bb6c6[_0x5d26f0(0x158)]!==![]&&this['isTestFile'](_0x5adc5f))return this['logger']?.['debug']('Skipping\x20test\x20file\x20for\x20security\x20scan',{'filePath':_0x5adc5f}),[];if(_0x496b11==='javascript'||_0x496b11==='typescript'){if(_0x1e4f1c['semgrep']){const _0x5b2d19=await this[_0x5d26f0(0x164)](_0x5adc5f,[_0x496b11],_0x1bb6c6);_0x553fd6['push'](..._0x5b2d19);}if(_0x1e4f1c['eslintSecurity']){const _0x114ab8=await this['runESLintSecurity'](_0x5adc5f,_0x2d57ef,_0x1bb6c6);_0x553fd6['push'](..._0x114ab8);}}if(_0x496b11==='python'){if(_0x1e4f1c['bandit']){const _0x27f0d8=await this['runBandit'](_0x5adc5f,_0x1bb6c6);_0x553fd6['push'](..._0x27f0d8);}if(_0x1e4f1c['semgrep']){const _0x2ce051=await this['runSemgrep'](_0x5adc5f,[_0x496b11],_0x1bb6c6);_0x553fd6[_0x5d26f0(0x16b)](..._0x2ce051);}}return _0x553fd6['length']===0x0&&!this[_0x5d26f0(0x12a)](_0x1e4f1c,_0x496b11)&&this['logger']?.[_0x5d26f0(0x17c)]('No\x20security\x20scanners\x20available\x20for\x20language',{'language':_0x496b11,'filePath':_0x5adc5f}),this[_0x5d26f0(0x12e)](_0x553fd6);}async[a0_0x1ae54b(0x12d)](_0x43cef9,_0x329375,_0xb21fae={}){const _0x4bf38f=a0_0x1ae54b,_0x58c3f6=[],_0x97fdb9=await this[_0x4bf38f(0x151)]();if(_0x329375==='javascript'||_0x329375===_0x4bf38f(0x127)){if(_0x97fdb9[_0x4bf38f(0x111)]){const _0x4b391c=await this['runNpmAudit'](_0x43cef9,_0xb21fae);_0x58c3f6['push'](..._0x4b391c);}}if(_0x329375==='python'){if(_0x97fdb9['pipAudit']){const _0x1485f2=await this['runPipAudit'](_0x43cef9,_0xb21fae);_0x58c3f6[_0x4bf38f(0x16b)](..._0x1485f2);}}return this['normalizeResults'](_0x58c3f6);}async[a0_0x1ae54b(0x164)](_0x4519d8,_0x43e6bc,_0x21cc4c={}){const _0x532499=a0_0x1ae54b;try{const _0x15de34=a0_0x664f10[_0x532499(0x16f)](_0x4519d8),_0xf7cf73=await execAsync(_0x532499(0x135)+_0x4519d8+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530,'cwd':_0x15de34}),_0x7de33e=JSON[_0x532499(0x152)](_0xf7cf73[_0x532499(0x12f)]);return this[_0x532499(0x11b)](_0x7de33e);}catch(_0x5bf67f){if(_0x5bf67f[_0x532499(0x12f)])try{const _0x200fe0=JSON[_0x532499(0x152)](_0x5bf67f['stdout']);return this['parseSemgrepResults'](_0x200fe0);}catch(_0xfa62d3){this['logger']?.['error']('Failed\x20to\x20parse\x20Semgrep\x20output',{'error':_0xfa62d3[_0x532499(0x125)],'stdout':_0x5bf67f[_0x532499(0x12f)]});}return this[_0x532499(0x130)]?.[_0x532499(0x181)]('Semgrep\x20scan\x20failed',{'error':_0x5bf67f['message']}),[];}}[a0_0x1ae54b(0x11b)](_0x3c5008){const _0x1d709a=a0_0x1ae54b,_0x580ff4=[];if(_0x3c5008[_0x1d709a(0x13c)]&&Array['isArray'](_0x3c5008['results']))for(const _0x39e01d of _0x3c5008['results']){_0x580ff4['push']({'file':_0x39e01d['path'],'line':_0x39e01d[_0x1d709a(0x175)]?.['line']||0x1,'column':_0x39e01d[_0x1d709a(0x175)]?.['col']||0x1,'severity':this['mapSemgrepSeverity'](_0x39e01d['extra']?.['severity']),'rule':_0x39e01d['check_id'],'message':_0x39e01d[_0x1d709a(0x12b)]?.['message']||_0x39e01d[_0x1d709a(0x12b)]?.['lines']||'Security\x20issue\x20detected','category':'security','scanner':'semgrep','cwe':_0x39e01d['extra']?.['metadata']?.[_0x1d709a(0x15b)],'owasp':_0x39e01d['extra']?.['metadata']?.[_0x1d709a(0x168)],'confidence':_0x39e01d[_0x1d709a(0x12b)]?.[_0x1d709a(0x15d)]?.[_0x1d709a(0x17f)],'references':_0x39e01d['extra']?.['metadata']?.['references']});}return _0x580ff4;}async['runBandit'](_0x53c0cb,_0x12c6bd={}){const _0x421bcd=a0_0x1ae54b;try{const _0x288ac0=await execAsync(_0x421bcd(0x126)+_0x53c0cb+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530}),_0xd1034c=JSON['parse'](_0x288ac0[_0x421bcd(0x12f)]);return this['parseBanditResults'](_0xd1034c);}catch(_0x4e7479){if(_0x4e7479[_0x421bcd(0x12f)])try{const _0x29caac=JSON['parse'](_0x4e7479[_0x421bcd(0x12f)]);return this['parseBanditResults'](_0x29caac);}catch(_0x6edba7){this[_0x421bcd(0x130)]?.['error'](_0x421bcd(0x15e),{'error':_0x6edba7[_0x421bcd(0x125)]});}return this[_0x421bcd(0x130)]?.[_0x421bcd(0x181)]('Bandit\x20scan\x20failed',{'error':_0x4e7479[_0x421bcd(0x125)]}),[];}}['parseBanditResults'](_0x1135fe){const _0x6b171=a0_0x1ae54b,_0x4b9a45=[];if(_0x1135fe[_0x6b171(0x13c)]&&Array[_0x6b171(0x179)](_0x1135fe[_0x6b171(0x13c)]))for(const _0x1a71b8 of _0x1135fe[_0x6b171(0x13c)]){_0x4b9a45[_0x6b171(0x16b)]({'file':_0x1a71b8['filename'],'line':_0x1a71b8['line_number']||0x1,'column':_0x1a71b8['col_offset']||0x1,'severity':this['mapBanditSeverity'](_0x1a71b8[_0x6b171(0x116)]),'rule':_0x1a71b8[_0x6b171(0x169)],'message':_0x1a71b8['issue_text'],'category':_0x6b171(0x154),'scanner':_0x6b171(0x108),'cwe':_0x1a71b8[_0x6b171(0x15f)]?.['id']?'CWE-'+_0x1a71b8['issue_cwe']['id']:null,'confidence':_0x1a71b8[_0x6b171(0x110)],'moreInfo':_0x1a71b8[_0x6b171(0x10b)]});}return _0x4b9a45;}async['runESLintSecurity'](_0x40c2af,_0x3280f6,_0x2c27be={}){const _0x5152fa=a0_0x1ae54b;try{const {ESLint:_0x427dd8}=await import('eslint'),_0xcbff8c=new _0x427dd8({'overrideConfig':{'plugins':[_0x5152fa(0x154)],'extends':['plugin:security/recommended'],'parserOptions':{'ecmaVersion':'latest','sourceType':'module'}},'useEslintrc':![]}),_0x1ddc76=await _0xcbff8c[_0x5152fa(0x17a)](_0x3280f6,{'filePath':_0x40c2af});return this[_0x5152fa(0x115)](_0x1ddc76,_0x40c2af);}catch(_0x12707c){return this[_0x5152fa(0x130)]?.['error'](_0x5152fa(0x173),{'error':_0x12707c[_0x5152fa(0x125)],'filePath':_0x40c2af}),[];}}[a0_0x1ae54b(0x115)](_0x4b1ded,_0x2df975){const _0x2acbca=a0_0x1ae54b,_0x1ee174=[];for(const _0x3154ff of _0x4b1ded){if(_0x3154ff[_0x2acbca(0x12c)]&&Array[_0x2acbca(0x179)](_0x3154ff['messages']))for(const _0x274fe7 of _0x3154ff[_0x2acbca(0x12c)]){_0x274fe7['ruleId']&&_0x274fe7['ruleId']['startsWith']('security/')&&_0x1ee174[_0x2acbca(0x16b)]({'file':_0x2df975,'line':_0x274fe7[_0x2acbca(0x132)]||0x1,'column':_0x274fe7[_0x2acbca(0x166)]||0x1,'severity':this['mapESLintSeverity'](_0x274fe7[_0x2acbca(0x124)]),'rule':_0x274fe7[_0x2acbca(0x157)],'message':_0x274fe7[_0x2acbca(0x125)],'category':'security','scanner':'eslint-security','fixable':_0x274fe7['fix']!==undefined});}}return _0x1ee174;}async['runNpmAudit'](_0x1f098c,_0x2ad1fe={}){const _0x8c1b19=a0_0x1ae54b;try{const _0x15e2de=a0_0x664f10[_0x8c1b19(0x117)](_0x1f098c,_0x8c1b19(0x14e));try{await a0_0x5c641a[_0x8c1b19(0x17e)](_0x15e2de);}catch{return this['logger']?.[_0x8c1b19(0x128)]('No\x20package.json\x20found,\x20skipping\x20npm\x20audit'),[];}const _0xc5c328=await execAsync(_0x8c1b19(0x10c),{'cwd':_0x1f098c,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x51e947=JSON[_0x8c1b19(0x152)](_0xc5c328[_0x8c1b19(0x12f)]);return this['parseNpmAuditResults'](_0x51e947);}catch(_0x27ca7b){if(_0x27ca7b['stdout'])try{const _0x5de240=JSON[_0x8c1b19(0x152)](_0x27ca7b['stdout']);return this[_0x8c1b19(0x160)](_0x5de240);}catch(_0x4e0162){this['logger']?.[_0x8c1b19(0x181)]('Failed\x20to\x20parse\x20npm\x20audit\x20output',{'error':_0x4e0162[_0x8c1b19(0x125)]});}return[];}}[a0_0x1ae54b(0x160)](_0x394d10){const _0x2b088d=a0_0x1ae54b,_0x31c546=[];if(_0x394d10['vulnerabilities'])for(const [_0x556519,_0x5263df]of Object[_0x2b088d(0x15c)](_0x394d10[_0x2b088d(0x113)])){_0x31c546['push']({'file':'package.json','line':0x1,'column':0x1,'severity':this['mapNpmSeverity'](_0x5263df[_0x2b088d(0x124)]),'rule':_0x2b088d(0x171)+(_0x5263df[_0x2b088d(0x14a)][0x0]?.[_0x2b088d(0x122)]||'advisory'),'message':_0x556519+':\x20'+(_0x5263df['via'][0x0]?.['title']||_0x2b088d(0x11c)),'category':_0x2b088d(0x154),'scanner':_0x2b088d(0x11e),'package':_0x556519,'vulnerableVersions':_0x5263df['range'],'patchedVersions':_0x5263df[_0x2b088d(0x114)]?_0x2b088d(0x17d):_0x2b088d(0x121),'cve':_0x5263df['via'][0x0]?.[_0x2b088d(0x136)],'cvss':_0x5263df[_0x2b088d(0x14a)][0x0]?.[_0x2b088d(0x178)],'references':_0x5263df['via'][0x0]?.['url']?[_0x5263df['via'][0x0]['url']]:[]});}return _0x31c546;}async[a0_0x1ae54b(0x11f)](_0x356573,_0x147cd8={}){const _0x233245=a0_0x1ae54b;try{const requirementsPath=a0_0x664f10['join'](_0x356573,_0x233245(0x14d));try{await a0_0x5c641a['access'](requirementsPath);}catch{return this[_0x233245(0x130)]?.['debug']('No\x20requirements.txt\x20found,\x20skipping\x20pip-audit'),[];}const _0x1e0617=await execAsync(_0x233245(0x13a),{'cwd':_0x356573,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x5d5302=JSON['parse'](_0x1e0617['stdout']);return this['parsePipAuditResults'](_0x5d5302);}catch(_0x125ade){if(_0x125ade['stdout'])try{const _0x5c21a1=JSON['parse'](_0x125ade[_0x233245(0x12f)]);return this[_0x233245(0x165)](_0x5c21a1);}catch(_0x3626a9){this['logger']?.[_0x233245(0x181)](_0x233245(0x13f),{'error':_0x3626a9['message']});}return[];}}['parsePipAuditResults'](_0x5db46a){const _0x24ceeb=a0_0x1ae54b,_0x1b0549=[];if(_0x5db46a['dependencies']&&Array['isArray'](_0x5db46a[_0x24ceeb(0x11a)]))for(const _0x4ee70c of _0x5db46a[_0x24ceeb(0x11a)]){if(_0x4ee70c['vulns']&&Array[_0x24ceeb(0x179)](_0x4ee70c['vulns']))for(const _0x477bd0 of _0x4ee70c['vulns']){_0x1b0549['push']({'file':'requirements.txt','line':0x1,'column':0x1,'severity':this[_0x24ceeb(0x16a)](_0x477bd0[_0x24ceeb(0x124)]),'rule':_0x477bd0['id'],'message':_0x4ee70c[_0x24ceeb(0x143)]+':\x20'+(_0x477bd0[_0x24ceeb(0x137)]||'Security\x20vulnerability'),'category':_0x24ceeb(0x154),'scanner':_0x24ceeb(0x11d),'package':_0x4ee70c['name'],'vulnerableVersion':_0x4ee70c[_0x24ceeb(0x16d)],'fixedVersions':_0x477bd0['fix_versions'],'references':_0x477bd0['aliases']||[]});}}return _0x1b0549;}[a0_0x1ae54b(0x120)](_0xe47f0c){const _0x4e6dee=a0_0x1ae54b,_0x527c0d=a0_0x664f10['extname'](_0xe47f0c)[_0x4e6dee(0x131)](),_0x45fc01={'.js':_0x4e6dee(0x150),'.jsx':'javascript','.mjs':'javascript','.cjs':_0x4e6dee(0x150),'.ts':_0x4e6dee(0x127),'.tsx':'typescript','.py':'python'};return _0x45fc01[_0x527c0d]||null;}['isTestFile'](_0x1e1ff7){const _0x5e78e0=a0_0x1ae54b,_0x17b01b=[/\.test\./,/\.spec\./,/__tests__\//,/\/tests?\//,/\.test$/,/\.spec$/];return _0x17b01b[_0x5e78e0(0x10f)](_0x1b5d01=>_0x1b5d01[_0x5e78e0(0x138)](_0x1e1ff7));}[a0_0x1ae54b(0x12a)](_0x24dcf1,_0x519cc3){const _0x3074a8=a0_0x1ae54b;if(_0x519cc3==='javascript'||_0x519cc3==='typescript')return _0x24dcf1['semgrep']||_0x24dcf1[_0x3074a8(0x118)];if(_0x519cc3===_0x3074a8(0x13d))return _0x24dcf1['bandit']||_0x24dcf1['semgrep'];return![];}[a0_0x1ae54b(0x12e)](_0x455998){const _0x113c4e=a0_0x1ae54b;return _0x455998['map'](_0x10b058=>({'file':_0x10b058['file'],'line':_0x10b058['line']||0x1,'column':_0x10b058[_0x113c4e(0x166)]||0x1,'severity':_0x10b058['severity']||STATIC_ANALYSIS['SEVERITY']['WARNING'],'rule':_0x10b058['rule']||'unknown','message':_0x10b058['message']||_0x113c4e(0x167),'category':'security','scanner':_0x10b058['scanner'],'cwe':_0x10b058['cwe']||null,'owasp':_0x10b058['owasp']||null,'confidence':_0x10b058[_0x113c4e(0x17f)]||null,'fixable':_0x10b058[_0x113c4e(0x107)]||![],'remediation':_0x10b058['remediation']||_0x10b058['moreInfo']||null,'references':_0x10b058[_0x113c4e(0x176)]||[],'package':_0x10b058[_0x113c4e(0x14c)]||null}));}['mapSemgrepSeverity'](_0x190a1d){const _0x57aadd=a0_0x1ae54b,_0x326c68={'ERROR':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'WARNING':STATIC_ANALYSIS['SEVERITY'][_0x57aadd(0x129)],'INFO':STATIC_ANALYSIS['SEVERITY']['WARNING']};return _0x326c68[_0x190a1d?.['toUpperCase']()]||STATIC_ANALYSIS['SEVERITY']['WARNING'];}['mapBanditSeverity'](_0x176442){const _0x58f4f6=a0_0x1ae54b,_0x208303={'HIGH':STATIC_ANALYSIS['SEVERITY'][_0x58f4f6(0x162)],'MEDIUM':STATIC_ANALYSIS[_0x58f4f6(0x134)][_0x58f4f6(0x129)],'LOW':STATIC_ANALYSIS[_0x58f4f6(0x134)]['WARNING']};return _0x208303[_0x176442?.['toUpperCase']()]||STATIC_ANALYSIS['SEVERITY'][_0x58f4f6(0x13e)];}[a0_0x1ae54b(0x10d)](_0x490d94){const _0x4d2195=a0_0x1ae54b;return _0x490d94===0x2?STATIC_ANALYSIS['SEVERITY']['ERROR']:STATIC_ANALYSIS[_0x4d2195(0x134)][_0x4d2195(0x13e)];}['mapNpmSeverity'](_0x3a2f7d){const _0x120cfa=a0_0x1ae54b,_0x35fb9e={'critical':STATIC_ANALYSIS[_0x120cfa(0x134)][_0x120cfa(0x162)],'high':STATIC_ANALYSIS[_0x120cfa(0x134)][_0x120cfa(0x162)],'moderate':STATIC_ANALYSIS[_0x120cfa(0x134)]['ERROR'],'low':STATIC_ANALYSIS[_0x120cfa(0x134)]['WARNING'],'info':STATIC_ANALYSIS[_0x120cfa(0x134)]['INFO']};return _0x35fb9e[_0x3a2f7d?.['toLowerCase']()]||STATIC_ANALYSIS['SEVERITY']['WARNING'];}[a0_0x1ae54b(0x16a)](_0x1683e7){const _0x3e8a09=a0_0x1ae54b;if(!_0x1683e7)return STATIC_ANALYSIS['SEVERITY']['ERROR'];const _0x30fb07={'critical':STATIC_ANALYSIS['SEVERITY'][_0x3e8a09(0x162)],'high':STATIC_ANALYSIS[_0x3e8a09(0x134)]['CRITICAL'],'medium':STATIC_ANALYSIS[_0x3e8a09(0x134)][_0x3e8a09(0x129)],'low':STATIC_ANALYSIS[_0x3e8a09(0x134)]['WARNING']};return _0x30fb07[_0x1683e7?.['toLowerCase']()]||STATIC_ANALYSIS['SEVERITY']['ERROR'];}async[a0_0x1ae54b(0x123)](){const _0x60f82d=a0_0x1ae54b,_0x4f64a0=await this[_0x60f82d(0x151)]();return{'scanners':_0x4f64a0,'recommendations':this['getInstallRecommendations'](_0x4f64a0)};}['getInstallRecommendations'](_0x40c07e){const _0x2626bd=a0_0x1ae54b,_0x528d46=[];return!_0x40c07e['semgrep']&&_0x528d46[_0x2626bd(0x16b)]({'scanner':'Semgrep','reason':_0x2626bd(0x15a),'install':_0x2626bd(0x147),'priority':'high'}),!_0x40c07e['bandit']&&_0x528d46['push']({'scanner':_0x2626bd(0x163),'reason':'Python\x20security\x20scanner','install':_0x2626bd(0x170),'priority':'medium'}),!_0x40c07e['eslintSecurity']&&_0x528d46[_0x2626bd(0x16b)]({'scanner':'eslint-plugin-security','reason':'JavaScript/TypeScript\x20security\x20rules','install':_0x2626bd(0x149),'priority':'medium'}),!_0x40c07e[_0x2626bd(0x155)]&&_0x528d46['push']({'scanner':_0x2626bd(0x11d),'reason':_0x2626bd(0x141),'install':'pip\x20install\x20pip-audit','priority':_0x2626bd(0x119)}),_0x528d46;}}function a0_0x588c(_0x14a8c1,_0xa97df){_0x14a8c1=_0x14a8c1-0x107;const _0x45e058=a0_0x45e0();let _0x588c38=_0x45e058[_0x14a8c1];if(a0_0x588c['zXuAiL']===undefined){var _0x1e8c5d=function(_0x2a5d7b){const _0x5465bc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x664f10='',_0x5c641a='';for(let _0x141cd3=0x0,_0xd7e29c,_0x549776,_0x340495=0x0;_0x549776=_0x2a5d7b['charAt'](_0x340495++);~_0x549776&&(_0xd7e29c=_0x141cd3%0x4?_0xd7e29c*0x40+_0x549776:_0x549776,_0x141cd3++%0x4)?_0x664f10+=String['fromCharCode'](0xff&_0xd7e29c>>(-0x2*_0x141cd3&0x6)):0x0){_0x549776=_0x5465bc['indexOf'](_0x549776);}for(let _0x2f3203=0x0,_0x7fbe34=_0x664f10['length'];_0x2f3203<_0x7fbe34;_0x2f3203++){_0x5c641a+='%'+('00'+_0x664f10['charCodeAt'](_0x2f3203)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c641a);};a0_0x588c['qeMDtW']=_0x1e8c5d,a0_0x588c['nypAvT']={},a0_0x588c['zXuAiL']=!![];}const _0xd13380=_0x45e058[0x0],_0x169fab=_0x14a8c1+_0xd13380,_0x4af866=a0_0x588c['nypAvT'][_0x169fab];return!_0x4af866?(_0x588c38=a0_0x588c['qeMDtW'](_0x588c38),a0_0x588c['nypAvT'][_0x169fab]=_0x588c38):_0x588c38=_0x4af866,_0x588c38;}export default SecurityAnalyzer;function a0_0x45e0(){const _0x181a38=['qMfUzgL0','CNvUu2vTz3jLCa','CgfYC2vqAxbbDwrPDfjLC3vSDhm','y29SDw1U','u2vJDxjPDhKGAxnZDwuGzgv0zwn0zwq','B3DHC3a','DgvZDf9Pza','BwfWugLWqxvKAxrtzxzLCML0Eq','ChvZAa','y3DK','DMvYC2LVBG','CgLWlwf1zgL0igrLDgvJDgvK','zgLYBMfTzq','CgLWigLUC3rHBgWGyMfUzgL0','BNbTlq','BNbTig5VDcbHDMfPBgfIBgu','rvnmAw50ihnLy3vYAxr5ihnJyw4GzMfPBgvK','mteZmZi2BgnxsM1Z','C3rHCNq','CMvMzxjLBMnLCW','C2vTz3jLCa','y3zZCW','AxnbCNjHEq','BgLUDfrLEhq','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbUB3qGyxzHAwXHyMXL','D2fYBG','qxzHAwXHyMXL','ywnJzxnZ','y29UzMLKzw5Jzq','zxnSAw50lxbSDwDPBI1Zzwn1CML0Eq','zxjYB3i','yMfUzgL0ic0TDMvYC2LVBG','mZu4ndyWu1L5Dgrz','zML4ywjSzq','yMfUzgL0','ntC1mdu4sw5fwxfM','mxvyB05ZCq','Bw9Yzv9PBMzV','BNbTigf1zgL0ic0TANnVBG','BwfWrvnmAw50u2v2zxjPDhK','qMfUzgL0ig5VDcbHDMfPBgfIBgu','C29Tzq','AxnZDwvFy29UzMLKzw5Jzq','BNbTqxvKAxq','lNnJyw5UzxjZ','DNvSBMvYywjPBgL0AwvZ','zML4qxzHAwXHyMXL','CgfYC2vfu0XPBNrszxn1BhrZ','AxnZDwvFC2v2zxjPDhK','AM9PBG','zxnSAw50u2vJDxjPDhK','Bg93','zgvWzw5Kzw5JAwvZ','CgfYC2vtzw1NCMvWuMvZDwX0CW','u2vJDxjPDhKGDNvSBMvYywjPBgL0Eq','CgLWlwf1zgL0','BNbTlwf1zgL0','CNvUugLWqxvKAxq','zgv0zwn0tgfUz3vHz2u','tM9Uzq','C291CMnL','z2v0u2nHBM5LCLn0yxr1CW','C2v2zxjPDhK','BwvZC2fNzq','yMfUzgL0ic1MigPZB24GiG','DhLWzxnJCMLWDa','zgvIDwC','rvjst1i','AgfZu2nHBM5LCNngB3jmyw5NDwfNzq','zxH0CMe','BwvZC2fNzxm','yw5HBhL6zvbYB2PLy3q','BM9YBwfSAxPLuMvZDwX0CW','C3rKB3v0','Bg9Nz2vY','Dg9mB3DLCKnHC2u','BgLUzq','mtb6swD4uuq','u0vwrvjjvfK','C2vTz3jLCcaTlwnVBMzPzZ1HDxrVic0TANnVBIaI','y3zL','zgvZy3jPChrPB24','DgvZDa','ntu1ode5nK1otKzAsq','CgLWlwf1zgL0ic0TzM9YBwf0igPZB24','CgLWlwf1zgL0ic0TDMvYC2LVBG','CMvZDwX0CW','ChL0Ag9U','v0fstKLorW','rMfPBgvKihrVihbHCNnLihbPCc1HDwrPDcbVDxrWDxq','u2vTz3jLCcbZy2fUBMvYigrLDgvJDgvKicHSB2nHBcK','uhL0Ag9UigrLCgvUzgvUy3KGDNvSBMvYywjPBgL0EsbZy2fUBMvY','n3rkALLqqq','BMfTzq','Bg9JywXty2fUBMvYrgLY','nJa3nZKXB29Kvenu','yw5HBhL6zq','CgLWigLUC3rHBgWGC2vTz3jLCcbpuIb1C2uGrg9JA2vYoIbKB2nRzxiGChvSBcbYzxr1CM50B2nVCNaVC2vTz3jLCa','oxrKvfjluq','BNbTigLUC3rHBgWGls1ZyxzLlwrLDIbLC2XPBNqTCgX1z2LUlxnLy3vYAxr5','DMLH','mJC1Ee14vNzh','CgfJA2fNzq','CMvXDwLYzw1LBNrZlNr4Da','CgfJA2fNzs5QC29U','CgLWlwf1zgL0ig5VDcbHDMfPBgfIBgu','AMf2yxnJCMLWDa','zgv0zwn0qxzHAwXHyMXLu2nHBM5LCNm','CgfYC2u','yxzHAwXHyMXLu2nHBM5LCNm','C2vJDxjPDhK','CgLWqxvKAxq','mtiYotGYnfnLu2DtsG','CNvSzuLK','C2TPCfrLC3rgAwXLCW','BNbTigXPC3qGzxnSAw50lxbSDwDPBI1Zzwn1CML0EsaTlwrLChrOptaGls1QC29U','txvSDgKTBgfUz3vHz2uGu0ftvcb3AxrOigv4DgvUC2L2zsbZzwn1CML0EsbYDwXLCW','y3DL','zw50CMLLCW','Bwv0ywrHDge','rMfPBgvKihrVihbHCNnLiejHBMrPDcbVDxrWDxq','AxnZDwvFy3DL','CgfYC2voCg1bDwrPDfjLC3vSDhm','nJCZnZbLCMrYrMO','q1jjveLdquW'];a0_0x45e0=function(){return _0x181a38;};return a0_0x45e0();}
@@ -1 +1 @@
1
- const a0_0xa06782=a0_0x54d4;function a0_0x4f6e(){const _0x349455=['mtvICLzNBfq','rgLHz25VC3rPy0nHDgvNB3j5','zMLSzu5HBwu','odqZnZq4DKPTvM93','BgLUzq','u1Lovefy','rvnozxH0','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','y2f0zwDVCNK','BwvZC2fNzq','mtm3mdaXChr3EvjR','C3rHCNq','q0furuDpuLK','zM9YBwf0rgLHz25VC3rPyW','u3vNz2vZDgLVBG','Aw5JBhvKzxm','zgvIDwC','y2fUBM90igzPBMqGBw9KDwXL','u0vwrvjjvfK','y2XHC3m','BgvUz3rO','y2HHCMfJDgvY','u2nYAxb0vgfYz2v0','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','v2fYBMLUzW','mZK0nZq3mNj1BK5Vva','mtbfwuLIC08','twvZC2fNzq','ChvZAa','C2v2zxjPDhK','v0fstKLorW','CgfYC2veAwfNBM9ZDgLJCW','yw5HBhL6zq','vfLqrq','u2vTyw50AwmGyw5HBhLZAxmGzw5JB3vUDgvYzwqGzxjYB3i','vhLWzvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','mtC3mJG3nhDpq0nwqW','BwvZC2fNzvrLEhq','zMLSzq','qw5HBhLZAxmGzMfPBgvKoIa','mZC0nJG5n25yD1LREa','Bg9Nz2vY','zgLYBMfTzq','nM9Otu5pEq','mtuZmda2DxDevMvt','Dg9mB3DLCKnHC2u','y29Kzq','tM9KzuPZ','tgf0zxn0','mtzOAhbzsKG','ndiXnJqWohvQtur2wa','tw9KDwXLuMvZB2X1DgLVBKTPBMq'];a0_0x4f6e=function(){return _0x349455;};return a0_0x4f6e();}(function(_0x14223d,_0x3aa4e1){const _0x106368=a0_0x54d4,_0x3b8ff5=_0x14223d();while(!![]){try{const _0x2a3b26=-parseInt(_0x106368(0x1ee))/0x1+parseInt(_0x106368(0x1f3))/0x2*(-parseInt(_0x106368(0x200))/0x3)+-parseInt(_0x106368(0x1f9))/0x4*(-parseInt(_0x106368(0x1f6))/0x5)+-parseInt(_0x106368(0x222))/0x6*(-parseInt(_0x106368(0x1f4))/0x7)+-parseInt(_0x106368(0x20f))/0x8+-parseInt(_0x106368(0x21b))/0x9+parseInt(_0x106368(0x210))/0xa*(parseInt(_0x106368(0x21f))/0xb);if(_0x2a3b26===_0x3aa4e1)break;else _0x3b8ff5['push'](_0x3b8ff5['shift']());}catch(_0x375b7d){_0x3b8ff5['push'](_0x3b8ff5['shift']());}}}(a0_0x4f6e,0x599ac));import a0_0x1a9427 from'typescript';function a0_0x54d4(_0xf5e8a5,_0x4bf07f){_0xf5e8a5=_0xf5e8a5-0x1ee;const _0x4f6e78=a0_0x4f6e();let _0x54d4c1=_0x4f6e78[_0xf5e8a5];if(a0_0x54d4['lLeHWz']===undefined){var _0x3c91e2=function(_0x81733){const _0x467d60='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a9427='',_0x398a87='';for(let _0x1f68cc=0x0,_0x3eacc3,_0x119305,_0x46817e=0x0;_0x119305=_0x81733['charAt'](_0x46817e++);~_0x119305&&(_0x3eacc3=_0x1f68cc%0x4?_0x3eacc3*0x40+_0x119305:_0x119305,_0x1f68cc++%0x4)?_0x1a9427+=String['fromCharCode'](0xff&_0x3eacc3>>(-0x2*_0x1f68cc&0x6)):0x0){_0x119305=_0x467d60['indexOf'](_0x119305);}for(let _0x37d185=0x0,_0x58b79e=_0x1a9427['length'];_0x37d185<_0x58b79e;_0x37d185++){_0x398a87+='%'+('00'+_0x1a9427['charCodeAt'](_0x37d185)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x398a87);};a0_0x54d4['NRrGqU']=_0x3c91e2,a0_0x54d4['TyMrEL']={},a0_0x54d4['lLeHWz']=!![];}const _0x56c922=_0x4f6e78[0x0],_0x4525bd=_0xf5e8a5+_0x56c922,_0x17f8d9=a0_0x54d4['TyMrEL'][_0x4525bd];return!_0x17f8d9?(_0x54d4c1=a0_0x54d4['NRrGqU'](_0x54d4c1),a0_0x54d4['TyMrEL'][_0x4525bd]=_0x54d4c1):_0x54d4c1=_0x17f8d9,_0x54d4c1;}import a0_0x398a87 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';class TypeScriptAnalyzer{constructor(_0x1f68cc=null){const _0x318fd8=a0_0x54d4;this[_0x318fd8(0x220)]=_0x1f68cc,this['compilerOptions']={'noEmit':!![],'jsx':a0_0x1a9427['JsxEmit']['React'],'target':a0_0x1a9427[_0x318fd8(0x20c)]['Latest'],'module':a0_0x1a9427['ModuleKind'][_0x318fd8(0x1fc)],'moduleResolution':a0_0x1a9427[_0x318fd8(0x1f5)][_0x318fd8(0x1f1)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':!![],'noImplicitAny':!![],'strictNullChecks':!![],'strictFunctionTypes':!![],'allowJs':![]};}async[a0_0xa06782(0x216)](_0x3eacc3,_0x119305,_0x46817e={}){const _0x43e6d4=a0_0xa06782;try{const _0x37d185=[],_0x58b79e=a0_0x1a9427['createSourceFile'](_0x3eacc3,_0x119305,a0_0x1a9427[_0x43e6d4(0x20c)][_0x43e6d4(0x1f2)],!![]),_0x27d342=this[_0x43e6d4(0x20d)](_0x58b79e);_0x37d185['push'](..._0x27d342);const _0x61cf98=await this['getSemanticDiagnostics'](_0x3eacc3,_0x119305);return _0x37d185[_0x43e6d4(0x212)](..._0x61cf98),this[_0x43e6d4(0x220)]?.[_0x43e6d4(0x206)](_0x43e6d4(0x219),{'file':_0x3eacc3,'totalDiagnostics':_0x37d185[_0x43e6d4(0x20a)],'errors':_0x37d185['filter'](_0x566840=>_0x566840[_0x43e6d4(0x213)]===STATIC_ANALYSIS[_0x43e6d4(0x208)]['ERROR'])[_0x43e6d4(0x20a)],'warnings':_0x37d185['filter'](_0x27dd3f=>_0x27dd3f[_0x43e6d4(0x213)]===STATIC_ANALYSIS[_0x43e6d4(0x208)][_0x43e6d4(0x214)])[_0x43e6d4(0x20a)]}),_0x37d185;}catch(_0x2f41c4){return this['logger']?.['error']('TypeScript\x20analysis\x20failed',{'file':_0x3eacc3,'error':_0x2f41c4[_0x43e6d4(0x1ff)]}),[{'file':_0x3eacc3,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS[_0x43e6d4(0x208)]['ERROR'],'rule':'analyzer-error','message':_0x43e6d4(0x21e)+_0x2f41c4[_0x43e6d4(0x1ff)],'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX']}];}}['getSyntacticDiagnostics'](_0x1df269){const _0x2ff597=a0_0xa06782,_0xd8978d=[];if(_0x1df269[_0x2ff597(0x215)]&&_0x1df269[_0x2ff597(0x215)][_0x2ff597(0x20a)]>0x0)for(const _0xf7103d of _0x1df269['parseDiagnostics']){_0xd8978d[_0x2ff597(0x212)](this['formatDiagnostic'](_0xf7103d,_0x1df269));}return _0xd8978d;}async['getSemanticDiagnostics'](_0x44370f,_0xfa40d){const _0x4a81cd=a0_0xa06782,_0x250d79=[];try{const _0x27f06d=a0_0x1a9427['createSourceFile'](_0x44370f,_0xfa40d,a0_0x1a9427['ScriptTarget']['Latest'],!![]),_0x594e53={'getSourceFile':_0x171d28=>{if(_0x171d28===_0x44370f)return _0x27f06d;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x398a87[_0x4a81cd(0x221)](_0x44370f),'getDirectories':()=>[],'fileExists':_0x234c64=>_0x234c64===_0x44370f,'readFile':_0x12f25b=>{if(_0x12f25b===_0x44370f)return _0xfa40d;return undefined;},'getCanonicalFileName':_0x483840=>_0x483840,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x2fc02e=a0_0x1a9427['createProgram']({'rootNames':[_0x44370f],'options':this['compilerOptions'],'host':_0x594e53}),_0x2f0f25=_0x2fc02e[_0x4a81cd(0x20d)](_0x27f06d),_0x54b2f9=_0x2fc02e['getSemanticDiagnostics'](_0x27f06d);for(const _0x592905 of[..._0x2f0f25,..._0x54b2f9]){_0x250d79['push'](this['formatDiagnostic'](_0x592905,_0x27f06d));}}catch(_0x402bec){this[_0x4a81cd(0x220)]?.['debug'](_0x4a81cd(0x218),{'file':_0x44370f,'error':_0x402bec[_0x4a81cd(0x1ff)]});}return _0x250d79;}[a0_0xa06782(0x203)](_0xd3d104,_0x2a31d7){const _0x49600c=a0_0xa06782;let _0x53d1c8=0x0,_0x3dc969=0x0;if(_0xd3d104[_0x49600c(0x21d)]&&_0xd3d104[_0x49600c(0x201)]!==undefined){const _0x269b5a=_0xd3d104[_0x49600c(0x21d)]['getLineAndCharacterOfPosition'](_0xd3d104['start']);_0x53d1c8=_0x269b5a[_0x49600c(0x1fa)]+0x1,_0x3dc969=_0x269b5a['character']+0x1;}else{if(_0x2a31d7&&_0xd3d104[_0x49600c(0x201)]!==undefined){const _0x151333=_0x2a31d7[_0x49600c(0x21a)](_0xd3d104['start']);_0x53d1c8=_0x151333['line']+0x1,_0x3dc969=_0x151333[_0x49600c(0x20b)]+0x1;}}const _0x107605=a0_0x1a9427[_0x49600c(0x1fd)](_0xd3d104[_0x49600c(0x21c)],'\x0a');let _0x4e67d2;switch(_0xd3d104[_0x49600c(0x1fe)]){case a0_0x1a9427[_0x49600c(0x1f7)]['Error']:_0x4e67d2=STATIC_ANALYSIS[_0x49600c(0x208)]['ERROR'];break;case a0_0x1a9427[_0x49600c(0x1f7)][_0x49600c(0x20e)]:_0x4e67d2=STATIC_ANALYSIS['SEVERITY']['WARNING'];break;case a0_0x1a9427['DiagnosticCategory'][_0x49600c(0x211)]:case a0_0x1a9427['DiagnosticCategory'][_0x49600c(0x204)]:_0x4e67d2=STATIC_ANALYSIS[_0x49600c(0x208)]['INFO'];break;default:_0x4e67d2=STATIC_ANALYSIS['SEVERITY']['ERROR'];}let _0x49a0c4=STATIC_ANALYSIS[_0x49600c(0x202)]['SYNTAX'];const _0x58b326=_0xd3d104[_0x49600c(0x1f0)];if(_0x58b326>=0x7d0&&_0x58b326<0xbb8)_0x49a0c4=STATIC_ANALYSIS[_0x49600c(0x202)]['TYPE'];else{if(_0x58b326>=0x3e8&&_0x58b326<0x7d0)_0x49a0c4=STATIC_ANALYSIS[_0x49600c(0x202)][_0x49600c(0x1fb)];else _0x58b326>=0x8fc&&_0x58b326<0x960&&(_0x49a0c4=STATIC_ANALYSIS[_0x49600c(0x202)]['IMPORT']);}const _0x50377f=_0x107605[_0x49600c(0x1ef)]();if(_0x50377f[_0x49600c(0x205)](_0x49600c(0x207))||_0x50377f['includes']('import')||_0x50377f['includes']('export'))_0x49a0c4=STATIC_ANALYSIS['CATEGORY']['IMPORT'];else(_0x50377f['includes']('type')||_0x50377f['includes']('interface')||_0x50377f['includes'](_0x49600c(0x209)))&&(_0x49a0c4=STATIC_ANALYSIS[_0x49600c(0x202)][_0x49600c(0x217)]);return{'file':_0xd3d104['file']?.['fileName']||_0x2a31d7?.[_0x49600c(0x1f8)]||'unknown','line':_0x53d1c8,'column':_0x3dc969,'severity':_0x4e67d2,'rule':'TS'+_0x58b326,'message':_0x107605,'category':_0x49a0c4,'fixable':![],'code':_0xd3d104['code']};}}export default TypeScriptAnalyzer;
1
+ const a0_0x41462f=a0_0x2a68;(function(_0x4f9e42,_0xe1f307){const _0x75f95a=a0_0x2a68,_0x1021d9=_0x4f9e42();while(!![]){try{const _0x2baf16=parseInt(_0x75f95a(0x170))/0x1+-parseInt(_0x75f95a(0x165))/0x2*(parseInt(_0x75f95a(0x17a))/0x3)+-parseInt(_0x75f95a(0x186))/0x4+parseInt(_0x75f95a(0x182))/0x5*(parseInt(_0x75f95a(0x185))/0x6)+parseInt(_0x75f95a(0x15f))/0x7+parseInt(_0x75f95a(0x188))/0x8+-parseInt(_0x75f95a(0x184))/0x9;if(_0x2baf16===_0xe1f307)break;else _0x1021d9['push'](_0x1021d9['shift']());}catch(_0x435f6a){_0x1021d9['push'](_0x1021d9['shift']());}}}(a0_0x3864,0xcb99c));import a0_0x4f7d1d from'typescript';import a0_0x177896 from'path';function a0_0x3864(){const _0x2b77c5=['zMLSDgvY','vfLqrq','ChvZAa','q0furuDpuLK','rxjYB3i','nJyZndeWtNnUqvHJ','tgf0zxn0','u0vwrvjjvfK','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','BwvZC2fNzq','y2f0zwDVCNK','vhLWzvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','rvnozxH0','BgLIlMqUDhm','tM9KzuPZ','nduXmZHSvgDRq3G','y2fUBM90igzPBMqGBw9KDwXL','CgfYC2veAwfNBM9ZDgLJCW','zMLSzu5HBwu','u3vNz2vZDgLVBG','yw5HBhL6zxiTzxjYB3i','C2v2zxjPDhK','Aw50zxjMywnL','ntv1Efn2CMS','tw9KDwXLs2LUza','mtK2nZq4mufKD0ffzW','mZe1nJC4D1DMzhfk','oti0mZiWs2L4s2fX','v2fYBMLUzW','nZu5otyWmfLYsKXOqW','zgvIDwC','tw9KDwXLuMvZB2X1DgLVBKTPBMq','BgvUz3rO','su1qt1ju','twvZC2fNzq','u1Lovefy','u2nYAxb0vgfYz2v0','BgLUzq','Bg9Nz2vY','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','zgLYBMfTzq','mZK2mJi5ngnnB3fpAq','zxjYB3i','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','v0fstKLorW','y3jLyxrLu291CMnLrMLSzq','zMLSzq','mtK2DwrYsM95','Aw5JBhvKzxm','C3rHCNq','rgLHz25VC3rPy0nHDgvNB3j5','rvjst1i','zM9YBwf0rgLHz25VC3rPyW'];a0_0x3864=function(){return _0x2b77c5;};return a0_0x3864();}function a0_0x2a68(_0x2aa420,_0x214298){_0x2aa420=_0x2aa420-0x15c;const _0x386466=a0_0x3864();let _0x2a686b=_0x386466[_0x2aa420];if(a0_0x2a68['OQrwHg']===undefined){var _0x2c784a=function(_0x58330a){const _0x1a25ba='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4f7d1d='',_0x177896='';for(let _0x35755b=0x0,_0x523e35,_0x51f1e4,_0x19d708=0x0;_0x51f1e4=_0x58330a['charAt'](_0x19d708++);~_0x51f1e4&&(_0x523e35=_0x35755b%0x4?_0x523e35*0x40+_0x51f1e4:_0x51f1e4,_0x35755b++%0x4)?_0x4f7d1d+=String['fromCharCode'](0xff&_0x523e35>>(-0x2*_0x35755b&0x6)):0x0){_0x51f1e4=_0x1a25ba['indexOf'](_0x51f1e4);}for(let _0x5b9ca5=0x0,_0x4db9ed=_0x4f7d1d['length'];_0x5b9ca5<_0x4db9ed;_0x5b9ca5++){_0x177896+='%'+('00'+_0x4f7d1d['charCodeAt'](_0x5b9ca5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x177896);};a0_0x2a68['NhoDBQ']=_0x2c784a,a0_0x2a68['iJUFvn']={},a0_0x2a68['OQrwHg']=!![];}const _0x23b911=_0x386466[0x0],_0x4c3b7d=_0x2aa420+_0x23b911,_0x127fcc=a0_0x2a68['iJUFvn'][_0x4c3b7d];return!_0x127fcc?(_0x2a686b=a0_0x2a68['NhoDBQ'](_0x2a686b),a0_0x2a68['iJUFvn'][_0x4c3b7d]=_0x2a686b):_0x2a686b=_0x127fcc,_0x2a686b;}import{STATIC_ANALYSIS}from'../utilities/constants.js';class TypeScriptAnalyzer{constructor(_0x35755b=null){const _0xcac45a=a0_0x2a68;this['logger']=_0x35755b,this['compilerOptions']={'noEmit':!![],'jsx':a0_0x4f7d1d['JsxEmit']['React'],'target':a0_0x4f7d1d['ScriptTarget'][_0xcac45a(0x171)],'module':a0_0x4f7d1d[_0xcac45a(0x183)][_0xcac45a(0x177)],'moduleResolution':a0_0x4f7d1d[_0xcac45a(0x18a)][_0xcac45a(0x179)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':!![],'noImplicitAny':!![],'strictNullChecks':!![],'strictFunctionTypes':!![],'allowJs':![]};}async['analyze'](_0x523e35,_0x51f1e4,_0x19d708={}){const _0x524529=a0_0x2a68;try{const _0x5b9ca5=[],_0x4db9ed=a0_0x4f7d1d[_0x524529(0x163)](_0x523e35,_0x51f1e4,a0_0x4f7d1d[_0x524529(0x18f)]['Latest'],!![]),_0x43fc66=this['getSyntacticDiagnostics'](_0x4db9ed);_0x5b9ca5['push'](..._0x43fc66);const _0x4967e7=await this[_0x524529(0x161)](_0x523e35,_0x51f1e4);return _0x5b9ca5[_0x524529(0x16d)](..._0x4967e7),this[_0x524529(0x15c)]?.[_0x524529(0x189)](_0x524529(0x176),{'file':_0x523e35,'totalDiagnostics':_0x5b9ca5['length'],'errors':_0x5b9ca5['filter'](_0x54ffd6=>_0x54ffd6[_0x524529(0x180)]===STATIC_ANALYSIS[_0x524529(0x172)][_0x524529(0x169)])[_0x524529(0x18b)],'warnings':_0x5b9ca5[_0x524529(0x16b)](_0x538333=>_0x538333[_0x524529(0x180)]===STATIC_ANALYSIS['SEVERITY'][_0x524529(0x162)])['length']}),_0x5b9ca5;}catch(_0x15b59d){return this[_0x524529(0x15c)]?.[_0x524529(0x160)]('TypeScript\x20analysis\x20failed',{'file':_0x523e35,'error':_0x15b59d[_0x524529(0x174)]}),[{'file':_0x523e35,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':_0x524529(0x17f),'message':'Analysis\x20failed:\x20'+_0x15b59d['message'],'category':STATIC_ANALYSIS[_0x524529(0x16e)]['SYNTAX']}];}}['getSyntacticDiagnostics'](_0x58a991){const _0x2df761=a0_0x2a68,_0x3261f3=[];if(_0x58a991[_0x2df761(0x17c)]&&_0x58a991['parseDiagnostics']['length']>0x0)for(const _0x165a4a of _0x58a991[_0x2df761(0x17c)]){_0x3261f3[_0x2df761(0x16d)](this[_0x2df761(0x16a)](_0x165a4a,_0x58a991));}return _0x3261f3;}async[a0_0x41462f(0x161)](_0x466a2a,_0x173dd3){const _0x5ab40b=a0_0x41462f,_0x20977c=[];try{const _0x550ef8=a0_0x4f7d1d[_0x5ab40b(0x163)](_0x466a2a,_0x173dd3,a0_0x4f7d1d[_0x5ab40b(0x18f)][_0x5ab40b(0x171)],!![]),_0x15998b={'getSourceFile':_0xf29805=>{if(_0xf29805===_0x466a2a)return _0x550ef8;return undefined;},'getDefaultLibFileName':()=>_0x5ab40b(0x178),'writeFile':()=>{},'getCurrentDirectory':()=>a0_0x177896[_0x5ab40b(0x15e)](_0x466a2a),'getDirectories':()=>[],'fileExists':_0x129603=>_0x129603===_0x466a2a,'readFile':_0x114518=>{if(_0x114518===_0x466a2a)return _0x173dd3;return undefined;},'getCanonicalFileName':_0x3b1b6c=>_0x3b1b6c,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x27f625=a0_0x4f7d1d['createProgram']({'rootNames':[_0x466a2a],'options':this['compilerOptions'],'host':_0x15998b}),_0x4d49ad=_0x27f625[_0x5ab40b(0x173)](_0x550ef8),_0x3130a2=_0x27f625[_0x5ab40b(0x161)](_0x550ef8);for(const _0x47fcd2 of[..._0x4d49ad,..._0x3130a2]){_0x20977c['push'](this['formatDiagnostic'](_0x47fcd2,_0x550ef8));}}catch(_0x28e669){this[_0x5ab40b(0x15c)]?.['debug']('Semantic\x20analysis\x20encountered\x20error',{'file':_0x466a2a,'error':_0x28e669[_0x5ab40b(0x174)]});}return _0x20977c;}['formatDiagnostic'](_0x5b751c,_0x1ae0b5){const _0x54b133=a0_0x41462f;let _0x439115=0x0,_0xc0090d=0x0;if(_0x5b751c['file']&&_0x5b751c[_0x54b133(0x167)]!==undefined){const _0x58620d=_0x5b751c[_0x54b133(0x164)]['getLineAndCharacterOfPosition'](_0x5b751c['start']);_0x439115=_0x58620d[_0x54b133(0x190)]+0x1,_0xc0090d=_0x58620d['character']+0x1;}else{if(_0x1ae0b5&&_0x5b751c['start']!==undefined){const _0x214e22=_0x1ae0b5[_0x54b133(0x15d)](_0x5b751c['start']);_0x439115=_0x214e22['line']+0x1,_0xc0090d=_0x214e22['character']+0x1;}}const _0xd2de36=a0_0x4f7d1d['flattenDiagnosticMessageText'](_0x5b751c['messageText'],'\x0a');let _0x245f69;switch(_0x5b751c[_0x54b133(0x175)]){case a0_0x4f7d1d['DiagnosticCategory'][_0x54b133(0x16f)]:_0x245f69=STATIC_ANALYSIS[_0x54b133(0x172)][_0x54b133(0x169)];break;case a0_0x4f7d1d[_0x54b133(0x168)][_0x54b133(0x187)]:_0x245f69=STATIC_ANALYSIS[_0x54b133(0x172)]['WARNING'];break;case a0_0x4f7d1d['DiagnosticCategory'][_0x54b133(0x18d)]:case a0_0x4f7d1d['DiagnosticCategory'][_0x54b133(0x17e)]:_0x245f69=STATIC_ANALYSIS['SEVERITY']['INFO'];break;default:_0x245f69=STATIC_ANALYSIS['SEVERITY']['ERROR'];}let _0x466974=STATIC_ANALYSIS[_0x54b133(0x16e)][_0x54b133(0x18e)];const _0x37e3d3=_0x5b751c['code'];if(_0x37e3d3>=0x7d0&&_0x37e3d3<0xbb8)_0x466974=STATIC_ANALYSIS['CATEGORY']['TYPE'];else{if(_0x37e3d3>=0x3e8&&_0x37e3d3<0x7d0)_0x466974=STATIC_ANALYSIS[_0x54b133(0x16e)][_0x54b133(0x18e)];else _0x37e3d3>=0x8fc&&_0x37e3d3<0x960&&(_0x466974=STATIC_ANALYSIS[_0x54b133(0x16e)][_0x54b133(0x18c)]);}const _0x3686ab=_0xd2de36['toLowerCase']();if(_0x3686ab[_0x54b133(0x166)](_0x54b133(0x17b))||_0x3686ab['includes']('import')||_0x3686ab['includes']('export'))_0x466974=STATIC_ANALYSIS[_0x54b133(0x16e)][_0x54b133(0x18c)];else(_0x3686ab['includes']('type')||_0x3686ab['includes'](_0x54b133(0x181))||_0x3686ab['includes']('class'))&&(_0x466974=STATIC_ANALYSIS['CATEGORY'][_0x54b133(0x16c)]);return{'file':_0x5b751c[_0x54b133(0x164)]?.[_0x54b133(0x17d)]||_0x1ae0b5?.[_0x54b133(0x17d)]||'unknown','line':_0x439115,'column':_0xc0090d,'severity':_0x245f69,'rule':'TS'+_0x37e3d3,'message':_0xd2de36,'category':_0x466974,'fixable':![],'code':_0x5b751c['code']};}}export default TypeScriptAnalyzer;
@@ -1 +1 @@
1
- const a0_0x160ad8=a0_0x158e;function a0_0xe41f(){const _0x32401b=['y2HHCKf0','ms4Gq3jLyxrLigeGBMv3ignSyxnZihrVigvUy2fWC3vSyxrLihrOAxmGzNvUy3rPB25HBgL0Eq','AM9PBG','mI4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGDgHLigv4DhjHy3rLzcb2zxjZAw9U','ns4GvgvZDcb0BYbLBNn1CMuGyMvOyxzPB3iGAxmGChjLC2vYDMvK','y29Kzq','y2XVBMuT','C3bSAxq','DhLWzq','BgvUz3rO','BwvKAxvT','CMvKDwnL','yxzLCMfNzuXPBMvdB3vUDa','zM9Y','AgLNAa','C2XPy2u','lIbuAgLZigLZigeGAgLNAc1PBxbHy3qGCMvMywn0B3jPBMCGB3bWB3j0Dw5PDhK','mti3otbqAvb1yum','ChvZAa','sw1WCM92zsbJB2rLig9Yz2fUAxPHDgLVBIbHy3jVC3mG','mtK1mdmWou93vK55Eq','y2fSy3vSyxrLsw1Wywn0u2nVCMu','Aw5JBhvKzxm','CMvWBgfJzq','Aw1Wywn0u2nVCMu','igXVy2f0Aw9UCW','zw5KtgLUzq','otGZnJG4uxDNBK9P','mtG2nMTnwKXNuG','igzPBgvZ','mI4Gtw92zsbYzwXHDgvKig1LDgHVzhmGyw5KihbYB3bLCNrPzxmGAw50BYb0AguGy2XHC3m','zxH0CMfJDc1MDw5JDgLVBG','z2vUzxjHDgvszwzHy3rVCMLUz0fKDMLJzq','igr1CgXPy2f0zwqGBgLUzxmUia','odC3nZq5Eunmyufz','zwXZzq','q2XHC3m','C3vNz2vZDe5HBwu','ogHJthvMsq','mZK2ndHxzKzeC28','mJu5nLz4DgjjwG','mtbxswrXsgm','z2vUzxjHDgvszwfZB25PBMC','twv0Ag9K','C29YDa','zgvZy3jPyMvczw5LzML0CW','igfJCM9ZCYa','nJmXntGYn0Pjq3vnva','ms4GrxH0CMfJDcb0AguGzhvWBgLJyxrLzcbJB2rLihvZAw5Nia','zgv0zxjTAw5LuMvMywn0B3jPBMDtDhjHDgvNEq','sw1WCM92zsbTywLUDgfPBMfIAwXPDhKGyNKGy2vUDhjHBgL6Aw5NigXVz2LJigLUig9UzsbWBgfJzq','C3rHCNrmAw5L','lcbHBMqGCMvKDwnLignVzguGC2L6zq','ms4Gq3jLyxrLigeGBMv3ig1VzhvSzs9MAwXLigzVCIb0AgLZihnOyxjLzcbMDw5JDgLVBMfSAxr5','Dg9vChbLCKnHC2u','ndy4odeYwxDoAg5e','vgHPCYa','mxzVq0fXAW','y3jLyxrLrNvUy3rPB25oyw1L','Bwf0y2G','BwfW','zM9YrwfJAa','Bwv0CMLJCW','zxH0CMfJDc1TB2r1Bgu','z2vUzxjHDgvby3rPB25HyMXLu3rLChm','yMXVy2TZ','BwLU','zMLSzxndB3zLCMvK','zxn0Aw1HDgvfzMzVCNq','zMLSzq','yw5HBhL6zunSB25LCW','Dg9Rzw5dB3vUDa','twfRzsbMDxr1CMuGy2HHBMDLCYbLyxnPzxiGyw5KigXLC3mGzxjYB3iTChjVBMu'];a0_0xe41f=function(){return _0x32401b;};return a0_0xe41f();}function a0_0x158e(_0x1557a2,_0x45310b){_0x1557a2=_0x1557a2-0xc2;const _0xe41f84=a0_0xe41f();let _0x158e51=_0xe41f84[_0x1557a2];if(a0_0x158e['yYqTVe']===undefined){var _0x898850=function(_0x4533b9){const _0x2f88f3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x476b91='',_0x383c6f='';for(let _0xc53d1d=0x0,_0x4023de,_0x566f67,_0x24da62=0x0;_0x566f67=_0x4533b9['charAt'](_0x24da62++);~_0x566f67&&(_0x4023de=_0xc53d1d%0x4?_0x4023de*0x40+_0x566f67:_0x566f67,_0xc53d1d++%0x4)?_0x476b91+=String['fromCharCode'](0xff&_0x4023de>>(-0x2*_0xc53d1d&0x6)):0x0){_0x566f67=_0x2f88f3['indexOf'](_0x566f67);}for(let _0x3b7e0f=0x0,_0x2982df=_0x476b91['length'];_0x3b7e0f<_0x2982df;_0x3b7e0f++){_0x383c6f+='%'+('00'+_0x476b91['charCodeAt'](_0x3b7e0f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x383c6f);};a0_0x158e['FhzVEX']=_0x898850,a0_0x158e['TnARPn']={},a0_0x158e['yYqTVe']=!![];}const _0x9ba0b2=_0xe41f84[0x0],_0x1e5ae0=_0x1557a2+_0x9ba0b2,_0xb157f5=a0_0x158e['TnARPn'][_0x1e5ae0];return!_0xb157f5?(_0x158e51=a0_0x158e['FhzVEX'](_0x158e51),a0_0x158e['TnARPn'][_0x1e5ae0]=_0x158e51):_0x158e51=_0xb157f5,_0x158e51;}(function(_0x5d5f6b,_0x30a854){const _0xd43f=a0_0x158e,_0x29922a=_0x5d5f6b();while(!![]){try{const _0xddb9f6=-parseInt(_0xd43f(0x100))/0x1*(parseInt(_0xd43f(0xfe))/0x2)+parseInt(_0xd43f(0xe9))/0x3+-parseInt(_0xd43f(0xe2))/0x4+parseInt(_0xd43f(0xd8))/0x5*(parseInt(_0xd43f(0xe3))/0x6)+parseInt(_0xd43f(0xf6))/0x7*(parseInt(_0xd43f(0xed))/0x8)+-parseInt(_0xd43f(0xdb))/0x9*(parseInt(_0xd43f(0xf0))/0xa)+-parseInt(_0xd43f(0xef))/0xb*(parseInt(_0xd43f(0xee))/0xc);if(_0xddb9f6===_0x30a854)break;else _0x29922a['push'](_0x29922a['shift']());}catch(_0x172e41){_0x29922a['push'](_0x29922a['shift']());}}}(a0_0xe41f,0x7d649));export class RefactoringAnalyzer{constructor(_0x476b91){this['config']=_0x476b91;}[a0_0x160ad8(0xc4)](_0x383c6f){const _0x212a8f=a0_0x160ad8;return console['log']('Analyzing\x20clones\x20for\x20refactoring\x20opportunities...'),_0x383c6f['map']((_0xc53d1d,_0x4023de)=>{const _0x35f91e=a0_0x158e,_0x566f67=this['calculateMetrics'](_0xc53d1d),_0x24da62=this[_0x35f91e(0xe7)](_0xc53d1d,_0x566f67);return{'id':_0x35f91e(0xcd)+(_0x4023de+0x1),'type':_0xc53d1d[_0x35f91e(0xcf)],'confidence':_0xc53d1d['confidence'],'instances':_0xc53d1d[_0x35f91e(0x108)]['map'](_0x3b7e0f=>({'file':_0x3b7e0f[_0x35f91e(0xc3)],'startLine':_0x3b7e0f[_0x35f91e(0xfa)],'endLine':_0x3b7e0f['endLine'],'code':this['truncateCode'](_0x3b7e0f['code']),'fullCode':_0x3b7e0f[_0x35f91e(0xcc)],'blockType':_0x3b7e0f['type']})),'metrics':_0x566f67,'refactoringAdvice':_0x24da62};})['sort']((_0x2982df,_0x1843c8)=>_0x1843c8[_0x212a8f(0x105)][_0x212a8f(0xdf)]-_0x2982df['metrics']['impactScore']);}['calculateMetrics'](_0x330b4d){const _0x48c59d=a0_0x160ad8,_0x1ead8c=_0x330b4d['blocks'],_0x419970=_0x330b4d[_0x48c59d(0xc5)],_0x201879=this['averageLineCount'](_0x1ead8c),_0x29073d=_0x1ead8c['length'],_0x550801=this['calculateImpactScore'](_0x419970,_0x201879,_0x29073d,_0x330b4d['confidence']),_0x65e019=_0x201879*(_0x29073d-0x1),_0x6de37e=_0x419970*(_0x29073d-0x1);return{'tokenCount':_0x419970,'lineCount':_0x201879,'instanceCount':_0x29073d,'duplicatedLines':_0x65e019,'duplicatedTokens':_0x6de37e,'impactScore':parseFloat(_0x550801['toFixed'](0x2)),'filesCovered':new Set(_0x1ead8c['map'](_0x291405=>_0x291405[_0x48c59d(0xc3)]))['size']};}[a0_0x160ad8(0xdc)](_0x2a097b,_0x22a388,_0x22fa9b,_0x2bc06c){const _0x3e780f=a0_0x160ad8,_0x4e770f=Math['log10'](_0x2a097b+0x1)*0x2,_0x704859=Math['log2'](_0x22fa9b+0x1)*0x3,_0x1fb18d=_0x2bc06c*0x2,_0x1fba79=Math[_0x3e780f(0x109)](_0x22a388/0xa,0x3);return _0x4e770f+_0x704859+_0x1fb18d+_0x1fba79;}[a0_0x160ad8(0xe7)](_0x2f958b,_0x3e0d3c){const _0x5ba89d=a0_0x160ad8,_0x345cdf=this['determineRefactoringStrategy'](_0x2f958b,_0x3e0d3c),_0xb63c2c=this['determinePriority'](_0x3e0d3c),_0x55e31d=this['suggestName'](_0x2f958b),_0x1e66f0=this[_0x5ba89d(0xf1)](_0x2f958b,_0x3e0d3c,_0x345cdf),_0x319685=this[_0x5ba89d(0xc2)](_0x3e0d3c,_0x345cdf),_0x5ee6e6=this['describeBenefits'](_0x3e0d3c);return{'priority':_0xb63c2c,'strategy':_0x345cdf,'suggestedName':_0x55e31d,'reasoning':_0x1e66f0,'estimatedEffort':_0x319685,'benefits':_0x5ee6e6,'actionableSteps':this['generateActionableSteps'](_0x345cdf,_0x55e31d,_0x3e0d3c)};}[a0_0x160ad8(0xf8)](_0x507341,_0x2cbe63){const _0x5cf275=a0_0x160ad8,{tokenCount:_0x1ab6f8,lineCount:_0x26366f,instanceCount:_0x2ff224,filesCovered:_0x4708dd}=_0x2cbe63,_0x4921a0=_0x507341[_0x5cf275(0x108)]['map'](_0x33a3ed=>_0x33a3ed[_0x5cf275(0xcf)]),_0x52542a=_0x4921a0['some'](_0x42d284=>_0x42d284[_0x5cf275(0xdd)]('Function')||_0x42d284['includes'](_0x5cf275(0xf2))),_0x6421c1=_0x4921a0['some'](_0x15f3e4=>_0x15f3e4['includes'](_0x5cf275(0xeb)));if(_0x6421c1&&_0x26366f>0x32)return'extract-module';else{if(_0x4708dd>0x2&&_0x1ab6f8>0x64)return _0x5cf275(0x106);else{if(_0x52542a||_0x26366f>=0xa&&_0x26366f<=0x32)return'extract-function';else{if(_0x26366f>0x32)return'extract-class';else return _0x26366f<0xa?'extract-constant-or-utility':'extract-function';}}}}['determinePriority'](_0x52ecf2){const _0x5b696a=a0_0x160ad8,{impactScore:_0x2aaa95}=_0x52ecf2;if(_0x2aaa95>=0x8)return _0x5b696a(0xd5);if(_0x2aaa95>=0x5)return _0x5b696a(0xd1);return'low';}[a0_0x160ad8(0xec)](_0x4c04ca){const _0x186d9b=a0_0x160ad8,_0x3ad781=_0x4c04ca['blocks']['map'](_0x1f5c0e=>_0x1f5c0e[_0x186d9b(0xcc)])['join']('\x20'),_0x178fdd=_0x3ad781[_0x186d9b(0x102)](/[a-zA-Z_$][a-zA-Z0-9_$]*/g)||[],_0x589954={};_0x178fdd[_0x186d9b(0x104)](_0x315f09=>{const _0x1eddee=_0x186d9b;if(['const','let','var','function','return','if',_0x1eddee(0xea),_0x1eddee(0xd4),'while'][_0x1eddee(0xdd)](_0x315f09))return;_0x589954[_0x315f09]=(_0x589954[_0x315f09]||0x0)+0x1;});const _0x4a3192=Object['entries'](_0x589954)[_0x186d9b(0xf3)]((_0x4cdf09,_0x576696)=>_0x576696[0x1]-_0x4cdf09[0x1])[_0x186d9b(0xd6)](0x0,0x3);if(_0x4a3192[_0x186d9b(0xd0)]>0x0){const _0x135534=_0x4a3192['map'](([_0x4914e0])=>_0x4914e0);return this[_0x186d9b(0x101)](_0x135534);}return'extractedFunction';}['createFunctionName'](_0x5c2ec5){const _0x37feb8=a0_0x160ad8;if(_0x5c2ec5['length']===0x0)return'extractedFunction';return _0x5c2ec5[0x0]+_0x5c2ec5[_0x37feb8(0xd6)](0x1)[_0x37feb8(0x103)](_0x17f2aa=>_0x17f2aa[_0x37feb8(0xc7)](0x0)[_0x37feb8(0xfd)]()+_0x17f2aa[_0x37feb8(0xd6)](0x1))[_0x37feb8(0xc9)]('');}['generateReasoning'](_0x1c4e50,_0x57e390,_0x321932){const _0x5c7c91=a0_0x160ad8,{instanceCount:_0x5c4e89,duplicatedLines:_0x18eec6,filesCovered:_0x545398}=_0x57e390;let _0x18e73b=_0x5c7c91(0xff)+_0x1c4e50[_0x5c7c91(0xcf)]+'\x20code\x20pattern\x20appears\x20'+_0x5c4e89+'\x20times';return _0x545398>0x1&&(_0x18e73b+=_0x5c7c91(0xf5)+_0x545398+'\x20different\x20files'),_0x18e73b+=',\x20resulting\x20in\x20'+_0x18eec6+_0x5c7c91(0xe8),_0x18e73b+='Refactoring\x20to\x20'+_0x321932['replace'](/-/g,'\x20')+'\x20would\x20improve\x20maintainability',_0x5c4e89>=0x3&&(_0x18e73b+=', reduce bugs from inconsistent changes'),_0x18e73b+=_0x5c7c91(0xfb),_0x57e390['impactScore']>=0x8&&(_0x18e73b+=_0x5c7c91(0xd7)),_0x18e73b+'.';}['estimateEffort'](_0x553bc8,_0x2ce878){const _0xb32ec3=a0_0x160ad8,{lineCount:_0x5931f8,instanceCount:_0x42400e,filesCovered:_0x3b987a}=_0x553bc8;let _0x31083c=0x0;_0x31083c+=Math['min'](_0x5931f8/0xa,0x5),_0x31083c+=_0x42400e*0.5,_0x31083c+=_0x3b987a*0.5;if(_0x2ce878==='extract-module')_0x31083c+=0x3;else{if(_0x2ce878==='extract-class')_0x31083c+=0x2;else _0x2ce878===_0xb32ec3(0xe6)&&(_0x31083c+=0x1);}if(_0x31083c<=0x3)return'low';if(_0x31083c<=0x7)return'medium';return _0xb32ec3(0xd5);}[a0_0x160ad8(0xf4)](_0x1c350d){const _0x4975db=a0_0x160ad8,_0x3348ab=[];return _0x3348ab[_0x4975db(0xd9)]('Eliminate\x20'+_0x1c350d['duplicatedLines']+'\x20duplicated\x20lines\x20of\x20code'),_0x3348ab['push'](_0x4975db(0xf9)),_0x1c350d['instanceCount']>=0x3&&_0x3348ab[_0x4975db(0xd9)]('Reduce\x20risk\x20of\x20inconsistent\x20changes\x20across\x20'+_0x1c350d['instanceCount']+_0x4975db(0xe0)),_0x1c350d[_0x4975db(0x10a)]>0x2&&_0x3348ab['push'](_0x4975db(0xda)+_0x1c350d[_0x4975db(0x10a)]+_0x4975db(0xe4)),_0x3348ab['push'](_0x4975db(0xc6)),_0x3348ab;}[a0_0x160ad8(0x107)](_0x282eca,_0x4515cd,_0x5bf139){const _0xd42369=a0_0x160ad8,_0x235eca=[];switch(_0x282eca){case _0xd42369(0xe6):_0x235eca[_0xd42369(0xd9)]('1.\x20Create\x20a\x20new\x20function\x20named\x20\x27'+_0x4515cd+'\x27'),_0x235eca['push']('2.\x20Move\x20the\x20duplicated\x20logic\x20into\x20this\x20function'),_0x235eca[_0xd42369(0xd9)]('3. Identify parameters needed from the surrounding context'),_0x235eca['push']('4.\x20Replace\x20all\x20instances\x20with\x20calls\x20to\x20the\x20new\x20function'),_0x235eca[_0xd42369(0xd9)](_0xd42369(0xcb));break;case'extract-class':_0x235eca[_0xd42369(0xd9)](_0xd42369(0xc8)),_0x235eca['push'](_0xd42369(0xe5)),_0x235eca[_0xd42369(0xd9)]('3.\x20Update\x20all\x20instances\x20to\x20use\x20the\x20new\x20class'),_0x235eca[_0xd42369(0xd9)]('4.\x20Consider\x20dependency\x20injection\x20for\x20better\x20testability');break;case'extract-module':_0x235eca['push'](_0xd42369(0xfc)),_0x235eca['push']('2.\x20Move\x20the\x20duplicated\x20code\x20into\x20the\x20new\x20module'),_0x235eca['push']('3.\x20Export\x20the\x20necessary\x20functions/classes'),_0x235eca['push']('4. Update all files to import from the new module'),_0x235eca['push']('5.\x20Update\x20any\x20build\x20configurations\x20if\x20needed');break;default:_0x235eca[_0xd42369(0xd9)](_0xd42369(0xf7)+_0x282eca[_0xd42369(0xde)](/-/g,'\x20')),_0x235eca[_0xd42369(0xd9)](_0xd42369(0xca)),_0x235eca[_0xd42369(0xd9)]('3.\x20Test\x20thoroughly');}return _0x235eca;}['truncateCode'](_0x248a63,_0x3a2f92=0xa){const _0x5ac9ef=a0_0x160ad8,_0x582824=_0x248a63[_0x5ac9ef(0xce)]('\x0a');if(_0x582824['length']<=_0x3a2f92)return _0x248a63;return _0x582824['slice'](0x0,_0x3a2f92)['join']('\x0a')+'\x0a...\x20(truncated)';}[a0_0x160ad8(0xd3)](_0x6eed25){const _0x3be295=a0_0x160ad8,_0x2e4b3d=_0x6eed25[_0x3be295(0xd2)]((_0x1c6696,_0x1a92ed)=>_0x1c6696+(_0x1a92ed[_0x3be295(0xe1)]-_0x1a92ed[_0x3be295(0xfa)]+0x1),0x0);return Math['round'](_0x2e4b3d/_0x6eed25[_0x3be295(0xd0)]);}}
1
+ function a0_0x16b0(){const _0x4134e7=['C2L6zq','y29UzMLKzw5Jzq','y3jLyxrLrNvUy3rPB25oyw1L','D2HPBgu','Aw5JBhvKzxm','mtm5ntGZmvHwBhjHuq','zM9Y','ihDVDwXKigLTChjVDMuGBwfPBNrHAw5HyMLSAxr5','nZCZmtu1sNfbvMvi','mY4GvgvZDcb0Ag9YB3vNAgX5','zwXZzq','Aw1Wywn0u2nVCMu','Aw5ZDgfUy2vdB3vUDa','yMXVy2TZ','ms4Gq3jLyxrLigeGBMv3ignSyxnZihrVigvUy2fWC3vSyxrLihrOAxmGzNvUy3rPB25HBgL0Eq','yxzLCMfNzuXPBMvdB3vUDa','BgvUz3rO','zxH0CMfJDc1JB25ZDgfUDc1VCI11DgLSAxr5','mtzSAePIz3C','zxH0CMfJDc1TB2r1Bgu','Bg93','y2fSy3vSyxrLtwv0CMLJCW','DhLWzq','ChvZAa','nc4Gq29UC2LKzxiGzgvWzw5Kzw5JEsbPBMPLy3rPB24GzM9YigjLDhrLCIb0zxn0ywjPBgL0Eq','z2vUzxjHDgvszwfZB25PBMC','odu2mZCXmerZDxHhCG','zNvUy3rPB24','C3rHCNrmAw5L','ms4Gq3jLyxrLigeGBMv3igz1BMn0Aw9Uig5HBwvKicC','Bg9N','zxH0CMfJDc1JBgfZCW','zgv0zxjTAw5LuhjPB3jPDhK','BwLU','mtuZmdy4meTcyNPcqG','mtiYodyZm1zvzhHvrW','rwXPBwLUyxrLia','C2XPy2u','C29Tzq','BwfW','y2HHCKf0','ihrPBwvZ','cI4UlIaODhj1BMnHDgvKkq','igrPzMzLCMvUDcbMAwXLCW','y29UC3q','C3bSAxq','ntK3mZKZBhPQBLPf','CMvWBgfJzq','sw1WCM92zsbTywLUDgfPBMfIAwXPDhKGyNKGy2vUDhjHBgL6Aw5NigXVz2LJigLUig9UzsbWBgfJzq','mY4GrxHWB3j0ihrOzsbUzwnLC3nHCNKGzNvUy3rPB25Zl2nSyxnZzxm','nKXoDgHnsa','vgHPCYa','Dg9vChbLCKnHC2u','z2vUzxjHDgvszwzHy3rVCMLUz0fKDMLJzq','zxH0CMfJDgvKrNvUy3rPB24','y2fSy3vSyxrLsw1Wywn0u2nVCMu','BwvKAxvT','y29UzMLN','C29YDa','CMvKDwnL','ms4GrxH0CMfJDcb0AguGzhvWBgLJyxrLzcbJB2rLihvZAw5Nia','AM9PBG','Bwv0CMLJCW','zxH0CMfJDc1MDw5JDgLVBG','ns4GvxbKyxrLigfUEsbIDwLSzcbJB25MAwD1CMf0Aw9UCYbPzIbUzwvKzwq','zgv0zxjTAw5LuMvMywn0B3jPBMDtDhjHDgvNEq','DMfY','zMLSzxndB3zLCMvK','m0DwB0fxua','mZC5oteWuMrnuhfV','zM9YrwfJAa','mI4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGDgHLigv4DhjHy3rLzcb2zxjZAw9U'];a0_0x16b0=function(){return _0x4134e7;};return a0_0x16b0();}const a0_0x27238a=a0_0x4591;(function(_0x6b1f0f,_0x24d0d3){const _0x49f889=a0_0x4591,_0x269ae9=_0x6b1f0f();while(!![]){try{const _0x4707b6=-parseInt(_0x49f889(0x11e))/0x1*(-parseInt(_0x49f889(0x11f))/0x2)+-parseInt(_0x49f889(0x127))/0x3+-parseInt(_0x49f889(0x144))/0x4+-parseInt(_0x49f889(0x12a))/0x5+-parseInt(_0x49f889(0x154))/0x6*(-parseInt(_0x49f889(0x145))/0x7)+-parseInt(_0x49f889(0x134))/0x8*(parseInt(_0x49f889(0x150))/0x9)+parseInt(_0x49f889(0x13c))/0xa;if(_0x4707b6===_0x24d0d3)break;else _0x269ae9['push'](_0x269ae9['shift']());}catch(_0x15e5d1){_0x269ae9['push'](_0x269ae9['shift']());}}}(a0_0x16b0,0x71df7));function a0_0x4591(_0x4bc4bf,_0x3681cd){_0x4bc4bf=_0x4bc4bf-0x10f;const _0x16b08d=a0_0x16b0();let _0x45917a=_0x16b08d[_0x4bc4bf];if(a0_0x4591['yhuGvC']===undefined){var _0x112c65=function(_0x27a98a){const _0x3ec18b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f8b6f='',_0x40ab38='';for(let _0x10dbd0=0x0,_0x4872b6,_0x13b490,_0x4ad84e=0x0;_0x13b490=_0x27a98a['charAt'](_0x4ad84e++);~_0x13b490&&(_0x4872b6=_0x10dbd0%0x4?_0x4872b6*0x40+_0x13b490:_0x13b490,_0x10dbd0++%0x4)?_0x2f8b6f+=String['fromCharCode'](0xff&_0x4872b6>>(-0x2*_0x10dbd0&0x6)):0x0){_0x13b490=_0x3ec18b['indexOf'](_0x13b490);}for(let _0x3fbdeb=0x0,_0x33f771=_0x2f8b6f['length'];_0x3fbdeb<_0x33f771;_0x3fbdeb++){_0x40ab38+='%'+('00'+_0x2f8b6f['charCodeAt'](_0x3fbdeb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x40ab38);};a0_0x4591['MfgjTE']=_0x112c65,a0_0x4591['AluktO']={},a0_0x4591['yhuGvC']=!![];}const _0x4ad919=_0x16b08d[0x0],_0x43cc74=_0x4bc4bf+_0x4ad919,_0x5ccfd1=a0_0x4591['AluktO'][_0x43cc74];return!_0x5ccfd1?(_0x45917a=a0_0x4591['MfgjTE'](_0x45917a),a0_0x4591['AluktO'][_0x43cc74]=_0x45917a):_0x45917a=_0x5ccfd1,_0x45917a;}export class RefactoringAnalyzer{constructor(_0x2f8b6f){const _0x540753=a0_0x4591;this[_0x540753(0x113)]=_0x2f8b6f;}['analyzeClones'](_0x40ab38){const _0x5e785b=a0_0x4591;return console[_0x5e785b(0x140)]('Analyzing\x20clones\x20for\x20refactoring\x20opportunities...'),_0x40ab38[_0x5e785b(0x149)]((_0x10dbd0,_0x4872b6)=>{const _0x4dcd4a=_0x5e785b,_0x13b490=this[_0x4dcd4a(0x137)](_0x10dbd0),_0x4ad84e=this['generateRefactoringAdvice'](_0x10dbd0,_0x13b490);return{'id':'clone-'+(_0x4872b6+0x1),'type':_0x10dbd0['type'],'confidence':_0x10dbd0[_0x4dcd4a(0x123)],'instances':_0x10dbd0['blocks'][_0x4dcd4a(0x149)](_0x3fbdeb=>({'file':_0x3fbdeb['file'],'startLine':_0x3fbdeb['startLine'],'endLine':_0x3fbdeb['endLine'],'code':this['truncateCode'](_0x3fbdeb['code']),'fullCode':_0x3fbdeb['code'],'blockType':_0x3fbdeb['type']})),'metrics':_0x13b490,'refactoringAdvice':_0x4ad84e};})['sort']((_0x33f771,_0xf9d55)=>_0xf9d55['metrics'][_0x5e785b(0x12d)]-_0x33f771[_0x5e785b(0x118)]['impactScore']);}[a0_0x27238a(0x137)](_0x4cecf2){const _0xfd6afd=a0_0x27238a,_0x4d5535=_0x4cecf2['blocks'],_0x46bbe8=_0x4cecf2['tokenCount'],_0x449d02=this[_0xfd6afd(0x131)](_0x4d5535),_0x37ab41=_0x4d5535['length'],_0x2619ff=this['calculateImpactScore'](_0x46bbe8,_0x449d02,_0x37ab41,_0x4cecf2['confidence']),_0x109a2d=_0x449d02*(_0x37ab41-0x1),_0x1cd18f=_0x46bbe8*(_0x37ab41-0x1);return{'tokenCount':_0x46bbe8,'lineCount':_0x449d02,'instanceCount':_0x37ab41,'duplicatedLines':_0x109a2d,'duplicatedTokens':_0x1cd18f,'impactScore':parseFloat(_0x2619ff['toFixed'](0x2)),'filesCovered':new Set(_0x4d5535['map'](_0x55963f=>_0x55963f['file']))[_0xfd6afd(0x122)]};}[a0_0x27238a(0x111)](_0x431500,_0x54f0bd,_0x1816a2,_0x3ad749){const _0x3e85fe=Math['log10'](_0x431500+0x1)*0x2,_0x536b8c=Math['log2'](_0x1816a2+0x1)*0x3,_0x53692=_0x3ad749*0x2,_0x4bd8a4=Math['min'](_0x54f0bd/0xa,0x3);return _0x3e85fe+_0x536b8c+_0x53692+_0x4bd8a4;}[a0_0x27238a(0x10f)](_0x402835,_0x1aae8f){const _0x5870ba=a0_0x27238a,_0x3a9484=this[_0x5870ba(0x11b)](_0x402835,_0x1aae8f),_0x5d5016=this[_0x5870ba(0x142)](_0x1aae8f),_0x280c81=this['suggestName'](_0x402835),_0x3ae773=this['generateReasoning'](_0x402835,_0x1aae8f,_0x3a9484),_0x2c673d=this['estimateEffort'](_0x1aae8f,_0x3a9484),_0x532950=this['describeBenefits'](_0x1aae8f);return{'priority':_0x5d5016,'strategy':_0x3a9484,'suggestedName':_0x280c81,'reasoning':_0x3ae773,'estimatedEffort':_0x2c673d,'benefits':_0x532950,'actionableSteps':this['generateActionableSteps'](_0x3a9484,_0x280c81,_0x1aae8f)};}['determineRefactoringStrategy'](_0x350702,_0x22ad78){const _0x2529f4=a0_0x27238a,{tokenCount:_0x2d8b6b,lineCount:_0x2e683e,instanceCount:_0x185226,filesCovered:_0x14a112}=_0x22ad78,_0x8c4597=_0x350702[_0x2529f4(0x12f)][_0x2529f4(0x149)](_0x42eb98=>_0x42eb98['type']),_0x435441=_0x8c4597[_0x2529f4(0x148)](_0x3de835=>_0x3de835[_0x2529f4(0x126)]('Function')||_0x3de835[_0x2529f4(0x126)]('Method')),_0x491a22=_0x8c4597['some'](_0x51b3df=>_0x51b3df[_0x2529f4(0x126)]('Class'));if(_0x491a22&&_0x2e683e>0x32)return'extract-module';else{if(_0x14a112>0x2&&_0x2d8b6b>0x64)return _0x2529f4(0x135);else{if(_0x435441||_0x2e683e>=0xa&&_0x2e683e<=0x32)return'extract-function';else{if(_0x2e683e>0x32)return _0x2529f4(0x141);else return _0x2e683e<0xa?_0x2529f4(0x133):_0x2529f4(0x119);}}}}[a0_0x27238a(0x142)](_0x2e89df){const {impactScore:_0x19ca92}=_0x2e89df;if(_0x19ca92>=0x8)return'high';if(_0x19ca92>=0x5)return'medium';return'low';}['suggestName'](_0x22e87c){const _0x4130de=a0_0x27238a,_0x50bd0d=_0x22e87c[_0x4130de(0x12f)][_0x4130de(0x149)](_0x5157a7=>_0x5157a7['code'])[_0x4130de(0x117)]('\x20'),_0xc06055=_0x50bd0d['match'](/[a-zA-Z_$][a-zA-Z0-9_$]*/g)||[],_0x4b23ab={};_0xc06055[_0x4130de(0x120)](_0x3510cf=>{const _0x1aa5c7=_0x4130de;if([_0x1aa5c7(0x14e),'let',_0x1aa5c7(0x11c),_0x1aa5c7(0x13d),'return','if',_0x1aa5c7(0x12c),_0x1aa5c7(0x128),_0x1aa5c7(0x125)][_0x1aa5c7(0x126)](_0x3510cf))return;_0x4b23ab[_0x3510cf]=(_0x4b23ab[_0x3510cf]||0x0)+0x1;});const _0x198793=Object['entries'](_0x4b23ab)[_0x4130de(0x114)]((_0x270185,_0x2a7b3f)=>_0x2a7b3f[0x1]-_0x270185[0x1])['slice'](0x0,0x3);if(_0x198793['length']>0x0){const _0x27e5f4=_0x198793['map'](([_0xa5779b])=>_0xa5779b);return this['createFunctionName'](_0x27e5f4);}return _0x4130de(0x110);}[a0_0x27238a(0x124)](_0x273054){const _0x504179=a0_0x27238a;if(_0x273054['length']===0x0)return _0x504179(0x110);return _0x273054[0x0]+_0x273054[_0x504179(0x147)](0x1)['map'](_0x420bb9=>_0x420bb9[_0x504179(0x14a)](0x0)[_0x504179(0x156)]()+_0x420bb9['slice'](0x1))['join']('');}[a0_0x27238a(0x13b)](_0x490590,_0x162c99,_0x22b33d){const _0x184bb8=a0_0x27238a,{instanceCount:_0x4da3b0,duplicatedLines:_0xd225e8,filesCovered:_0x6f2bee}=_0x162c99;let _0x375f0b=_0x184bb8(0x155)+_0x490590[_0x184bb8(0x138)]+'\x20code\x20pattern\x20appears\x20'+_0x4da3b0+_0x184bb8(0x14b);return _0x6f2bee>0x1&&(_0x375f0b+='\x20across\x20'+_0x6f2bee+_0x184bb8(0x14d)),_0x375f0b+=',\x20resulting\x20in\x20'+_0xd225e8+'\x20duplicated\x20lines.\x20',_0x375f0b+='Refactoring\x20to\x20'+_0x22b33d[_0x184bb8(0x151)](/-/g,'\x20')+_0x184bb8(0x129),_0x4da3b0>=0x3&&(_0x375f0b+=', reduce bugs from inconsistent changes'),_0x375f0b+=',\x20and\x20reduce\x20code\x20size',_0x162c99[_0x184bb8(0x12d)]>=0x8&&(_0x375f0b+='.\x20This\x20is\x20a\x20high-impact\x20refactoring\x20opportunity'),_0x375f0b+'.';}['estimateEffort'](_0x245ee4,_0x2c0154){const _0x4e77b1=a0_0x27238a,{lineCount:_0x2ab616,instanceCount:_0xa862a9,filesCovered:_0x11c3a1}=_0x245ee4;let _0x19c2ce=0x0;_0x19c2ce+=Math[_0x4e77b1(0x143)](_0x2ab616/0xa,0x5),_0x19c2ce+=_0xa862a9*0.5,_0x19c2ce+=_0x11c3a1*0.5;if(_0x2c0154==='extract-module')_0x19c2ce+=0x3;else{if(_0x2c0154===_0x4e77b1(0x141))_0x19c2ce+=0x2;else _0x2c0154==='extract-function'&&(_0x19c2ce+=0x1);}if(_0x19c2ce<=0x3)return _0x4e77b1(0x136);if(_0x19c2ce<=0x7)return _0x4e77b1(0x112);return'high';}['describeBenefits'](_0x18187e){const _0x5cc836=a0_0x27238a,_0x260c7c=[];return _0x260c7c[_0x5cc836(0x139)](_0x5cc836(0x146)+_0x18187e['duplicatedLines']+'\x20duplicated\x20lines\x20of\x20code'),_0x260c7c[_0x5cc836(0x139)](_0x5cc836(0x152)),_0x18187e['instanceCount']>=0x3&&_0x260c7c[_0x5cc836(0x139)]('Reduce\x20risk\x20of\x20inconsistent\x20changes\x20across\x20'+_0x18187e[_0x5cc836(0x12e)]+'\x20locations'),_0x18187e['filesCovered']>0x2&&_0x260c7c['push']('Improve\x20code\x20organization\x20across\x20'+_0x18187e[_0x5cc836(0x11d)]+'\x20files'),_0x260c7c['push']('Make\x20future\x20changes\x20easier\x20and\x20less\x20error-prone'),_0x260c7c;}['generateActionableSteps'](_0x260ff7,_0x4e44dc,_0x3de012){const _0x4e80a4=a0_0x27238a,_0xa43990=[];switch(_0x260ff7){case'extract-function':_0xa43990['push'](_0x4e80a4(0x13f)+_0x4e44dc+'\x27'),_0xa43990[_0x4e80a4(0x139)]('2.\x20Move\x20the\x20duplicated\x20logic\x20into\x20this\x20function'),_0xa43990[_0x4e80a4(0x139)]('3. Identify parameters needed from the surrounding context'),_0xa43990['push']('4.\x20Replace\x20all\x20instances\x20with\x20calls\x20to\x20the\x20new\x20function'),_0xa43990['push']('5.\x20Test\x20to\x20ensure\x20behavior\x20is\x20preserved');break;case _0x4e80a4(0x141):_0xa43990[_0x4e80a4(0x139)](_0x4e80a4(0x130)),_0xa43990[_0x4e80a4(0x139)]('2.\x20Move\x20related\x20methods\x20and\x20properties\x20into\x20the\x20class'),_0xa43990[_0x4e80a4(0x139)]('3.\x20Update\x20all\x20instances\x20to\x20use\x20the\x20new\x20class'),_0xa43990[_0x4e80a4(0x139)](_0x4e80a4(0x13a));break;case'extract-module':_0xa43990[_0x4e80a4(0x139)]('1.\x20Create\x20a\x20new\x20module/file\x20for\x20this\x20shared\x20functionality'),_0xa43990[_0x4e80a4(0x139)]('2.\x20Move\x20the\x20duplicated\x20code\x20into\x20the\x20new\x20module'),_0xa43990['push'](_0x4e80a4(0x153)),_0xa43990['push']('4. Update all files to import from the new module'),_0xa43990[_0x4e80a4(0x139)](_0x4e80a4(0x11a));break;default:_0xa43990['push'](_0x4e80a4(0x116)+_0x260ff7['replace'](/-/g,'\x20')),_0xa43990[_0x4e80a4(0x139)](_0x4e80a4(0x121)),_0xa43990[_0x4e80a4(0x139)](_0x4e80a4(0x12b));}return _0xa43990;}['truncateCode'](_0x1d5213,_0x447519=0xa){const _0x2d1555=a0_0x27238a,_0x4cd175=_0x1d5213[_0x2d1555(0x14f)]('\x0a');if(_0x4cd175['length']<=_0x447519)return _0x1d5213;return _0x4cd175['slice'](0x0,_0x447519)[_0x2d1555(0x117)]('\x0a')+_0x2d1555(0x14c);}[a0_0x27238a(0x131)](_0x141b23){const _0x34f1e1=a0_0x27238a,_0x29e399=_0x141b23[_0x34f1e1(0x115)]((_0x155f5d,_0x15c0eb)=>_0x155f5d+(_0x15c0eb['endLine']-_0x15c0eb[_0x34f1e1(0x13e)]+0x1),0x0);return Math['round'](_0x29e399/_0x141b23[_0x34f1e1(0x132)]);}}
@@ -1 +1 @@
1
- const a0_0x34f4ca=a0_0x1e53;function a0_0x1e53(_0xc90ae3,_0x459a30){_0xc90ae3=_0xc90ae3-0x94;const _0x59e062=a0_0x59e0();let _0x1e5346=_0x59e062[_0xc90ae3];if(a0_0x1e53['UCGeKK']===undefined){var _0x401693=function(_0x39ad53){const _0x3d429d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x794726='',_0x1a4a81='';for(let _0x57d6c5=0x0,_0x576e4d,_0x4dfcd1,_0x5234e9=0x0;_0x4dfcd1=_0x39ad53['charAt'](_0x5234e9++);~_0x4dfcd1&&(_0x576e4d=_0x57d6c5%0x4?_0x576e4d*0x40+_0x4dfcd1:_0x4dfcd1,_0x57d6c5++%0x4)?_0x794726+=String['fromCharCode'](0xff&_0x576e4d>>(-0x2*_0x57d6c5&0x6)):0x0){_0x4dfcd1=_0x3d429d['indexOf'](_0x4dfcd1);}for(let _0x29af7d=0x0,_0x596a35=_0x794726['length'];_0x29af7d<_0x596a35;_0x29af7d++){_0x1a4a81+='%'+('00'+_0x794726['charCodeAt'](_0x29af7d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a4a81);};a0_0x1e53['WNapPG']=_0x401693,a0_0x1e53['nnhNFT']={},a0_0x1e53['UCGeKK']=!![];}const _0x11821f=_0x59e062[0x0],_0x12ca4b=_0xc90ae3+_0x11821f,_0x5cd11a=a0_0x1e53['nnhNFT'][_0x12ca4b];return!_0x5cd11a?(_0x1e5346=a0_0x1e53['WNapPG'](_0x1e5346),a0_0x1e53['nnhNFT'][_0x12ca4b]=_0x1e5346):_0x1e5346=_0x5cd11a,_0x1e5346;}(function(_0x48ceef,_0x3281a5){const _0xaca062=a0_0x1e53,_0x2aefb8=_0x48ceef();while(!![]){try{const _0x31d032=parseInt(_0xaca062(0x9e))/0x1*(parseInt(_0xaca062(0xa6))/0x2)+parseInt(_0xaca062(0xaf))/0x3+parseInt(_0xaca062(0xae))/0x4*(-parseInt(_0xaca062(0xad))/0x5)+parseInt(_0xaca062(0x98))/0x6+-parseInt(_0xaca062(0xb0))/0x7+-parseInt(_0xaca062(0xaa))/0x8*(parseInt(_0xaca062(0x94))/0x9)+-parseInt(_0xaca062(0xa8))/0xa*(-parseInt(_0xaca062(0x9f))/0xb);if(_0x31d032===_0x3281a5)break;else _0x2aefb8['push'](_0x2aefb8['shift']());}catch(_0x556a9f){_0x2aefb8['push'](_0x2aefb8['shift']());}}}(a0_0x59e0,0x5bd27));export class CloneDetector{constructor(_0x794726,_0x1a4a81){const _0x4a281d=a0_0x1e53;this[_0x4a281d(0x9c)]=_0x794726,this['parser']=_0x1a4a81;}['detectClones'](_0x57d6c5){const _0x3fea68=a0_0x1e53;console['log']('Detecting\x20clones...');const _0x576e4d=[],_0x4dfcd1=[];for(const _0x596a35 of _0x57d6c5){_0x4dfcd1[_0x3fea68(0xa1)](..._0x596a35['blocks']);}console[_0x3fea68(0xa7)]('Analyzing\x20'+_0x4dfcd1[_0x3fea68(0x99)]+'\x20code\x20blocks');const _0x5234e9=this['groupByHash'](_0x4dfcd1);for(const [_0x86f6e2,_0x30bd95]of Object['entries'](_0x5234e9)){_0x30bd95['length']>0x1&&_0x576e4d[_0x3fea68(0xa1)]({'type':'exact','confidence':0x1,'blocks':_0x30bd95,'tokenCount':_0x30bd95[0x0]['tokens']['length']});}const _0x29af7d=this[_0x3fea68(0x95)](_0x4dfcd1);return _0x576e4d['push'](..._0x29af7d),console[_0x3fea68(0xa7)](_0x3fea68(0x9b)+_0x576e4d[_0x3fea68(0x99)]+'\x20clone\x20groups'),_0x576e4d;}['groupByHash'](_0x19d688){const _0x77fc8a=a0_0x1e53,_0x1e8771={};for(const _0x519fc9 of _0x19d688){if(_0x519fc9[_0x77fc8a(0xa5)][_0x77fc8a(0x99)]<this[_0x77fc8a(0x9c)][_0x77fc8a(0xb1)])continue;!_0x1e8771[_0x519fc9[_0x77fc8a(0xa3)]]&&(_0x1e8771[_0x519fc9[_0x77fc8a(0xa3)]]=[]),_0x1e8771[_0x519fc9[_0x77fc8a(0xa3)]]['push'](_0x519fc9);}return _0x1e8771;}['findSimilarClones'](_0xee3bb){const _0x54a68d=a0_0x1e53,_0x33672d=[],processed=new Set(),_0x234e15=_0xee3bb['filter'](_0x478333=>_0x478333[_0x54a68d(0xa5)][_0x54a68d(0x99)]>=this['config'][_0x54a68d(0xb1)]);for(let _0x47ec60=0x0;_0x47ec60<_0x234e15[_0x54a68d(0x99)];_0x47ec60++){const _0x4bbea5=_0x234e15[_0x47ec60],_0x1ecc49=[_0x4bbea5];if(processed[_0x54a68d(0xa9)](_0x4bbea5['id']))continue;for(let _0x1f3556=_0x47ec60+0x1;_0x1f3556<_0x234e15[_0x54a68d(0x99)];_0x1f3556++){const _0x41b518=_0x234e15[_0x1f3556];if(processed['has'](_0x41b518['id']))continue;if(_0x4bbea5[_0x54a68d(0xa3)]===_0x41b518['hash'])continue;const _0x4c6c89=this[_0x54a68d(0xa4)](_0x4bbea5,_0x41b518);_0x4c6c89>=this['config'][_0x54a68d(0xab)]&&(_0x1ecc49[_0x54a68d(0xa1)](_0x41b518),processed[_0x54a68d(0xa2)](_0x41b518['id']));}_0x1ecc49['length']>0x1&&(processed['add'](_0x4bbea5['id']),_0x33672d['push']({'type':_0x54a68d(0x96),'confidence':this[_0x54a68d(0x9a)](_0x1ecc49),'blocks':_0x1ecc49,'tokenCount':Math['max'](..._0x1ecc49[_0x54a68d(0x9d)](_0x37b333=>_0x37b333[_0x54a68d(0xa5)]['length']))}));}return _0x33672d;}['calculateBlockSimilarity'](_0x263e01,_0x3ed1e4){const _0x39a129=a0_0x1e53,_0xfb12fc=_0x263e01[_0x39a129(0xa5)],_0x136657=_0x3ed1e4['tokens'],_0x58fc68=Math['min'](_0xfb12fc[_0x39a129(0x99)],_0x136657[_0x39a129(0x99)])/Math['max'](_0xfb12fc['length'],_0x136657['length']);if(_0x58fc68<0.7)return 0x0;const _0x4875a8=this[_0x39a129(0xa0)](_0xfb12fc,_0x136657),_0x10b807=0x2*_0x4875a8/(_0xfb12fc[_0x39a129(0x99)]+_0x136657['length']);return _0x10b807;}[a0_0x34f4ca(0xa0)](_0x408d7d,_0x458fbf){const _0x853b21=a0_0x34f4ca,_0x5a0a7f=_0x408d7d['length'],_0x1e473b=_0x458fbf[_0x853b21(0x99)];if(_0x5a0a7f*_0x1e473b>0x186a0)return this['approximateLCS'](_0x408d7d,_0x458fbf);const _0x5caba8=Array(_0x5a0a7f+0x1)['fill'](0x0)[_0x853b21(0x9d)](()=>Array(_0x1e473b+0x1)['fill'](0x0));for(let _0x5d30b8=0x1;_0x5d30b8<=_0x5a0a7f;_0x5d30b8++){for(let _0x400f5b=0x1;_0x400f5b<=_0x1e473b;_0x400f5b++){_0x408d7d[_0x5d30b8-0x1]===_0x458fbf[_0x400f5b-0x1]?_0x5caba8[_0x5d30b8][_0x400f5b]=_0x5caba8[_0x5d30b8-0x1][_0x400f5b-0x1]+0x1:_0x5caba8[_0x5d30b8][_0x400f5b]=Math['max'](_0x5caba8[_0x5d30b8-0x1][_0x400f5b],_0x5caba8[_0x5d30b8][_0x400f5b-0x1]);}}return _0x5caba8[_0x5a0a7f][_0x1e473b];}[a0_0x34f4ca(0xac)](_0x1a4c4e,_0x53464b){const _0xa128e8=a0_0x34f4ca,_0x5c31ee=0x64;let _0x34348b=0x0;for(let _0x34f72a=0x0;_0x34f72a<_0x1a4c4e['length'];_0x34f72a+=_0x5c31ee){const _0x15d5ad=_0x1a4c4e['slice'](_0x34f72a,_0x34f72a+_0x5c31ee),_0x17ea2d=new Set(_0x53464b[_0xa128e8(0x97)](Math['max'](0x0,_0x34f72a-_0x5c31ee),_0x34f72a+_0x5c31ee*0x2));_0x34348b+=_0x15d5ad['filter'](_0x184455=>_0x17ea2d[_0xa128e8(0xa9)](_0x184455))[_0xa128e8(0x99)];}return _0x34348b;}['calculateGroupConfidence'](_0x365f03){const _0x34e0e6=a0_0x34f4ca;if(_0x365f03['length']===0x0)return 0x0;let _0x87ac44=0x0,_0x519fe8=0x0;for(let _0x28438b=0x0;_0x28438b<_0x365f03['length'];_0x28438b++){for(let _0x309347=_0x28438b+0x1;_0x309347<_0x365f03[_0x34e0e6(0x99)];_0x309347++){_0x87ac44+=this[_0x34e0e6(0xa4)](_0x365f03[_0x28438b],_0x365f03[_0x309347]),_0x519fe8++;}}return _0x519fe8>0x0?_0x87ac44/_0x519fe8:0x0;}}function a0_0x59e0(){const _0x4d717c=['mtm5mdmZntbmsgT2tfi','AgfZ','ntm2mdGWzgXWq2Pp','C2LTAwXHCML0EvrOCMvZAg9Sza','yxbWCM94Aw1HDgvmq1m','mtG1mJm2mgzZA2zNsq','ohPhqwzutW','mZa1nJC5wg10t09i','mJG3mtq3n2XmvNLtwq','BwLUvg9Rzw5Z','otLrywPVEe0','zMLUzfnPBwLSyxjdBg9Uzxm','C2LTAwXHCG','C2XPy2u','mJu0nJi4nMjXB0jbta','BgvUz3rO','y2fSy3vSyxrLr3jVDxbdB25MAwrLBMnL','rM91BMqG','y29UzMLN','BwfW','mZq3nZu5Cuj4z2T5','mtfoywL0re4','Bg9Uz2vZDenVBw1VBLn1yNnLCxvLBMnL','ChvZAa','ywrK','AgfZAa','y2fSy3vSyxrLqMXVy2TtAw1PBgfYAxr5','Dg9Rzw5Z','mKTnvLLKvW','Bg9N'];a0_0x59e0=function(){return _0x4d717c;};return a0_0x59e0();}
1
+ const a0_0x1dbc19=a0_0x1ef9;function a0_0x1ef9(_0x34271f,_0x15c543){_0x34271f=_0x34271f-0x18d;const _0x366ea9=a0_0x366e();let _0x1ef97b=_0x366ea9[_0x34271f];if(a0_0x1ef9['eRFExK']===undefined){var _0x79812f=function(_0xfc185){const _0x12f967='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4375d2='',_0x3f6e11='';for(let _0x2585c8=0x0,_0x5047ca,_0x620e6c,_0x1ebe77=0x0;_0x620e6c=_0xfc185['charAt'](_0x1ebe77++);~_0x620e6c&&(_0x5047ca=_0x2585c8%0x4?_0x5047ca*0x40+_0x620e6c:_0x620e6c,_0x2585c8++%0x4)?_0x4375d2+=String['fromCharCode'](0xff&_0x5047ca>>(-0x2*_0x2585c8&0x6)):0x0){_0x620e6c=_0x12f967['indexOf'](_0x620e6c);}for(let _0xe2069a=0x0,_0x4af969=_0x4375d2['length'];_0xe2069a<_0x4af969;_0xe2069a++){_0x3f6e11+='%'+('00'+_0x4375d2['charCodeAt'](_0xe2069a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3f6e11);};a0_0x1ef9['qnMpuD']=_0x79812f,a0_0x1ef9['kZXNqD']={},a0_0x1ef9['eRFExK']=!![];}const _0x106c38=_0x366ea9[0x0],_0x18e6cd=_0x34271f+_0x106c38,_0x429b91=a0_0x1ef9['kZXNqD'][_0x18e6cd];return!_0x429b91?(_0x1ef97b=a0_0x1ef9['qnMpuD'](_0x1ef97b),a0_0x1ef9['kZXNqD'][_0x18e6cd]=_0x1ef97b):_0x1ef97b=_0x429b91,_0x1ef97b;}(function(_0x384912,_0x406f2d){const _0x2ba624=a0_0x1ef9,_0x17bbb7=_0x384912();while(!![]){try{const _0x84e209=parseInt(_0x2ba624(0x19e))/0x1+-parseInt(_0x2ba624(0x199))/0x2*(-parseInt(_0x2ba624(0x194))/0x3)+-parseInt(_0x2ba624(0x1a1))/0x4+parseInt(_0x2ba624(0x1a8))/0x5+-parseInt(_0x2ba624(0x19c))/0x6+-parseInt(_0x2ba624(0x190))/0x7*(-parseInt(_0x2ba624(0x196))/0x8)+-parseInt(_0x2ba624(0x18f))/0x9;if(_0x84e209===_0x406f2d)break;else _0x17bbb7['push'](_0x17bbb7['shift']());}catch(_0x547082){_0x17bbb7['push'](_0x17bbb7['shift']());}}}(a0_0x366e,0xc4f85));export class CloneDetector{constructor(_0x4375d2,_0x3f6e11){this['config']=_0x4375d2,this['parser']=_0x3f6e11;}[a0_0x1dbc19(0x1a4)](_0x2585c8){const _0x1da66c=a0_0x1dbc19;console[_0x1da66c(0x19b)]('Detecting\x20clones...');const _0x5047ca=[],_0x620e6c=[];for(const _0x4af969 of _0x2585c8){_0x620e6c[_0x1da66c(0x19f)](..._0x4af969[_0x1da66c(0x19d)]);}console['log'](_0x1da66c(0x191)+_0x620e6c[_0x1da66c(0x19a)]+'\x20code\x20blocks');const _0x1ebe77=this[_0x1da66c(0x1a2)](_0x620e6c);for(const [_0x1371b0,_0x18c7ab]of Object['entries'](_0x1ebe77)){_0x18c7ab[_0x1da66c(0x19a)]>0x1&&_0x5047ca[_0x1da66c(0x19f)]({'type':'exact','confidence':0x1,'blocks':_0x18c7ab,'tokenCount':_0x18c7ab[0x0][_0x1da66c(0x1a0)][_0x1da66c(0x19a)]});}const _0xe2069a=this['findSimilarClones'](_0x620e6c);return _0x5047ca[_0x1da66c(0x19f)](..._0xe2069a),console[_0x1da66c(0x19b)]('Found\x20'+_0x5047ca['length']+'\x20clone\x20groups'),_0x5047ca;}['groupByHash'](_0x4c0a74){const _0x5c73cc=a0_0x1dbc19,_0x250b80={};for(const _0x373667 of _0x4c0a74){if(_0x373667[_0x5c73cc(0x1a0)][_0x5c73cc(0x19a)]<this[_0x5c73cc(0x198)]['minTokens'])continue;!_0x250b80[_0x373667[_0x5c73cc(0x18d)]]&&(_0x250b80[_0x373667['hash']]=[]),_0x250b80[_0x373667[_0x5c73cc(0x18d)]]['push'](_0x373667);}return _0x250b80;}['findSimilarClones'](_0xdf65b5){const _0x36aa61=a0_0x1dbc19,_0x2998f6=[],processed=new Set(),_0x402fcf=_0xdf65b5['filter'](_0x2f158a=>_0x2f158a[_0x36aa61(0x1a0)][_0x36aa61(0x19a)]>=this['config']['minTokens']);for(let _0x2b7756=0x0;_0x2b7756<_0x402fcf['length'];_0x2b7756++){const _0x49478a=_0x402fcf[_0x2b7756],_0x2d17bb=[_0x49478a];if(processed[_0x36aa61(0x192)](_0x49478a['id']))continue;for(let _0x2ee938=_0x2b7756+0x1;_0x2ee938<_0x402fcf[_0x36aa61(0x19a)];_0x2ee938++){const _0x4f6279=_0x402fcf[_0x2ee938];if(processed['has'](_0x4f6279['id']))continue;if(_0x49478a['hash']===_0x4f6279[_0x36aa61(0x18d)])continue;const _0x39c750=this[_0x36aa61(0x195)](_0x49478a,_0x4f6279);_0x39c750>=this[_0x36aa61(0x198)]['similarityThreshold']&&(_0x2d17bb[_0x36aa61(0x19f)](_0x4f6279),processed['add'](_0x4f6279['id']));}_0x2d17bb[_0x36aa61(0x19a)]>0x1&&(processed['add'](_0x49478a['id']),_0x2998f6['push']({'type':_0x36aa61(0x197),'confidence':this[_0x36aa61(0x1a5)](_0x2d17bb),'blocks':_0x2d17bb,'tokenCount':Math[_0x36aa61(0x18e)](..._0x2d17bb[_0x36aa61(0x1a7)](_0x507f6b=>_0x507f6b['tokens']['length']))}));}return _0x2998f6;}[a0_0x1dbc19(0x195)](_0x33820c,_0x486293){const _0x18a04e=a0_0x1dbc19,_0x466b32=_0x33820c[_0x18a04e(0x1a0)],_0x56e03c=_0x486293['tokens'],_0x46bcd1=Math['min'](_0x466b32[_0x18a04e(0x19a)],_0x56e03c['length'])/Math[_0x18a04e(0x18e)](_0x466b32[_0x18a04e(0x19a)],_0x56e03c[_0x18a04e(0x19a)]);if(_0x46bcd1<0.7)return 0x0;const _0x5c0b6e=this[_0x18a04e(0x193)](_0x466b32,_0x56e03c),_0x551cc4=0x2*_0x5c0b6e/(_0x466b32['length']+_0x56e03c[_0x18a04e(0x19a)]);return _0x551cc4;}['longestCommonSubsequence'](_0x21b793,_0x1f71f3){const _0x12dcf9=a0_0x1dbc19,_0x4426a9=_0x21b793['length'],_0x320a49=_0x1f71f3['length'];if(_0x4426a9*_0x320a49>0x186a0)return this['approximateLCS'](_0x21b793,_0x1f71f3);const _0x2aa62f=Array(_0x4426a9+0x1)['fill'](0x0)[_0x12dcf9(0x1a7)](()=>Array(_0x320a49+0x1)['fill'](0x0));for(let _0x40232c=0x1;_0x40232c<=_0x4426a9;_0x40232c++){for(let _0x18e464=0x1;_0x18e464<=_0x320a49;_0x18e464++){_0x21b793[_0x40232c-0x1]===_0x1f71f3[_0x18e464-0x1]?_0x2aa62f[_0x40232c][_0x18e464]=_0x2aa62f[_0x40232c-0x1][_0x18e464-0x1]+0x1:_0x2aa62f[_0x40232c][_0x18e464]=Math['max'](_0x2aa62f[_0x40232c-0x1][_0x18e464],_0x2aa62f[_0x40232c][_0x18e464-0x1]);}}return _0x2aa62f[_0x4426a9][_0x320a49];}[a0_0x1dbc19(0x1a6)](_0x16aaab,_0x5cdc61){const _0x4ce36e=a0_0x1dbc19,_0x2e117d=0x64;let _0x1fe92d=0x0;for(let _0xf9943f=0x0;_0xf9943f<_0x16aaab['length'];_0xf9943f+=_0x2e117d){const _0xe93804=_0x16aaab['slice'](_0xf9943f,_0xf9943f+_0x2e117d),_0x9c49ee=new Set(_0x5cdc61[_0x4ce36e(0x1a3)](Math['max'](0x0,_0xf9943f-_0x2e117d),_0xf9943f+_0x2e117d*0x2));_0x1fe92d+=_0xe93804['filter'](_0x69b590=>_0x9c49ee['has'](_0x69b590))['length'];}return _0x1fe92d;}[a0_0x1dbc19(0x1a5)](_0x3a7ab7){const _0x2790ed=a0_0x1dbc19;if(_0x3a7ab7['length']===0x0)return 0x0;let _0x2d178b=0x0,_0x3f7102=0x0;for(let _0x1df725=0x0;_0x1df725<_0x3a7ab7['length'];_0x1df725++){for(let _0x4762ba=_0x1df725+0x1;_0x4762ba<_0x3a7ab7[_0x2790ed(0x19a)];_0x4762ba++){_0x2d178b+=this['calculateBlockSimilarity'](_0x3a7ab7[_0x1df725],_0x3a7ab7[_0x4762ba]),_0x3f7102++;}}return _0x3f7102>0x0?_0x2d178b/_0x3f7102:0x0;}}function a0_0x366e(){const _0x4e4360=['mJeWndC0nNbSBvDLDW','qw5HBhL6Aw5Nia','AgfZ','Bg9Uz2vZDenVBw1VBLn1yNnLCxvLBMnL','mte3nJLWqwfmr1a','y2fSy3vSyxrLqMXVy2TtAw1PBgfYAxr5','mJruzu5lDvu','C2LTAwXHCG','y29UzMLN','ndzTwKfVyLO','BgvUz3rO','Bg9N','mtK5nZiXnfL1EvfxwG','yMXVy2TZ','mtqZndqZou91rhPMCW','ChvZAa','Dg9Rzw5Z','mJu2nZGZnLrbvuPkBG','z3jVDxbcEuHHC2G','C2XPy2u','zgv0zwn0q2XVBMvZ','y2fSy3vSyxrLr3jVDxbdB25MAwrLBMnL','yxbWCM94Aw1HDgvmq1m','BwfW','mJe1nteWmhzkwMrgsG','AgfZAa','Bwf4','oty4ndK0nvLdsuDLza'];a0_0x366e=function(){return _0x4e4360;};return a0_0x366e();}