@loxia-labs/loxia-autopilot-one 1.0.14 → 1.0.16

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 (123) 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/agentActivityService.js +1 -1
  76. package/src/services/aiService.js +1 -1
  77. package/src/services/apiKeyManager.js +1 -1
  78. package/src/services/benchmarkService.js +1 -1
  79. package/src/services/budgetService.js +1 -1
  80. package/src/services/contextInjectionService.js +1 -1
  81. package/src/services/conversationCompactionService.js +1 -1
  82. package/src/services/errorHandler.js +1 -1
  83. package/src/services/fileAttachmentService.js +1 -1
  84. package/src/services/modelRouterService.js +1 -1
  85. package/src/services/modelsService.js +1 -1
  86. package/src/services/qualityInspector.js +1 -1
  87. package/src/services/tokenCountingService.js +1 -1
  88. package/src/tools/agentCommunicationTool.js +1 -1
  89. package/src/tools/agentDelayTool.js +1 -1
  90. package/src/tools/asyncToolManager.js +1 -1
  91. package/src/tools/baseTool.js +1 -1
  92. package/src/tools/browserTool.js +1 -1
  93. package/src/tools/cloneDetectionTool.js +1 -1
  94. package/src/tools/dependencyResolverTool.js +1 -1
  95. package/src/tools/fileContentReplaceTool.js +1 -1
  96. package/src/tools/fileSystemTool.js +1 -1
  97. package/src/tools/fileTreeTool.js +1 -1
  98. package/src/tools/imageTool.js +1 -1
  99. package/src/tools/importAnalyzerTool.js +1 -1
  100. package/src/tools/jobDoneTool.js +1 -1
  101. package/src/tools/seekTool.js +1 -1
  102. package/src/tools/staticAnalysisTool.js +1 -1
  103. package/src/tools/taskManagerTool.js +1 -1
  104. package/src/tools/terminalTool.js +1 -1
  105. package/src/tools/webTool.js +1 -1
  106. package/src/types/agent.js +1 -1
  107. package/src/types/contextReference.js +1 -1
  108. package/src/types/conversation.js +1 -1
  109. package/src/types/toolCommand.js +1 -1
  110. package/src/utilities/attachmentValidator.js +1 -1
  111. package/src/utilities/configManager.js +1 -1
  112. package/src/utilities/constants.js +1 -1
  113. package/src/utilities/directoryAccessManager.js +1 -1
  114. package/src/utilities/fileProcessor.js +1 -1
  115. package/src/utilities/logger.js +1 -1
  116. package/src/utilities/tagParser.js +1 -1
  117. package/src/utilities/toolConstants.js +1 -1
  118. package/src/utilities/userDataDir.js +1 -1
  119. package/web-ui/build/index.html +2 -2
  120. package/web-ui/build/static/index-DFmFvOoy.css +1 -0
  121. package/web-ui/build/static/index-DOk0l6Kf.js +348 -0
  122. package/web-ui/build/static/index-DXN850Y2.js +0 -400
  123. package/web-ui/build/static/index-an-YRzUX.css +0 -1
@@ -1 +1 @@
1
- const a0_0x1e9b09=a0_0x5ccc;(function(_0x37d8f3,_0x124492){const _0x2ce13c=a0_0x5ccc,_0x19216c=_0x37d8f3();while(!![]){try{const _0xf13213=parseInt(_0x2ce13c(0x1ef))/0x1+parseInt(_0x2ce13c(0x1f2))/0x2*(parseInt(_0x2ce13c(0x1d8))/0x3)+parseInt(_0x2ce13c(0x1f7))/0x4*(-parseInt(_0x2ce13c(0x1fc))/0x5)+-parseInt(_0x2ce13c(0x1dd))/0x6+-parseInt(_0x2ce13c(0x203))/0x7+parseInt(_0x2ce13c(0x1d4))/0x8*(parseInt(_0x2ce13c(0x202))/0x9)+-parseInt(_0x2ce13c(0x1eb))/0xa;if(_0xf13213===_0x124492)break;else _0x19216c['push'](_0x19216c['shift']());}catch(_0x483bf0){_0x19216c['push'](_0x19216c['shift']());}}}(a0_0x359b,0xe986c));import a0_0x7209c1 from'typescript';function a0_0x359b(){const _0x549e75=['sNn4rw1PDa','zMLSDgvY','C2v2zxjPDhK','BgLUzq','sMf2yvnJCMLWDcbHBMfSExnPCYbMywLSzwq','Aw5JBhvKzxm','BwvZC2fNzq','ntyZnJuWCer4rNvo','su1qt1ju','u0vwrvjjvfK','y3jLyxrLuhjVz3jHBq','mtCXntK4n1Pushfdqq','u2nYAxb0vgfYz2v0','rgLHz25VC3rPy0nHDgvNB3j5','nty2rxbeDej1','zM9YrwfJAenOAwXK','rxjYB3i','BwvZC2fNzvrLEhq','q0furuDpuLK','mtjMD0jiugK','Dg9mB3DLCKnHC2u','y2HHCMfJDgvY','ChvZAa','zxjYB3i','mJiYntaXmhzbAuL3uW','zM9YBwf0rgLHz25VC3rPyW','v0fstKLorW','Bg9Nz2vY','u1Lovefy','CgfYC2veAwfNBM9ZDgLJCW','ntrvDxLxBuC','nJm3nti1n3zJCMf6AG','zMLSzq','rvjst1i','tM9KzuPZ','mti0mtKXmKPiC2jIDq','y3jLyxrLu291CMnLrMLSzq','C3rHCNq','sMf2yvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','mtm4mZz1uejjDM8','A2LUza','tw9KDwXLuMvZB2X1DgLVBKTPBMq','qw5HBhLZAxmGzMfPBgvKoIa','zgvIDwC','nde2mZGYnMLQEwnoAG','Dw5RBM93BG','u3vNz2vZDgLVBG','vfLqrq','y29TCgLSzxjpChrPB25Z','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','zMLSzu5HBwu'];a0_0x359b=function(){return _0x549e75;};return a0_0x359b();}import a0_0x19b316 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';function a0_0x5ccc(_0x3fa2e6,_0x2110c0){_0x3fa2e6=_0x3fa2e6-0x1d3;const _0x359b2b=a0_0x359b();let _0x5ccc2c=_0x359b2b[_0x3fa2e6];if(a0_0x5ccc['tviKyE']===undefined){var _0x3cb360=function(_0x4aaf3c){const _0x34b993='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7209c1='',_0x19b316='';for(let _0x3ba4c1=0x0,_0x4cdcaf,_0x1f7bcb,_0x22a1fe=0x0;_0x1f7bcb=_0x4aaf3c['charAt'](_0x22a1fe++);~_0x1f7bcb&&(_0x4cdcaf=_0x3ba4c1%0x4?_0x4cdcaf*0x40+_0x1f7bcb:_0x1f7bcb,_0x3ba4c1++%0x4)?_0x7209c1+=String['fromCharCode'](0xff&_0x4cdcaf>>(-0x2*_0x3ba4c1&0x6)):0x0){_0x1f7bcb=_0x34b993['indexOf'](_0x1f7bcb);}for(let _0x23f660=0x0,_0x464389=_0x7209c1['length'];_0x23f660<_0x464389;_0x23f660++){_0x19b316+='%'+('00'+_0x7209c1['charCodeAt'](_0x23f660)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x19b316);};a0_0x5ccc['PkiukS']=_0x3cb360,a0_0x5ccc['uCXEbo']={},a0_0x5ccc['tviKyE']=!![];}const _0x413966=_0x359b2b[0x0],_0x1c838b=_0x3fa2e6+_0x413966,_0x43f4e5=a0_0x5ccc['uCXEbo'][_0x1c838b];return!_0x43f4e5?(_0x5ccc2c=a0_0x5ccc['PkiukS'](_0x5ccc2c),a0_0x5ccc['uCXEbo'][_0x1c838b]=_0x5ccc2c):_0x5ccc2c=_0x43f4e5,_0x5ccc2c;}class JavaScriptAnalyzer{constructor(_0x3ba4c1=null){const _0x169b11=a0_0x5ccc;this['logger']=_0x3ba4c1,this[_0x169b11(0x1e1)]={'allowJs':!![],'checkJs':!![],'noEmit':!![],'jsx':a0_0x7209c1[_0x169b11(0x1e4)]['React'],'target':a0_0x7209c1[_0x169b11(0x1f0)]['Latest'],'module':a0_0x7209c1['ModuleKind']['ESNext'],'moduleResolution':a0_0x7209c1[_0x169b11(0x1da)][_0x169b11(0x1d3)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':![],'noImplicitAny':![]};}async['analyze'](_0x4cdcaf,_0x1f7bcb,_0x22a1fe={}){const _0x2df72c=a0_0x5ccc;try{const _0x23f660=[],_0x464389=a0_0x7209c1[_0x2df72c(0x1d5)](_0x4cdcaf,_0x1f7bcb,a0_0x7209c1[_0x2df72c(0x1f0)]['Latest'],!![]),_0x4ae5d8=this['getSyntacticDiagnostics'](_0x464389);_0x23f660[_0x2df72c(0x1fa)](..._0x4ae5d8);const _0x3723eb=await this['getSemanticDiagnostics'](_0x4cdcaf,_0x1f7bcb);return _0x23f660[_0x2df72c(0x1fa)](..._0x3723eb),this['logger']?.[_0x2df72c(0x1dc)](_0x2df72c(0x1d7),{'file':_0x4cdcaf,'totalDiagnostics':_0x23f660['length'],'errors':_0x23f660[_0x2df72c(0x1e5)](_0x33cca2=>_0x33cca2[_0x2df72c(0x1e6)]===STATIC_ANALYSIS[_0x2df72c(0x1ed)][_0x2df72c(0x205)])['length'],'warnings':_0x23f660[_0x2df72c(0x1e5)](_0x2b2d00=>_0x2b2d00['severity']===STATIC_ANALYSIS['SEVERITY'][_0x2df72c(0x1fe)])['length']}),_0x23f660;}catch(_0x336880){return this[_0x2df72c(0x1ff)]?.[_0x2df72c(0x1fb)](_0x2df72c(0x1e8),{'file':_0x4cdcaf,'error':_0x336880[_0x2df72c(0x1ea)]}),[{'file':_0x4cdcaf,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS[_0x2df72c(0x1ed)][_0x2df72c(0x205)],'rule':'analyzer-error','message':_0x2df72c(0x1db)+_0x336880['message'],'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX']}];}}[a0_0x1e9b09(0x1e2)](_0x5459b6){const _0x374a8a=a0_0x1e9b09,_0x4f0b79=[],_0x384fc8=_0x330457=>{const _0x21bd74=a0_0x5ccc;if(_0x330457[_0x21bd74(0x1d9)]===a0_0x7209c1['SyntaxKind']['Unknown']){const _0x5f00b1=_0x5459b6['getLineAndCharacterOfPosition'](_0x330457['getStart']());_0x4f0b79[_0x21bd74(0x1fa)]({'file':_0x5459b6[_0x21bd74(0x1e3)],'line':_0x5f00b1[_0x21bd74(0x1e7)]+0x1,'column':_0x5f00b1['character']+0x1,'severity':STATIC_ANALYSIS[_0x21bd74(0x1ed)]['ERROR'],'rule':'syntax-error','message':'Syntax\x20error','category':STATIC_ANALYSIS[_0x21bd74(0x1f6)][_0x21bd74(0x200)],'fixable':![]});}a0_0x7209c1[_0x21bd74(0x1f3)](_0x330457,_0x384fc8);};_0x384fc8(_0x5459b6);if(_0x5459b6['parseDiagnostics']&&_0x5459b6[_0x374a8a(0x201)]['length']>0x0)for(const _0xb5d7a5 of _0x5459b6[_0x374a8a(0x201)]){_0x4f0b79['push'](this[_0x374a8a(0x1fd)](_0xb5d7a5,_0x5459b6));}return _0x4f0b79;}async['getSemanticDiagnostics'](_0x319269,_0x34096a){const _0x24727f=a0_0x1e9b09,_0x57bf9c=[];try{const _0xd58c21=a0_0x7209c1['createSourceFile'](_0x319269,_0x34096a,a0_0x7209c1[_0x24727f(0x1f0)]['Latest'],!![]),_0x3f4b13={'getSourceFile':_0x10a1f0=>{if(_0x10a1f0===_0x319269)return _0xd58c21;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x19b316['dirname'](_0x319269),'getDirectories':()=>[],'fileExists':_0xc5c5c9=>_0xc5c5c9===_0x319269,'readFile':_0x2c8435=>{if(_0x2c8435===_0x319269)return _0x34096a;return undefined;},'getCanonicalFileName':_0x4da3b7=>_0x4da3b7,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x178310=a0_0x7209c1[_0x24727f(0x1ee)]({'rootNames':[_0x319269],'options':this[_0x24727f(0x1e1)],'host':_0x3f4b13}),_0x32e014=_0x178310['getSemanticDiagnostics'](_0xd58c21);for(const _0x129faf of _0x32e014){_0x57bf9c[_0x24727f(0x1fa)](this[_0x24727f(0x1fd)](_0x129faf,_0xd58c21));}}catch(_0x197218){this['logger']?.[_0x24727f(0x1dc)]('Semantic\x20analysis\x20skipped',{'file':_0x319269,'reason':_0x197218[_0x24727f(0x1ea)]});}return _0x57bf9c;}[a0_0x1e9b09(0x1fd)](_0x4fd048,_0x3e536d){const _0x3721ce=a0_0x1e9b09;let _0x244301=0x0,_0x51b041=0x0;if(_0x4fd048['file']&&_0x4fd048[_0x3721ce(0x1d6)]!==undefined){const _0x15fb1c=_0x4fd048[_0x3721ce(0x204)]['getLineAndCharacterOfPosition'](_0x4fd048['start']);_0x244301=_0x15fb1c['line']+0x1,_0x51b041=_0x15fb1c[_0x3721ce(0x1f9)]+0x1;}else{if(_0x3e536d&&_0x4fd048[_0x3721ce(0x1d6)]!==undefined){const _0x635d17=_0x3e536d['getLineAndCharacterOfPosition'](_0x4fd048[_0x3721ce(0x1d6)]);_0x244301=_0x635d17[_0x3721ce(0x1e7)]+0x1,_0x51b041=_0x635d17['character']+0x1;}}const _0x1145b7=a0_0x7209c1['flattenDiagnosticMessageText'](_0x4fd048[_0x3721ce(0x1f5)],'\x0a');let _0x460211;switch(_0x4fd048['category']){case a0_0x7209c1['DiagnosticCategory'][_0x3721ce(0x1f4)]:_0x460211=STATIC_ANALYSIS[_0x3721ce(0x1ed)][_0x3721ce(0x205)];break;case a0_0x7209c1[_0x3721ce(0x1f1)]['Warning']:_0x460211=STATIC_ANALYSIS[_0x3721ce(0x1ed)]['WARNING'];break;case a0_0x7209c1['DiagnosticCategory']['Message']:case a0_0x7209c1[_0x3721ce(0x1f1)][_0x3721ce(0x1df)]:_0x460211=STATIC_ANALYSIS['SEVERITY']['INFO'];break;default:_0x460211=STATIC_ANALYSIS[_0x3721ce(0x1ed)]['ERROR'];}let _0x22c152=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];const _0xf0dc50=_0x4fd048['code'];if(_0xf0dc50>=0x7d0&&_0xf0dc50<0xbb8)_0x22c152=STATIC_ANALYSIS['CATEGORY'][_0x3721ce(0x1e0)];else{if(_0xf0dc50>=0x3e8&&_0xf0dc50<0x7d0)_0x22c152=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];else _0xf0dc50>=0x8fc&&_0xf0dc50<0x960&&(_0x22c152=STATIC_ANALYSIS['CATEGORY'][_0x3721ce(0x1ec)]);}return(_0x1145b7[_0x3721ce(0x1f8)]()['includes']('cannot\x20find\x20module')||_0x1145b7['toLowerCase']()[_0x3721ce(0x1e9)]('import'))&&(_0x22c152=STATIC_ANALYSIS[_0x3721ce(0x1f6)]['IMPORT']),{'file':_0x4fd048[_0x3721ce(0x204)]?.[_0x3721ce(0x1e3)]||_0x3e536d?.['fileName']||_0x3721ce(0x1de),'line':_0x244301,'column':_0x51b041,'severity':_0x460211,'rule':'TS'+_0xf0dc50,'message':_0x1145b7,'category':_0x22c152,'fixable':![],'code':_0x4fd048['code']};}}export default JavaScriptAnalyzer;
1
+ function a0_0x477f(){const _0x23a2fd=['odGZmhfJz2vxtW','mKv1Buvfra','CgfYC2veAwfNBM9ZDgLJCW','y29Kzq','BgvUz3rO','ChvZAa','u3LUDgf4s2LUza','qw5HBhLZAxmGzMfPBgvKoIa','z2v0u3rHCNq','tw9KDwXLuMvZB2X1DgLVBKTPBMq','rvjst1i','y2fUBM90igzPBMqGBw9KDwXL','BgLUzq','u0vwrvjjvfK','vfLqrq','mtjstLnbtxu','C3LUDgf4lwvYCM9Y','mti5mZqZmM16Buz5Dq','zMLSDgvY','nJu3B1zeqxvL','rgLHz25VC3rPy0nHDgvNB3j5','BwvZC2fNzq','ndq5mtjYrgfMwhG','Dg9mB3DLCKnHC2u','zMLSzu5HBwu','odm0mtDNq29NtMC','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','y29TCgLSzxjpChrPB25Z','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','u3vNz2vZDgLVBG','nJq2mZaYrMntvgLq','tM9KzuPZ','v0fstKLorW','rxjYB3i','u1Lovefy','zgvIDwC','u2nYAxb0vgfYz2v0','tgf0zxn0','BwvZC2fNzvrLEhq','v2fYBMLUzW','zM9YBwf0rgLHz25VC3rPyW','y3jLyxrLu291CMnLrMLSzq','q0furuDpuLK','y2HHCMfJDgvY','C3rHCNq','Bg9Nz2vY','C2v2zxjPDhK','otmWnJK1BgXTAM13','zMLSzq','sMf2yvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','nZe2mdG4t0XmrgLw'];a0_0x477f=function(){return _0x23a2fd;};return a0_0x477f();}function a0_0x3fd6(_0x4c3660,_0x3ae7ee){_0x4c3660=_0x4c3660-0x145;const _0x477f3e=a0_0x477f();let _0x3fd614=_0x477f3e[_0x4c3660];if(a0_0x3fd6['iKpZyO']===undefined){var _0x41b8cc=function(_0xa7f22a){const _0x188e54='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d96c4='',_0x5c30d7='';for(let _0x58f725=0x0,_0x29255a,_0x341b51,_0x33eb1d=0x0;_0x341b51=_0xa7f22a['charAt'](_0x33eb1d++);~_0x341b51&&(_0x29255a=_0x58f725%0x4?_0x29255a*0x40+_0x341b51:_0x341b51,_0x58f725++%0x4)?_0x3d96c4+=String['fromCharCode'](0xff&_0x29255a>>(-0x2*_0x58f725&0x6)):0x0){_0x341b51=_0x188e54['indexOf'](_0x341b51);}for(let _0x4d2590=0x0,_0x3bf696=_0x3d96c4['length'];_0x4d2590<_0x3bf696;_0x4d2590++){_0x5c30d7+='%'+('00'+_0x3d96c4['charCodeAt'](_0x4d2590)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c30d7);};a0_0x3fd6['iHhJTZ']=_0x41b8cc,a0_0x3fd6['bqoatQ']={},a0_0x3fd6['iKpZyO']=!![];}const _0x222c22=_0x477f3e[0x0],_0x4dbeff=_0x4c3660+_0x222c22,_0x1bb70e=a0_0x3fd6['bqoatQ'][_0x4dbeff];return!_0x1bb70e?(_0x3fd614=a0_0x3fd6['iHhJTZ'](_0x3fd614),a0_0x3fd6['bqoatQ'][_0x4dbeff]=_0x3fd614):_0x3fd614=_0x1bb70e,_0x3fd614;}const a0_0x52c02f=a0_0x3fd6;(function(_0x48b8f2,_0x5e4764){const _0x31d747=a0_0x3fd6,_0x202ab8=_0x48b8f2();while(!![]){try{const _0x53f207=-parseInt(_0x31d747(0x161))/0x1*(parseInt(_0x31d747(0x149))/0x2)+parseInt(_0x31d747(0x157))/0x3*(-parseInt(_0x31d747(0x15e))/0x4)+parseInt(_0x31d747(0x177))/0x5+-parseInt(_0x31d747(0x166))/0x6+parseInt(_0x31d747(0x159))/0x7+-parseInt(_0x31d747(0x147))/0x8+parseInt(_0x31d747(0x15b))/0x9*(parseInt(_0x31d747(0x148))/0xa);if(_0x53f207===_0x5e4764)break;else _0x202ab8['push'](_0x202ab8['shift']());}catch(_0x22db57){_0x202ab8['push'](_0x202ab8['shift']());}}}(a0_0x477f,0x1acf9));import a0_0x3d96c4 from'typescript';import a0_0x5c30d7 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';class JavaScriptAnalyzer{constructor(_0x58f725=null){const _0x3ba9b6=a0_0x3fd6;this['logger']=_0x58f725,this[_0x3ba9b6(0x163)]={'allowJs':!![],'checkJs':!![],'noEmit':!![],'jsx':a0_0x3d96c4['JsxEmit']['React'],'target':a0_0x3d96c4[_0x3ba9b6(0x16c)]['Latest'],'module':a0_0x3d96c4['ModuleKind']['ESNext'],'moduleResolution':a0_0x3d96c4[_0x3ba9b6(0x151)][_0x3ba9b6(0x167)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':![],'noImplicitAny':![]};}async['analyze'](_0x29255a,_0x341b51,_0x33eb1d={}){const _0x22148f=a0_0x3fd6;try{const _0x4d2590=[],_0x3bf696=a0_0x3d96c4[_0x22148f(0x171)](_0x29255a,_0x341b51,a0_0x3d96c4['ScriptTarget'][_0x22148f(0x16d)],!![]),_0x2391ce=this['getSyntacticDiagnostics'](_0x3bf696);_0x4d2590[_0x22148f(0x14d)](..._0x2391ce);const _0x4bedb8=await this['getSemanticDiagnostics'](_0x29255a,_0x341b51);return _0x4d2590[_0x22148f(0x14d)](..._0x4bedb8),this['logger']?.[_0x22148f(0x16b)](_0x22148f(0x146),{'file':_0x29255a,'totalDiagnostics':_0x4d2590[_0x22148f(0x14c)],'errors':_0x4d2590[_0x22148f(0x15a)](_0x87f4d0=>_0x87f4d0[_0x22148f(0x176)]===STATIC_ANALYSIS[_0x22148f(0x155)]['ERROR'])['length'],'warnings':_0x4d2590[_0x22148f(0x15a)](_0x2bf8d8=>_0x2bf8d8[_0x22148f(0x176)]===STATIC_ANALYSIS['SEVERITY'][_0x22148f(0x168)])[_0x22148f(0x14c)]}),_0x4d2590;}catch(_0x158f10){return this['logger']?.['error']('JavaScript\x20analysis\x20failed',{'file':_0x29255a,'error':_0x158f10['message']}),[{'file':_0x29255a,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY'][_0x22148f(0x152)],'rule':'analyzer-error','message':_0x22148f(0x14f)+_0x158f10[_0x22148f(0x15d)],'category':STATIC_ANALYSIS[_0x22148f(0x172)][_0x22148f(0x16a)]}];}}['getSyntacticDiagnostics'](_0x193808){const _0x52156f=a0_0x3fd6,_0x59a7d9=[],_0x38eb8f=_0x3e39a4=>{const _0x59330f=a0_0x3fd6;if(_0x3e39a4['kind']===a0_0x3d96c4[_0x59330f(0x14e)]['Unknown']){const _0xce53c5=_0x193808['getLineAndCharacterOfPosition'](_0x3e39a4[_0x59330f(0x150)]());_0x59a7d9['push']({'file':_0x193808['fileName'],'line':_0xce53c5['line']+0x1,'column':_0xce53c5['character']+0x1,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':_0x59330f(0x158),'message':'Syntax\x20error','category':STATIC_ANALYSIS['CATEGORY'][_0x59330f(0x16a)],'fixable':![]});}a0_0x3d96c4['forEachChild'](_0x3e39a4,_0x38eb8f);};_0x38eb8f(_0x193808);if(_0x193808[_0x52156f(0x14a)]&&_0x193808['parseDiagnostics']['length']>0x0)for(const _0x380bed of _0x193808['parseDiagnostics']){_0x59a7d9['push'](this[_0x52156f(0x170)](_0x380bed,_0x193808));}return _0x59a7d9;}async[a0_0x52c02f(0x162)](_0x100e73,_0x1f5a19){const _0x404369=a0_0x52c02f,_0x3f94cc=[];try{const _0x3f824e=a0_0x3d96c4['createSourceFile'](_0x100e73,_0x1f5a19,a0_0x3d96c4[_0x404369(0x16c)][_0x404369(0x16d)],!![]),_0x2dfd3a={'getSourceFile':_0x3e2c9e=>{if(_0x3e2c9e===_0x100e73)return _0x3f824e;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x5c30d7['dirname'](_0x100e73),'getDirectories':()=>[],'fileExists':_0x4e7fb4=>_0x4e7fb4===_0x100e73,'readFile':_0x3b947a=>{if(_0x3b947a===_0x100e73)return _0x1f5a19;return undefined;},'getCanonicalFileName':_0x39c3a8=>_0x39c3a8,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0xc70d0e=a0_0x3d96c4['createProgram']({'rootNames':[_0x100e73],'options':this[_0x404369(0x163)],'host':_0x2dfd3a}),_0x256132=_0xc70d0e[_0x404369(0x162)](_0x3f824e);for(const _0x261a3b of _0x256132){_0x3f94cc['push'](this['formatDiagnostic'](_0x261a3b,_0x3f824e));}}catch(_0x376f65){this[_0x404369(0x175)]?.['debug']('Semantic\x20analysis\x20skipped',{'file':_0x100e73,'reason':_0x376f65[_0x404369(0x15d)]});}return _0x3f94cc;}['formatDiagnostic'](_0x15789f,_0x56fde3){const _0x4627fc=a0_0x52c02f;let _0x258bd5=0x0,_0x369e61=0x0;if(_0x15789f['file']&&_0x15789f['start']!==undefined){const _0x5026d=_0x15789f[_0x4627fc(0x145)][_0x4627fc(0x164)](_0x15789f['start']);_0x258bd5=_0x5026d[_0x4627fc(0x154)]+0x1,_0x369e61=_0x5026d[_0x4627fc(0x173)]+0x1;}else{if(_0x56fde3&&_0x15789f['start']!==undefined){const _0xf8cee4=_0x56fde3[_0x4627fc(0x164)](_0x15789f[_0x4627fc(0x174)]);_0x258bd5=_0xf8cee4['line']+0x1,_0x369e61=_0xf8cee4['character']+0x1;}}const _0x115506=a0_0x3d96c4['flattenDiagnosticMessageText'](_0x15789f[_0x4627fc(0x16e)],'\x0a');let _0x7398de;switch(_0x15789f['category']){case a0_0x3d96c4[_0x4627fc(0x15c)][_0x4627fc(0x169)]:_0x7398de=STATIC_ANALYSIS['SEVERITY'][_0x4627fc(0x152)];break;case a0_0x3d96c4[_0x4627fc(0x15c)][_0x4627fc(0x16f)]:_0x7398de=STATIC_ANALYSIS['SEVERITY'][_0x4627fc(0x168)];break;case a0_0x3d96c4['DiagnosticCategory']['Message']:case a0_0x3d96c4['DiagnosticCategory'][_0x4627fc(0x165)]:_0x7398de=STATIC_ANALYSIS['SEVERITY']['INFO'];break;default:_0x7398de=STATIC_ANALYSIS['SEVERITY'][_0x4627fc(0x152)];}let _0x2ee168=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];const _0xcb603b=_0x15789f[_0x4627fc(0x14b)];if(_0xcb603b>=0x7d0&&_0xcb603b<0xbb8)_0x2ee168=STATIC_ANALYSIS[_0x4627fc(0x172)][_0x4627fc(0x156)];else{if(_0xcb603b>=0x3e8&&_0xcb603b<0x7d0)_0x2ee168=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];else _0xcb603b>=0x8fc&&_0xcb603b<0x960&&(_0x2ee168=STATIC_ANALYSIS[_0x4627fc(0x172)]['IMPORT']);}return(_0x115506['toLowerCase']()['includes'](_0x4627fc(0x153))||_0x115506[_0x4627fc(0x15f)]()['includes']('import'))&&(_0x2ee168=STATIC_ANALYSIS['CATEGORY']['IMPORT']),{'file':_0x15789f[_0x4627fc(0x145)]?.[_0x4627fc(0x160)]||_0x56fde3?.['fileName']||'unknown','line':_0x258bd5,'column':_0x369e61,'severity':_0x7398de,'rule':'TS'+_0xcb603b,'message':_0x115506,'category':_0x2ee168,'fixable':![],'code':_0x15789f['code']};}}export default JavaScriptAnalyzer;
@@ -1 +1 @@
1
- const a0_0x436aa7=a0_0x3b37;(function(_0x2c54f5,_0x431947){const _0x2dcbd5=a0_0x3b37,_0x5ae496=_0x2c54f5();while(!![]){try{const _0x4cfe5b=parseInt(_0x2dcbd5(0x1e9))/0x1*(-parseInt(_0x2dcbd5(0x20c))/0x2)+parseInt(_0x2dcbd5(0x1e7))/0x3*(parseInt(_0x2dcbd5(0x1f2))/0x4)+-parseInt(_0x2dcbd5(0x1f0))/0x5*(parseInt(_0x2dcbd5(0x1f7))/0x6)+parseInt(_0x2dcbd5(0x203))/0x7*(parseInt(_0x2dcbd5(0x1ee))/0x8)+parseInt(_0x2dcbd5(0x1e1))/0x9*(parseInt(_0x2dcbd5(0x1dc))/0xa)+-parseInt(_0x2dcbd5(0x1e4))/0xb+-parseInt(_0x2dcbd5(0x1e8))/0xc*(-parseInt(_0x2dcbd5(0x1fb))/0xd);if(_0x4cfe5b===_0x431947)break;else _0x5ae496['push'](_0x5ae496['shift']());}catch(_0x979012){_0x5ae496['push'](_0x5ae496['shift']());}}}(a0_0x35da,0xc7530));import a0_0x4dfb15 from'prettier';import a0_0x1db9ed from'path';import a0_0x5abeda from'fs/promises';function a0_0x35da(){const _0x2a5849=['zxjYB3i','yMfIzwW','mteXnJu2odDJrfD2Aeu','BgvZCW','lNz1zq','y2HLy2S','lMH0BwW','Dg9mB3DLCKnHC2u','C2nZCW','lMXLC3m','mtaYodi1mwnjqxvQDG','DhLWzxnJCMLWDa','uhjLDhrPzxiGy2HLy2SGzMfPBgvK','BwvZC2fNzq','zgLYBMfTzq','C3bSAxq','zgvZy3jPyMvdAgfUz2vZ','Bw9KAwzPzwq','CMvZB2X2zunVBMzPzW','mZrND2DSsKW','C2v0','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','lM1K','AhrTBa','y29UzMLNq2fJAgu','mJeWodmZmev2DgDpza','Bg9Nz2vY','lNnJC3m','lMPZ','z2v0ugfYC2vY','oxLxr2HLtW','lMPZEa','zgvIDwC','mJaZnZKXnwLhvgjlAW','zxH0BMfTzq','lNrZEa','nJm0mJa5ugjzv3ne','mtjKExj4vg8','nJe1odbOwLLbvwq','lMPZB241','y291BNrdAgfUz2vKtgLUzxm','EwfTBa','lMnQCW','mZjJwhn6t2W','DNvL','mZmYodGXmejbze1zzq','Bwf4','mJbPBe5WExK','rM91BMqGuhjLDhrPzxiGy29UzMLN','D29YA2LUz0rPCG','zM9YBwf0','lMnZCW','nLb1uujYqq','AgfZ'];a0_0x35da=function(){return _0x2a5849;};return a0_0x35da();}function a0_0x3b37(_0x4501f9,_0x5a9de0){_0x4501f9=_0x4501f9-0x1dc;const _0x35dabf=a0_0x35da();let _0x3b379d=_0x35dabf[_0x4501f9];if(a0_0x3b37['IGKYCw']===undefined){var _0x125a77=function(_0x4e82a4){const _0x3c33db='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4dfb15='',_0x1db9ed='';for(let _0x5abeda=0x0,_0x1db358,_0x2ef572,_0x741fb=0x0;_0x2ef572=_0x4e82a4['charAt'](_0x741fb++);~_0x2ef572&&(_0x1db358=_0x5abeda%0x4?_0x1db358*0x40+_0x2ef572:_0x2ef572,_0x5abeda++%0x4)?_0x4dfb15+=String['fromCharCode'](0xff&_0x1db358>>(-0x2*_0x5abeda&0x6)):0x0){_0x2ef572=_0x3c33db['indexOf'](_0x2ef572);}for(let _0x356687=0x0,_0x2327a2=_0x4dfb15['length'];_0x356687<_0x2327a2;_0x356687++){_0x1db9ed+='%'+('00'+_0x4dfb15['charCodeAt'](_0x356687)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1db9ed);};a0_0x3b37['kQqwOK']=_0x125a77,a0_0x3b37['MDweYh']={},a0_0x3b37['IGKYCw']=!![];}const _0x13abc6=_0x35dabf[0x0],_0x392c66=_0x4501f9+_0x13abc6,_0x33ee11=a0_0x3b37['MDweYh'][_0x392c66];return!_0x33ee11?(_0x3b379d=a0_0x3b37['kQqwOK'](_0x3b379d),a0_0x3b37['MDweYh'][_0x392c66]=_0x3b379d):_0x3b379d=_0x33ee11,_0x3b379d;}class PrettierFormatter{constructor(_0x1db358=null){this['logger']=_0x1db358,this['configCache']=new Map();}async[a0_0x436aa7(0x1f5)](_0x2ef572,_0x741fb,_0x356687={}){const _0x10fbc1=a0_0x436aa7;try{const _0x2327a2=await this['getPrettierConfig'](_0x2ef572,_0x356687[_0x10fbc1(0x1f4)]),_0x4516eb=this[_0x10fbc1(0x1e0)](_0x2ef572),_0x4724a4=await a0_0x4dfb15['format'](_0x741fb,{..._0x2327a2,'filepath':_0x2ef572,'parser':_0x4516eb}),_0x3abf67=_0x4724a4!==_0x741fb;return{'formatted':_0x3abf67,'content':_0x4724a4,'original':_0x741fb,'changes':_0x3abf67?this[_0x10fbc1(0x209)](_0x741fb,_0x4724a4):[],'linesChanged':_0x3abf67?this['countChangedLines'](_0x741fb,_0x4724a4):0x0};}catch(_0x4db2c6){this[_0x10fbc1(0x1dd)]?.[_0x10fbc1(0x1f9)]('Prettier\x20formatting\x20failed',{'file':_0x2ef572,'error':_0x4db2c6['message']});throw new Error('Prettier\x20formatting\x20failed:\x20'+_0x4db2c6[_0x10fbc1(0x206)]);}}async[a0_0x436aa7(0x1fe)](_0x31df35,_0x4e8e97,_0x3fd238={}){const _0x7fc53a=a0_0x436aa7;try{const _0x3fa004=await this['getPrettierConfig'](_0x31df35,_0x3fd238[_0x7fc53a(0x1f4)]),_0x93ff29=this[_0x7fc53a(0x1e0)](_0x31df35),_0x6b7270=await a0_0x4dfb15['format'](_0x4e8e97,{..._0x3fa004,'filepath':_0x31df35,'parser':_0x93ff29});return _0x6b7270!==_0x4e8e97;}catch(_0x553b07){return this['logger']?.['warn'](_0x7fc53a(0x205),{'file':_0x31df35,'error':_0x553b07[_0x7fc53a(0x206)]}),![];}}async['getPrettierConfig'](_0x39b6c9,_0x38b08c){const _0x176efb=a0_0x436aa7,_0x1cf475=_0x38b08c||a0_0x1db9ed[_0x176efb(0x207)](_0x39b6c9);if(this['configCache'][_0x176efb(0x1f8)](_0x1cf475))return this['configCache']['get'](_0x1cf475);let _0x18f03f={};if(_0x38b08c)try{const _0x5491de=await a0_0x4dfb15[_0x176efb(0x20b)](_0x39b6c9,{'config':_0x38b08c});_0x5491de&&(this[_0x176efb(0x1dd)]?.['debug'](_0x176efb(0x1f3),{'workingDir':_0x38b08c}),_0x18f03f=_0x5491de);}catch(_0x4e48ad){this['logger']?.[_0x176efb(0x1e3)]('No Prettier config found, using defaults');}const defaultConfig={'semi':!![],'singleQuote':!![],'tabWidth':0x2,'trailingComma':'es5','printWidth':0x64,'arrowParens':'avoid','endOfLine':'lf',..._0x18f03f};return this[_0x176efb(0x211)][_0x176efb(0x20d)](_0x1cf475,defaultConfig),defaultConfig;}[a0_0x436aa7(0x1e0)](_0x38a40d){const _0x268dcd=a0_0x436aa7,_0x4e02ed=a0_0x1db9ed['extname'](_0x38a40d)[_0x268dcd(0x200)](),_0x1a99c3={'.js':_0x268dcd(0x1fa),'.jsx':'babel','.mjs':'babel','.cjs':_0x268dcd(0x1fa),'.ts':_0x268dcd(0x204),'.tsx':'typescript','.json':'json','.json5':'json5','.css':'css','.scss':_0x268dcd(0x201),'.less':_0x268dcd(0x1fc),'.html':_0x268dcd(0x210),'.vue':_0x268dcd(0x1ef),'.md':'markdown','.yaml':_0x268dcd(0x1ec),'.yml':'yaml'};return _0x1a99c3[_0x4e02ed]||'babel';}[a0_0x436aa7(0x209)](_0x3d3057,_0x51d533){const _0xd1614a=a0_0x436aa7,_0x310a60=[],_0x364f9f=_0x3d3057['split']('\x0a'),_0x164951=_0x51d533['split']('\x0a'),_0xde917b=Math[_0xd1614a(0x1f1)](_0x364f9f['length'],_0x164951['length']);for(let _0x125888=0x0;_0x125888<_0xde917b;_0x125888++){const _0x1cd3d5=_0x364f9f[_0x125888],_0x38b8d9=_0x164951[_0x125888];_0x1cd3d5!==_0x38b8d9&&_0x310a60['push']({'line':_0x125888+0x1,'type':_0x1cd3d5!==undefined&&_0x38b8d9!==undefined?_0xd1614a(0x20a):_0x1cd3d5!==undefined?'removed':'added','original':_0x1cd3d5||'','formatted':_0x38b8d9||''});}return _0x310a60;}[a0_0x436aa7(0x1eb)](_0x2aec6b,_0x58b628){const _0x479031=a0_0x436aa7,_0x27ded8=_0x2aec6b['split']('\x0a'),_0x388ded=_0x58b628[_0x479031(0x208)]('\x0a');let _0x3b22f3=0x0;const _0x3e359f=Math[_0x479031(0x1f1)](_0x27ded8['length'],_0x388ded['length']);for(let _0x3efb5a=0x0;_0x3efb5a<_0x3e359f;_0x3efb5a++){_0x27ded8[_0x3efb5a]!==_0x388ded[_0x3efb5a]&&_0x3b22f3++;}return _0x3b22f3;}['getSupportedExtensions'](){const _0x2965de=a0_0x436aa7;return[_0x2965de(0x1df),_0x2965de(0x1e2),'.mjs',_0x2965de(0x1ed),'.ts',_0x2965de(0x1e6),'.json',_0x2965de(0x1ea),_0x2965de(0x1f6),_0x2965de(0x1de),_0x2965de(0x202),_0x2965de(0x1ff),_0x2965de(0x1fd),_0x2965de(0x20f),'.yaml','.yml'];}['isSupported'](_0x226205){const _0x3e3a1d=a0_0x436aa7,_0x5a3a8d=a0_0x1db9ed[_0x3e3a1d(0x1e5)](_0x226205)['toLowerCase']();return this[_0x3e3a1d(0x20e)]()['includes'](_0x5a3a8d);}}export default PrettierFormatter;
1
+ function a0_0x38d1(_0x3c6b5c,_0x3c4c11){_0x3c6b5c=_0x3c6b5c-0x1b5;const _0x113b5b=a0_0x113b();let _0x38d13e=_0x113b5b[_0x3c6b5c];if(a0_0x38d1['awRBYA']===undefined){var _0x111547=function(_0x417d14){const _0x410d57='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x48c57c='',_0x1070c4='';for(let _0x142185=0x0,_0x345594,_0x10c7d0,_0x492f4e=0x0;_0x10c7d0=_0x417d14['charAt'](_0x492f4e++);~_0x10c7d0&&(_0x345594=_0x142185%0x4?_0x345594*0x40+_0x10c7d0:_0x10c7d0,_0x142185++%0x4)?_0x48c57c+=String['fromCharCode'](0xff&_0x345594>>(-0x2*_0x142185&0x6)):0x0){_0x10c7d0=_0x410d57['indexOf'](_0x10c7d0);}for(let _0x59502b=0x0,_0x55120f=_0x48c57c['length'];_0x59502b<_0x55120f;_0x59502b++){_0x1070c4+='%'+('00'+_0x48c57c['charCodeAt'](_0x59502b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1070c4);};a0_0x38d1['dGGKKG']=_0x111547,a0_0x38d1['HMKUPl']={},a0_0x38d1['awRBYA']=!![];}const _0x31fa8a=_0x113b5b[0x0],_0x50b6a9=_0x3c6b5c+_0x31fa8a,_0x590356=a0_0x38d1['HMKUPl'][_0x50b6a9];return!_0x590356?(_0x38d13e=a0_0x38d1['dGGKKG'](_0x38d13e),a0_0x38d1['HMKUPl'][_0x50b6a9]=_0x38d13e):_0x38d13e=_0x590356,_0x38d13e;}(function(_0x373392,_0x57845a){const _0x3b4890=a0_0x38d1,_0x4f6c79=_0x373392();while(!![]){try{const _0x1c34da=parseInt(_0x3b4890(0x1bb))/0x1*(-parseInt(_0x3b4890(0x1bd))/0x2)+parseInt(_0x3b4890(0x1bc))/0x3+-parseInt(_0x3b4890(0x1b5))/0x4*(-parseInt(_0x3b4890(0x1c9))/0x5)+-parseInt(_0x3b4890(0x1c1))/0x6*(parseInt(_0x3b4890(0x1c6))/0x7)+parseInt(_0x3b4890(0x1c4))/0x8*(-parseInt(_0x3b4890(0x1cc))/0x9)+parseInt(_0x3b4890(0x1c3))/0xa*(parseInt(_0x3b4890(0x1ce))/0xb)+parseInt(_0x3b4890(0x1bf))/0xc*(parseInt(_0x3b4890(0x1d0))/0xd);if(_0x1c34da===_0x57845a)break;else _0x4f6c79['push'](_0x4f6c79['shift']());}catch(_0x10dc61){_0x4f6c79['push'](_0x4f6c79['shift']());}}}(a0_0x113b,0x311e0));import a0_0x48c57c from'prettier';function a0_0x113b(){const _0x27b559=['BgvUz3rO','mta2n0vtyu9Uuq','lNLHBwW','mJe0nJqWnenKu0H4tq','lM1K','Bwf4','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','uhjLDhrPzxiGzM9YBwf0DgLUzYbMywLSzwq','EwfTBa','BwvZC2fNzq','yxzVAwq','C3bSAxq','uhjLDhrPzxiGy2HLy2SGzMfPBgvK','Bg9Nz2vY','z2v0ugfYC2vY','z2v0uhjLDhrPzxjdB25MAwC','CMvZB2X2zunVBMzPzW','zxH0BMfTzq','ywrKzwq','mJy0vgvtDff4','y29UzMLNq2fJAgu','zgvIDwC','lNz1zq','yMfIzwW','lM1QCW','mZu3oxzAtK9NrG','ndCWnJy3r2jHs2np','mtK0CxPUqwzw','DNvL','mZzvEvHYu3a','ChvZAa','mJe2nJG5nePUDgfJta','lMH0BwW','mZq4otbRt2jczwe','mJuZndy0wKT1zMz4','rM91BMqGuhjLDhrPzxiGy29UzMLN','n2f3y0HxqW','BgvZCW','lMnQCW','mJi2ntvSrfDIA08','lMPZ','y291BNrdAgfUz2vKtgLUzxm','mta4uKffq2zI'];a0_0x113b=function(){return _0x27b559;};return a0_0x113b();}import a0_0x1070c4 from'path';import a0_0x142185 from'fs/promises';class PrettierFormatter{constructor(_0x345594=null){const _0x52d794=a0_0x38d1;this[_0x52d794(0x1da)]=_0x345594,this[_0x52d794(0x1b6)]=new Map();}async['format'](_0x10c7d0,_0x492f4e,_0x59502b={}){const _0x43144a=a0_0x38d1;try{const _0x55120f=await this['getPrettierConfig'](_0x10c7d0,_0x59502b['workingDir']),_0x5ec5d2=this[_0x43144a(0x1db)](_0x10c7d0),_0x172ccf=await a0_0x48c57c['format'](_0x492f4e,{..._0x55120f,'filepath':_0x10c7d0,'parser':_0x5ec5d2}),_0x3598fc=_0x172ccf!==_0x492f4e;return{'formatted':_0x3598fc,'content':_0x172ccf,'original':_0x492f4e,'changes':_0x3598fc?this['describeChanges'](_0x492f4e,_0x172ccf):[],'linesChanged':_0x3598fc?this[_0x43144a(0x1cb)](_0x492f4e,_0x172ccf):0x0};}catch(_0x317f6b){this[_0x43144a(0x1da)]?.['error'](_0x43144a(0x1d4),{'file':_0x10c7d0,'error':_0x317f6b['message']});throw new Error('Prettier\x20formatting\x20failed:\x20'+_0x317f6b[_0x43144a(0x1d6)]);}}async['check'](_0x211b3a,_0x32ae18,_0x438ddc={}){const _0x598fa2=a0_0x38d1;try{const _0x67c38b=await this[_0x598fa2(0x1dc)](_0x211b3a,_0x438ddc['workingDir']),_0x1267a9=this['getParser'](_0x211b3a),_0x5d3941=await a0_0x48c57c['format'](_0x32ae18,{..._0x67c38b,'filepath':_0x211b3a,'parser':_0x1267a9});return _0x5d3941!==_0x32ae18;}catch(_0x2febaa){return this['logger']?.['warn'](_0x598fa2(0x1d9),{'file':_0x211b3a,'error':_0x2febaa[_0x598fa2(0x1d6)]}),![];}}async['getPrettierConfig'](_0x2d4a6f,_0xbdcef){const _0x5c1356=a0_0x38d1,_0xe42b12=_0xbdcef||a0_0x1070c4['dirname'](_0x2d4a6f);if(this[_0x5c1356(0x1b6)]['has'](_0xe42b12))return this[_0x5c1356(0x1b6)]['get'](_0xe42b12);let _0x40ba9d={};if(_0xbdcef)try{const _0x43433c=await a0_0x48c57c[_0x5c1356(0x1dd)](_0x2d4a6f,{'config':_0xbdcef});_0x43433c&&(this['logger']?.[_0x5c1356(0x1b7)](_0x5c1356(0x1c5),{'workingDir':_0xbdcef}),_0x40ba9d=_0x43433c);}catch(_0xe4b1b){this['logger']?.['debug']('No Prettier config found, using defaults');}const defaultConfig={'semi':!![],'singleQuote':!![],'tabWidth':0x2,'trailingComma':'es5','printWidth':0x64,'arrowParens':_0x5c1356(0x1d7),'endOfLine':'lf',..._0x40ba9d};return this[_0x5c1356(0x1b6)]['set'](_0xe42b12,defaultConfig),defaultConfig;}['getParser'](_0x1b466a){const _0x5ba434=a0_0x38d1,_0x404be0=a0_0x1070c4['extname'](_0x1b466a)['toLowerCase'](),_0x12bb44={'.js':'babel','.jsx':'babel','.mjs':'babel','.cjs':_0x5ba434(0x1b9),'.ts':'typescript','.tsx':'typescript','.json':'json','.json5':'json5','.css':'css','.scss':'scss','.less':_0x5ba434(0x1c7),'.html':'html','.vue':_0x5ba434(0x1be),'.md':'markdown','.yaml':_0x5ba434(0x1d5),'.yml':'yaml'};return _0x12bb44[_0x404be0]||'babel';}['describeChanges'](_0x2706c2,_0x1dc9e9){const _0x291e6f=a0_0x38d1,_0x5549d9=[],_0x5b2b66=_0x2706c2[_0x291e6f(0x1d8)]('\x0a'),_0x45a4a1=_0x1dc9e9['split']('\x0a'),_0x22b2c2=Math['max'](_0x5b2b66['length'],_0x45a4a1[_0x291e6f(0x1cd)]);for(let _0x4e06b4=0x0;_0x4e06b4<_0x22b2c2;_0x4e06b4++){const _0x46d548=_0x5b2b66[_0x4e06b4],_0x265657=_0x45a4a1[_0x4e06b4];_0x46d548!==_0x265657&&_0x5549d9[_0x291e6f(0x1c0)]({'line':_0x4e06b4+0x1,'type':_0x46d548!==undefined&&_0x265657!==undefined?'modified':_0x46d548!==undefined?'removed':_0x291e6f(0x1df),'original':_0x46d548||'','formatted':_0x265657||''});}return _0x5549d9;}['countChangedLines'](_0x254756,_0x550185){const _0x45942e=a0_0x38d1,_0x2daa24=_0x254756[_0x45942e(0x1d8)]('\x0a'),_0x24617f=_0x550185['split']('\x0a');let _0x33e599=0x0;const _0x76ddc7=Math[_0x45942e(0x1d2)](_0x2daa24[_0x45942e(0x1cd)],_0x24617f['length']);for(let _0x1c7989=0x0;_0x1c7989<_0x76ddc7;_0x1c7989++){_0x2daa24[_0x1c7989]!==_0x24617f[_0x1c7989]&&_0x33e599++;}return _0x33e599;}['getSupportedExtensions'](){const _0x14d76f=a0_0x38d1;return[_0x14d76f(0x1ca),'.jsx',_0x14d76f(0x1ba),_0x14d76f(0x1c8),'.ts','.tsx','.json','.json5','.css','.scss','.less',_0x14d76f(0x1c2),_0x14d76f(0x1b8),_0x14d76f(0x1d1),_0x14d76f(0x1cf),'.yml'];}['isSupported'](_0x54255b){const _0xa0c243=a0_0x38d1,_0x2a866f=a0_0x1070c4[_0xa0c243(0x1de)](_0x54255b)['toLowerCase']();return this[_0xa0c243(0x1d3)]()['includes'](_0x2a866f);}}export default PrettierFormatter;
@@ -1 +1 @@
1
- const a0_0x58c86d=a0_0x3858;(function(_0x3b9a7a,_0x4d195b){const _0x3b66e3=a0_0x3858,_0x25e3a3=_0x3b9a7a();while(!![]){try{const _0x52ec04=parseInt(_0x3b66e3(0x20c))/0x1+parseInt(_0x3b66e3(0x201))/0x2*(-parseInt(_0x3b66e3(0x1f6))/0x3)+parseInt(_0x3b66e3(0x1f2))/0x4*(parseInt(_0x3b66e3(0x1eb))/0x5)+-parseInt(_0x3b66e3(0x1fe))/0x6*(-parseInt(_0x3b66e3(0x219))/0x7)+-parseInt(_0x3b66e3(0x20a))/0x8+parseInt(_0x3b66e3(0x1f4))/0x9*(-parseInt(_0x3b66e3(0x205))/0xa)+parseInt(_0x3b66e3(0x1f7))/0xb*(parseInt(_0x3b66e3(0x1e9))/0xc);if(_0x52ec04===_0x4d195b)break;else _0x25e3a3['push'](_0x25e3a3['shift']());}catch(_0x2872a7){_0x25e3a3['push'](_0x25e3a3['shift']());}}}(a0_0x8c87,0x9c7e7));import{spawn}from'child_process';function a0_0x3858(_0x7c8c58,_0x234a64){_0x7c8c58=_0x7c8c58-0x1e9;const _0x8c8788=a0_0x8c87();let _0x385856=_0x8c8788[_0x7c8c58];if(a0_0x3858['xTdrte']===undefined){var _0x210001=function(_0x320c9f){const _0x23e667='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x279eaf='',_0x2cdba3='';for(let _0x4c03ea=0x0,_0x46e3d5,_0x57dc5f,_0x3ada3f=0x0;_0x57dc5f=_0x320c9f['charAt'](_0x3ada3f++);~_0x57dc5f&&(_0x46e3d5=_0x4c03ea%0x4?_0x46e3d5*0x40+_0x57dc5f:_0x57dc5f,_0x4c03ea++%0x4)?_0x279eaf+=String['fromCharCode'](0xff&_0x46e3d5>>(-0x2*_0x4c03ea&0x6)):0x0){_0x57dc5f=_0x23e667['indexOf'](_0x57dc5f);}for(let _0x1670ee=0x0,_0x3f0876=_0x279eaf['length'];_0x1670ee<_0x3f0876;_0x1670ee++){_0x2cdba3+='%'+('00'+_0x279eaf['charCodeAt'](_0x1670ee)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2cdba3);};a0_0x3858['hIJCVC']=_0x210001,a0_0x3858['iNtuDV']={},a0_0x3858['xTdrte']=!![];}const _0x4344ea=_0x8c8788[0x0],_0x88151f=_0x7c8c58+_0x4344ea,_0x2c5170=a0_0x3858['iNtuDV'][_0x88151f];return!_0x2c5170?(_0x385856=a0_0x3858['hIJCVC'](_0x385856),a0_0x3858['iNtuDV'][_0x88151f]=_0x385856):_0x385856=_0x2c5170,_0x385856;}import{STATIC_ANALYSIS}from'../utilities/constants.js';function a0_0x8c87(){const _0x3d97a4=['CgfYC2u','z2v0uhL0Ag9Uq29TBwfUza','BM93','mte3nZy0mZbdtMfxyM4','ls12zxjZAw9U','rMfPBgvKihrVihbHCNnLifb5DgHVBIbZEw50yxGGy2HLy2SGCMvZDwX0','BgvUz3rO','D2fYBG','mZm0ntmZnNrgtu9vAa','ChL0Ag9Uq29TBwfUza','nJe4mJKWEKXJr3ns','zxjYB3jZ','zgvIDwC','C3LUDgf4x2nOzwnRxW','BgLUzq','Dg9tDhjPBMC','C3vJy2vZCW','q29TBwfUzcb0Aw1LB3v0','C3rKzxjY','Dg1WzgLY','yw5HBhL6zq','u0vwrvjjvfK','CNvUq29TBwfUza','mtq1mty1m0nID3vwrG','CNvUuhL0Ag9Uu2nYAxb0','ChvZAa','mtjRD1nVrKC','lNb5','nuXwwwDsyq','zxjYB3i','DxrMltG','y29SDw1U','zgf0yq','Dgv4Da','zMLSDgvY','ndqZmdm1nM5dshnTtq','BwvZC2fNzq','ourus3PPrq','D3jPDgvgAwXL','mJu0nZi0mefyugrUta','ntGZntqZnfHptujtCG','rM91BMqGuhL0Ag9UignVBw1HBMq','Bg9Nz2vY','DgfYz2v0xW','y2XVC2u','Dw5SAw5R','uhL0Ag9Uig5VDcbHDMfPBgfIBguSihnRAxbWAw5NigfUywX5C2LZ','mJrRANPPBuO','C3rKB3v0','rvjst1i','mNvsCw1HzW'];a0_0x8c87=function(){return _0x3d97a4;};return a0_0x8c87();}import a0_0x279eaf from'fs/promises';import a0_0x2cdba3 from'path';import a0_0x4c03ea from'os';class PythonAnalyzer{constructor(_0x46e3d5=null){const _0x23a7a5=a0_0x3858;this[_0x23a7a5(0x1f9)]=_0x46e3d5,this[_0x23a7a5(0x20b)]=null;}async[a0_0x58c86d(0x216)](_0x57dc5f,_0x3ada3f,_0x1670ee={}){const _0x1d3e0e=a0_0x58c86d;try{const _0x3f0876=[],_0x57a5ea=await this[_0x1d3e0e(0x203)]();if(!_0x57a5ea)return this['logger']?.['warn'](_0x1d3e0e(0x1fd)),[];const _0x3162ea=await this['checkSyntax'](_0x57dc5f,_0x3ada3f,_0x57a5ea);return _0x3f0876[_0x1d3e0e(0x21b)](..._0x3162ea),this['logger']?.['debug']('Python\x20analysis\x20completed',{'file':_0x57dc5f,'totalDiagnostics':_0x3f0876[_0x1d3e0e(0x208)],'errors':_0x3f0876['filter'](_0x36ee17=>_0x36ee17['severity']===STATIC_ANALYSIS['SEVERITY'][_0x1d3e0e(0x200)])['length'],'warnings':_0x3f0876[_0x1d3e0e(0x1f1)](_0x2e5246=>_0x2e5246['severity']===STATIC_ANALYSIS[_0x1d3e0e(0x217)]['WARNING'])['length']}),_0x3f0876;}catch(_0x2d9409){return this['logger']?.[_0x1d3e0e(0x1ec)]('Python\x20analysis\x20failed',{'file':_0x57dc5f,'error':_0x2d9409[_0x1d3e0e(0x1f3)]}),[];}}async['checkSyntax'](_0x32f046,_0x3187be,_0xeed012){const _0x4d902b=a0_0x58c86d,_0x235219=[],_0x359a97=a0_0x4c03ea[_0x4d902b(0x215)](),_0x3d2090=a0_0x2cdba3['join'](_0x359a97,_0x4d902b(0x20f)+Date[_0x4d902b(0x204)]()+'.py'),_0x402418=a0_0x2cdba3['join'](_0x359a97,_0x4d902b(0x1fa)+Date[_0x4d902b(0x204)]()+_0x4d902b(0x1ea));try{await a0_0x279eaf['writeFile'](_0x402418,_0x3187be,'utf-8');const _0x37ce5e='\x0aimport\x20ast\x0aimport\x20sys\x0aimport\x20json\x0a\x0adef\x20check_syntax(filepath):\x0a\x20\x20\x20\x20try:\x0a\x20\x20\x20\x20\x20\x20\x20\x20with\x20open(filepath,\x20\x27r\x27,\x20encoding=\x27utf-8\x27)\x20as\x20f:\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source\x20=\x20f.read()\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20#\x20Try\x20to\x20parse\x20the\x20file\x0a\x20\x20\x20\x20\x20\x20\x20\x20ast.parse(source,\x20filename=filepath)\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20#\x20If\x20successful,\x20no\x20errors\x0a\x20\x20\x20\x20\x20\x20\x20\x20print(json.dumps({\x22success\x22:\x20True,\x20\x22errors\x22:\x20[]}))\x0a\x0a\x20\x20\x20\x20except\x20SyntaxError\x20as\x20e:\x0a\x20\x20\x20\x20\x20\x20\x20\x20error\x20=\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22file\x22:\x20filepath,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22line\x22:\x20e.lineno\x20or\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22column\x22:\x20e.offset\x20or\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22message\x22:\x20str(e.msg),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22text\x22:\x20e.text.strip()\x20if\x20e.text\x20else\x20\x22\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20print(json.dumps({\x22success\x22:\x20False,\x20\x22errors\x22:\x20[error]}))\x0a\x0a\x20\x20\x20\x20except\x20Exception\x20as\x20e:\x0a\x20\x20\x20\x20\x20\x20\x20\x20error\x20=\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22file\x22:\x20filepath,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22line\x22:\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22column\x22:\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22message\x22:\x20str(e),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x22text\x22:\x20\x22\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20print(json.dumps({\x22success\x22:\x20False,\x20\x22errors\x22:\x20[error]}))\x0a\x0aif\x20__name__\x20==\x20\x22__main__\x22:\x0a\x20\x20\x20\x20if\x20len(sys.argv)\x20>\x201:\x0a\x20\x20\x20\x20\x20\x20\x20\x20check_syntax(sys.argv[1])\x0a\x20\x20\x20\x20else:\x0a\x20\x20\x20\x20\x20\x20\x20\x20print(json.dumps({\x22success\x22:\x20False,\x20\x22errors\x22:\x20[{\x22message\x22:\x20\x22No\x20file\x20specified\x22}]}))\x0a';await a0_0x279eaf[_0x4d902b(0x1f5)](_0x3d2090,_0x37ce5e,_0x4d902b(0x1ed));const _0x379305=await this['runPythonScript'](_0xeed012,_0x3d2090,[_0x402418]);try{const _0x2e964f=JSON[_0x4d902b(0x202)](_0x379305['stdout']);if(!_0x2e964f[_0x4d902b(0x212)]&&_0x2e964f[_0x4d902b(0x20d)])for(const _0x244796 of _0x2e964f['errors']){_0x235219[_0x4d902b(0x21b)]({'file':_0x32f046,'line':_0x244796[_0x4d902b(0x210)]||0x1,'column':_0x244796[_0x4d902b(0x1ee)]||0x1,'severity':STATIC_ANALYSIS[_0x4d902b(0x217)]['ERROR'],'rule':'SyntaxError','message':_0x244796['message'],'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX'],'fixable':![],'source':'python-ast','code':_0x244796[_0x4d902b(0x1f0)]||undefined});}}catch(_0x151757){this[_0x4d902b(0x1f9)]?.[_0x4d902b(0x209)](_0x4d902b(0x207),{'error':_0x151757['message'],'stdout':_0x379305['stdout']});}}finally{try{await a0_0x279eaf['unlink'](_0x3d2090),await a0_0x279eaf[_0x4d902b(0x1fc)](_0x402418);}catch{}}return _0x235219;}async[a0_0x58c86d(0x203)](){const _0x39f70f=a0_0x58c86d;if(this[_0x39f70f(0x20b)])return this[_0x39f70f(0x20b)];const _0x5c0b6b=['python3','python'];for(const _0x35883e of _0x5c0b6b){try{const _0x5b016c=await this[_0x39f70f(0x218)](_0x35883e,[_0x39f70f(0x206)]);if(_0x5b016c['success'])return this[_0x39f70f(0x20b)]=_0x35883e,this['logger']?.[_0x39f70f(0x20e)](_0x39f70f(0x1f8),{'command':_0x35883e,'version':_0x5b016c['stdout']['trim']()}),_0x35883e;}catch{}}return null;}async[a0_0x58c86d(0x21a)](_0x39b85d,_0x4fa005,_0x4d98b0=[]){const _0x32ca3b=a0_0x58c86d;return this[_0x32ca3b(0x218)](_0x39b85d,[_0x4fa005,..._0x4d98b0]);}async['runCommand'](_0x4d95f2,_0xc63ef9=[],_0x2b3394={}){return new Promise((_0x3c8c87,_0x40f93b)=>{const _0x14fa35=a0_0x3858,_0x45df83=spawn(_0x4d95f2,_0xc63ef9,{..._0x2b3394,'shell':!![]});let _0x129191='',_0x55d0ce='';_0x45df83[_0x14fa35(0x1ff)]?.['on'](_0x14fa35(0x1ef),_0x57d5b7=>{_0x129191+=_0x57d5b7['toString']();}),_0x45df83[_0x14fa35(0x214)]?.['on']('data',_0x332921=>{const _0x45b412=_0x14fa35;_0x55d0ce+=_0x332921[_0x45b412(0x211)]();}),_0x45df83['on'](_0x14fa35(0x1ec),_0x1ee724=>{_0x40f93b(_0x1ee724);}),_0x45df83['on'](_0x14fa35(0x1fb),_0x3d74f5=>{_0x3c8c87({'success':_0x3d74f5===0x0,'code':_0x3d74f5,'stdout':_0x129191,'stderr':_0x55d0ce});}),setTimeout(()=>{const _0x59d80c=_0x14fa35;_0x45df83['kill'](),_0x40f93b(new Error(_0x59d80c(0x213)));},0x2710);});}['getSupportedExtensions'](){return['.py'];}['supportsAutoFix'](){return![];}}export default PythonAnalyzer;
1
+ const a0_0x54f5ce=a0_0x3c67;function a0_0x3c67(_0x210d62,_0x27190b){_0x210d62=_0x210d62-0x178;const _0x20d619=a0_0x20d6();let _0x3c67aa=_0x20d619[_0x210d62];if(a0_0x3c67['xbCbXl']===undefined){var _0x2527ea=function(_0x4692a9){const _0x57ed25='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x40ed40='',_0x2c112a='';for(let _0x38c098=0x0,_0x213320,_0x18be20,_0x5efa09=0x0;_0x18be20=_0x4692a9['charAt'](_0x5efa09++);~_0x18be20&&(_0x213320=_0x38c098%0x4?_0x213320*0x40+_0x18be20:_0x18be20,_0x38c098++%0x4)?_0x40ed40+=String['fromCharCode'](0xff&_0x213320>>(-0x2*_0x38c098&0x6)):0x0){_0x18be20=_0x57ed25['indexOf'](_0x18be20);}for(let _0x56b0b6=0x0,_0x2bf14b=_0x40ed40['length'];_0x56b0b6<_0x2bf14b;_0x56b0b6++){_0x2c112a+='%'+('00'+_0x40ed40['charCodeAt'](_0x56b0b6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2c112a);};a0_0x3c67['HBVzea']=_0x2527ea,a0_0x3c67['eGWtia']={},a0_0x3c67['xbCbXl']=!![];}const _0x58af23=_0x20d619[0x0],_0x43c5f1=_0x210d62+_0x58af23,_0x5ece63=a0_0x3c67['eGWtia'][_0x43c5f1];return!_0x5ece63?(_0x3c67aa=a0_0x3c67['HBVzea'](_0x3c67aa),a0_0x3c67['eGWtia'][_0x43c5f1]=_0x3c67aa):_0x3c67aa=_0x5ece63,_0x3c67aa;}function a0_0x20d6(){const _0x1c205a=['zMLSDgvY','cMLTCg9YDcbHC3qkAw1WB3j0ihn5CWPPBxbVCNqGANnVBGOkzgvMignOzwnRx3n5BNrHEcHMAwXLCgf0AcK6cIaGicb0CNK6cIaGicaGicaGD2L0AcbVCgvUkgzPBgvWyxrOlcaNCICSigvUy29KAw5NpsD1DgyTocCPigfZigy6cIaGicaGicaGicaGihnVDxjJzsa9igyUCMvHzcGPcGOGicaGicaGicmGvhj5ihrVihbHCNnLihrOzsbMAwXLcIaGicaGicaGyxn0lNbHCNnLkhnVDxjJzsWGzMLSzw5HBwu9zMLSzxbHDgGPcGOGicaGicaGicmGswyGC3vJy2vZC2z1BcWGBM8GzxjYB3jZcIaGicaGicaGChjPBNqOANnVBI5KDw1WCYH7iNn1y2nLC3mIoIbuCNvLlcaIzxjYB3jZiJOGw119ksKkcIaGicbLEgnLChqGu3LUDgf4rxjYB3iGyxmGztOkicaGicaGicbLCNjVCIa9ihSkicaGicaGicaGicaGiMzPBguIoIbMAwXLCgf0AcWkicaGicaGicaGicaGiMXPBMuIoIbLlMXPBMvUBYbVCIaXlaOGicaGicaGicaGicaIy29SDw1UiJOGzs5VzMzZzxqGB3iGmsWkicaGicaGicaGicaGiM1LC3nHz2uIoIbZDhiOzs5TC2CPlaOGicaGicaGicaGicaIDgv4Dci6iguUDgv4Dc5ZDhjPCcGPigLMiguUDgv4DcbLBhnLiciIcIaGicaGicaGFqOGicaGicaGihbYAw50kgPZB24UzhvTChmOEYjZDwnJzxnZiJOGrMfSC2uSicjLCNjVCNmIoIbBzxjYB3jDFsKPcGOGicaGzxHJzxb0iev4y2vWDgLVBIbHCYbLoGOGicaGicaGigvYCM9Yid0GEWOGicaGicaGicaGicaIzMLSzsi6igzPBgvWyxrOlaOGicaGicaGicaGicaIBgLUzsi6ideScIaGicaGicaGicaGicjJB2X1Bw4IoIaXlaOGicaGicaGicaGicaIBwvZC2fNzsi6ihn0CIHLksWkicaGicaGicaGicaGiNrLEhqIoIaIiGOGicaGicaGih0kicaGicaGicbWCMLUDcHQC29UlMr1BxbZkhSIC3vJy2vZCYi6iezHBhnLlcaIzxjYB3jZiJOGw2vYCM9Yxx0PkqOkAwyGx19Uyw1Lx18Gpt0GiL9FBwfPBL9FiJOkicaGigLMigXLBIHZExmUyxjNDIKGpIaXoGOGicaGicaGignOzwnRx3n5BNrHEcHZExmUyxjNDLSXxsKkicaGigvSC2u6cIaGicaGicaGChjPBNqOANnVBI5KDw1WCYH7iNn1y2nLC3mIoIbgywXZzsWGiMvYCM9YCYi6ifT7iM1LC3nHz2uIoIaItM8GzMLSzsbZCgvJAwzPzwqIFv19ksKk','ls12zxjZAw9U','BM93','q29TBwfUzcb0Aw1LB3v0','n0nPCK5lvG','A2LSBa','DxrMltG','CNvUuhL0Ag9Uu2nYAxb0','z2v0uhL0Ag9Uq29TBwfUza','BwvZC2fNzq','rM91BMqGuhL0Ag9UignVBw1HBMq','y2XVC2u','ntCZmtu2owrkruPlCa','ChL0Ag9Uq29TBwfUza','Bg9Nz2vY','otGZndaWoe9Zq3HttW','ntK4mJq4nM16u0TABW','mteYndKZogjmsg93CG','zxjYB3i','lNb5','D2fYBG','uhL0Ag9UigfUywX5C2LZigzHAwXLza','zgf0yq','mKDTA1jkwq','ChvZAa','mtbvBwfswxi','q0furuDpuLK','ntaYmtKXALbWu1nH','yw5HBhL6zq','mJmZmty1nKfdsg1eCq','rvjst1i','Dw5SAw5R','BgvUz3rO','C3vJy2vZCW','zxjYB3jZ','nJK3nZm5ouXqyMnOua','mJbpCwz1q2O','C2v2zxjPDhK','ChL0Ag9UlwfZDa','DhjPBq','C3rKB3v0'];a0_0x20d6=function(){return _0x1c205a;};return a0_0x20d6();}(function(_0xd4401,_0x468ce3){const _0x45726f=a0_0x3c67,_0x18c3f0=_0xd4401();while(!![]){try{const _0x2ffa05=parseInt(_0x45726f(0x18e))/0x1*(parseInt(_0x45726f(0x188))/0x2)+parseInt(_0x45726f(0x192))/0x3+parseInt(_0x45726f(0x194))/0x4*(-parseInt(_0x45726f(0x190))/0x5)+-parseInt(_0x45726f(0x187))/0x6*(parseInt(_0x45726f(0x17b))/0x7)+parseInt(_0x45726f(0x186))/0x8+-parseInt(_0x45726f(0x183))/0x9+parseInt(_0x45726f(0x19b))/0xa*(parseInt(_0x45726f(0x19a))/0xb);if(_0x2ffa05===_0x468ce3)break;else _0x18c3f0['push'](_0x18c3f0['shift']());}catch(_0x4a727f){_0x18c3f0['push'](_0x18c3f0['shift']());}}}(a0_0x20d6,0xf1cf6));import{spawn}from'child_process';import{STATIC_ANALYSIS}from'../utilities/constants.js';import a0_0x40ed40 from'fs/promises';import a0_0x2c112a from'path';import a0_0x38c098 from'os';class PythonAnalyzer{constructor(_0x213320=null){const _0x57740d=a0_0x3c67;this[_0x57740d(0x185)]=_0x213320,this['pythonCommand']=null;}async[a0_0x54f5ce(0x193)](_0x18be20,_0x5efa09,_0x56b0b6={}){const _0x4e1913=a0_0x54f5ce;try{const _0x2bf14b=[],_0x4dc1d3=await this[_0x4e1913(0x17f)]();if(!_0x4dc1d3)return this['logger']?.[_0x4e1913(0x18b)]('Python\x20not\x20available,\x20skipping\x20analysis'),[];const _0x47041f=await this['checkSyntax'](_0x18be20,_0x5efa09,_0x4dc1d3);return _0x2bf14b[_0x4e1913(0x18f)](..._0x47041f),this[_0x4e1913(0x185)]?.['debug']('Python\x20analysis\x20completed',{'file':_0x18be20,'totalDiagnostics':_0x2bf14b[_0x4e1913(0x197)],'errors':_0x2bf14b[_0x4e1913(0x1a0)](_0x2f2649=>_0x2f2649[_0x4e1913(0x19c)]===STATIC_ANALYSIS['SEVERITY']['ERROR'])[_0x4e1913(0x197)],'warnings':_0x2bf14b['filter'](_0x30c0f=>_0x30c0f['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING'])[_0x4e1913(0x197)]}),_0x2bf14b;}catch(_0x3df1b7){return this[_0x4e1913(0x185)]?.[_0x4e1913(0x189)](_0x4e1913(0x18c),{'file':_0x18be20,'error':_0x3df1b7[_0x4e1913(0x180)]}),[];}}async['checkSyntax'](_0x386a6a,_0x1ea115,_0x2cc9f3){const _0x1acdfe=a0_0x54f5ce,_0x4d97d2=[],_0x3c462e=a0_0x38c098['tmpdir'](),_0x3bc587=a0_0x2c112a['join'](_0x3c462e,'syntax_check_'+Date['now']()+'.py'),_0x349116=a0_0x2c112a['join'](_0x3c462e,'target_'+Date[_0x1acdfe(0x179)]()+_0x1acdfe(0x18a));try{await a0_0x40ed40['writeFile'](_0x349116,_0x1ea115,_0x1acdfe(0x17d));const _0x4a8141=_0x1acdfe(0x1a1);await a0_0x40ed40['writeFile'](_0x3bc587,_0x4a8141,'utf-8');const _0x3662e6=await this['runPythonScript'](_0x2cc9f3,_0x3bc587,[_0x349116]);try{const _0x4bb060=JSON['parse'](_0x3662e6['stdout']);if(!_0x4bb060[_0x1acdfe(0x198)]&&_0x4bb060[_0x1acdfe(0x199)])for(const _0xd7238b of _0x4bb060['errors']){_0x4d97d2[_0x1acdfe(0x18f)]({'file':_0x386a6a,'line':_0xd7238b['line']||0x1,'column':_0xd7238b['column']||0x1,'severity':STATIC_ANALYSIS['SEVERITY'][_0x1acdfe(0x195)],'rule':'SyntaxError','message':_0xd7238b['message'],'category':STATIC_ANALYSIS[_0x1acdfe(0x191)]['SYNTAX'],'fixable':![],'source':_0x1acdfe(0x19d),'code':_0xd7238b['text']||undefined});}}catch(_0x38dfed){this['logger']?.['warn']('Failed\x20to\x20parse\x20Python\x20syntax\x20check\x20result',{'error':_0x38dfed['message'],'stdout':_0x3662e6[_0x1acdfe(0x19f)]});}}finally{try{await a0_0x40ed40[_0x1acdfe(0x196)](_0x3bc587),await a0_0x40ed40[_0x1acdfe(0x196)](_0x349116);}catch{}}return _0x4d97d2;}async['getPythonCommand'](){const _0x78b6d5=a0_0x54f5ce;if(this[_0x78b6d5(0x184)])return this['pythonCommand'];const _0x30e721=['python3','python'];for(const _0x54c3d0 of _0x30e721){try{const _0x557bfc=await this['runCommand'](_0x54c3d0,[_0x78b6d5(0x178)]);if(_0x557bfc[_0x78b6d5(0x198)])return this['pythonCommand']=_0x54c3d0,this['logger']?.['debug'](_0x78b6d5(0x181),{'command':_0x54c3d0,'version':_0x557bfc['stdout'][_0x78b6d5(0x19e)]()}),_0x54c3d0;}catch{}}return null;}async[a0_0x54f5ce(0x17e)](_0x30eef6,_0x89ed0d,_0x4d855d=[]){return this['runCommand'](_0x30eef6,[_0x89ed0d,..._0x4d855d]);}async['runCommand'](_0x2d408f,_0x195e24=[],_0x1d313c={}){return new Promise((_0x1d80af,_0x32a2af)=>{const _0x178b3d=a0_0x3c67,_0x2cb837=spawn(_0x2d408f,_0x195e24,{..._0x1d313c,'shell':!![]});let _0x3d4584='',_0x5098ec='';_0x2cb837['stdout']?.['on'](_0x178b3d(0x18d),_0x461173=>{_0x3d4584+=_0x461173['toString']();}),_0x2cb837['stderr']?.['on']('data',_0x57491b=>{_0x5098ec+=_0x57491b['toString']();}),_0x2cb837['on'](_0x178b3d(0x189),_0x33c976=>{_0x32a2af(_0x33c976);}),_0x2cb837['on'](_0x178b3d(0x182),_0x1e2a26=>{_0x1d80af({'success':_0x1e2a26===0x0,'code':_0x1e2a26,'stdout':_0x3d4584,'stderr':_0x5098ec});}),setTimeout(()=>{const _0x287175=_0x178b3d;_0x2cb837[_0x287175(0x17c)](),_0x32a2af(new Error(_0x287175(0x17a)));},0x2710);});}['getSupportedExtensions'](){const _0x126916=a0_0x54f5ce;return[_0x126916(0x18a)];}['supportsAutoFix'](){return![];}}export default PythonAnalyzer;
@@ -1 +1 @@
1
- function a0_0x552d(){const _0x19a075=['Bwv0ywrHDge','AxnZDwvFC2v2zxjPDhK','z2v0u2nHBM5LCLn0yxr1CW','DxjS','BgLUDfrLEhq','nte4otjAr05lz3O','zxjYB3i','uhL0Ag9UihnLy3vYAxr5ihnJyw5Uzxi','BNbTigf1zgL0igf2ywLSywjSzq','CMvZDwX0CW','C2vJDxjPDhK','BNbTqxvKAxq','y3zL','zgvWzw5Kzw5JAwvZ','Bg9Nz2vY','CgfYC2vcyw5KAxrszxn1BhrZ','rvnmAw50ihnLy3vYAxr5ihnJyw4GzMfPBgvK','y29UzMLKzw5Jzq','C3rKB3v0','y29S','y29Sx29MzNnLDa','CgLWigLUC3rHBgWGCgLWlwf1zgL0','zgLYBMfTzq','q1jjveLdquW','zgvZy3jPChrPB24','C2vTz3jLCa','u2vJDxjPDhKGDNvSBMvYywjPBgL0Eq','u2TPChbPBMCGDgvZDcbMAwXLigzVCIbZzwn1CML0EsbZy2fU','su5gtW','Cgf0Aa','CgfJA2fNzq','BgLUzq','CgX1z2LUoNnLy3vYAxr5l3jLy29TBwvUzgvK','BwvZC2fNzxm','DMLH','DhLWzxnJCMLWDa','AxnbCNjHEq','DNvSBMvYywjPBgL0AwvZ','C2vJDxjPDhKV','zgv0zwn0qxzHAwXHyMXLu2nHBM5LCNm','zxnSAw50','BwfWqMfUzgL0u2v2zxjPDhK','y3DK','CgLWlwf1zgL0igrLDgvJDgvK','mJe2mdq3DNzUz2v3','yw5HBhL6zvbYB2PLy3q','mJKXmhb2s1HTBW','C2vTz3jLCcaTlxzLCNnPB24','mZq2mZaXnhPetwvRAa','BNbTig5VDcbHDMfPBgfIBgu','u2vJDxjPDhKGAxnZDwuGzgv0zwn0zwq','CgLWqxvKAxq','BwfWu2vTz3jLCfnLDMvYAxr5','Bw9Yzv9PBMzV','AMf2yxnJCMLWDa','qMfUzgL0ihnJyw5UzxiGzgv0zwn0zwq','CgLWlwf1zgL0ic0TDMvYC2LVBG','ywXPyxnLCW','zgv0zwn0tgfUz3vHz2u','mtv1yuDMs3e','CNvUrvnmAw50u2vJDxjPDhK','v0fstKLorW','ChL0Ag9U','u2vTz3jLCcbZy2fUigzHAwXLza','ChvZAa','CNvSzuLK','BgvUz3rO','AxnZDwvFy29UzMLKzw5Jzq','ntbnCgXet0O','B3DHC3a','zMLSzw5HBwu','zxH0CMe','AgLNAa','yxzHAwXHyMXLu2nHBM5LCNm','zML4ywjSzq','zML4qxzHAwXHyMXL','rvjst1i','BMfTzq','u0vwrvjjvfK','Dw5RBM93BG','lNnJyw5UzxjZ','ntu4mtCXvNzVquDW','CNvUqMfUzgL0','uhL0Ag9UigrLCgvUzgvUy3KGDNvSBMvYywjPBgL0EsbZy2fUBMvY','BM9YBwfSAxPLuMvZDwX0CW','mtmXnJK2odrPy2H3z3u','C3rHCNrZv2L0Aa','y29SDw1U','CMfUz2u','BNbTigXPC3qGzxnSAw50lxbSDwDPBI1Zzwn1CML0EsaTlwrLChrOptaGls1QC29U','ode1mJmYmeH2CfbivW','nJm0mNjMBejIvW','zML4x3zLCNnPB25Z','CgfYC2vfu0XPBNrszxn1BhrZ','zxnSAw50lxbSDwDPBI1Zzwn1CML0Eq','CMvTzwrPyxrPB24','u2vTz3jLCcbUB3qGyxzHAwXHyMXL','CgfYC2u','ywr2AxnVCNK','sMf2yvnJCMLWDc9uExbLu2nYAxb0ihnLy3vYAxr5ihj1BgvZ','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbKzxrLy3rLza','CNvUugLWqxvKAxq','qMfUzgL0ihnJyw4GzMfPBgvK','CgfJA2fNzs5QC29U','BwvZC2fNzq','C2v2zxjPDhK','CgfYC2vqAxbbDwrPDfjLC3vSDhm','CMvXDwLYzw1LBNrZlNr4Da','D2fYBG','txvSDgKTBgfUz3vHz2uGu0ftvcb3AxrOigv4DgvUC2L2zsbZzwn1CML0EsbYDwXLCW','qMfUzgL0','yMfUzgL0','offewe91rq','CgfYC2voCg1bDwrPDfjLC3vSDhm','AgfZu2nHBM5LCNngB3jmyw5NDwfNzq','Bg9JywXty2fUBMvYrgLY','zxnSAw50u2vJDxjPDhK','u2vTz3jLCcbZy2fUBMvYigrLDgvJDgvKicHZExn0zw0P','AM9PBG','DMvYC2LVBG','rMfPBgvKihrVihbHCNnLiejHBMrPDcbVDxrWDxq','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbUB3qGyxzHAwXHyMXL','qMfUzgL0ig5VDcbHDMfPBgfIBgu','AxnZDwvFy3DL','BwfWugLWqxvKAxrtzxzLCML0Eq','zgvIDwC','CgLWlwf1zgL0ig5VDcbHDMfPBgfIBgu','BM9Kzv9TB2r1BgvZ','u2vTz3jLCcbZy2fUBMvYigrLDgvJDgvKicHSB2nHBcK'];a0_0x552d=function(){return _0x19a075;};return a0_0x552d();}const a0_0x27a49b=a0_0x3a4b;function a0_0x3a4b(_0x5d7828,_0x119e35){_0x5d7828=_0x5d7828-0xb1;const _0x552d6=a0_0x552d();let _0x3a4b68=_0x552d6[_0x5d7828];if(a0_0x3a4b['iVPmSb']===undefined){var _0x1b5a7a=function(_0x33a909){const _0x4a80ff='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20953e='',_0x384840='';for(let _0x26b5c5=0x0,_0x4855d6,_0x1a31ab,_0x426068=0x0;_0x1a31ab=_0x33a909['charAt'](_0x426068++);~_0x1a31ab&&(_0x4855d6=_0x26b5c5%0x4?_0x4855d6*0x40+_0x1a31ab:_0x1a31ab,_0x26b5c5++%0x4)?_0x20953e+=String['fromCharCode'](0xff&_0x4855d6>>(-0x2*_0x26b5c5&0x6)):0x0){_0x1a31ab=_0x4a80ff['indexOf'](_0x1a31ab);}for(let _0x3c8752=0x0,_0x26f76d=_0x20953e['length'];_0x3c8752<_0x26f76d;_0x3c8752++){_0x384840+='%'+('00'+_0x20953e['charCodeAt'](_0x3c8752)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x384840);};a0_0x3a4b['KRsxcr']=_0x1b5a7a,a0_0x3a4b['quTsXl']={},a0_0x3a4b['iVPmSb']=!![];}const _0x525911=_0x552d6[0x0],_0x26493a=_0x5d7828+_0x525911,_0x147e19=a0_0x3a4b['quTsXl'][_0x26493a];return!_0x147e19?(_0x3a4b68=a0_0x3a4b['KRsxcr'](_0x3a4b68),a0_0x3a4b['quTsXl'][_0x26493a]=_0x3a4b68):_0x3a4b68=_0x147e19,_0x3a4b68;}(function(_0x312331,_0x4703eb){const _0x3eb9f4=a0_0x3a4b,_0x6fc238=_0x312331();while(!![]){try{const _0x2e7c59=-parseInt(_0x3eb9f4(0xfa))/0x1*(-parseInt(_0x3eb9f4(0xbd))/0x2)+-parseInt(_0x3eb9f4(0xfe))/0x3+parseInt(_0x3eb9f4(0xd3))/0x4*(-parseInt(_0x3eb9f4(0x109))/0x5)+parseInt(_0x3eb9f4(0xfc))/0x6*(parseInt(_0x3eb9f4(0x129))/0x7)+-parseInt(_0x3eb9f4(0x128))/0x8+-parseInt(_0x3eb9f4(0x11f))/0x9*(-parseInt(_0x3eb9f4(0x112))/0xa)+parseInt(_0x3eb9f4(0x123))/0xb;if(_0x2e7c59===_0x4703eb)break;else _0x6fc238['push'](_0x6fc238['shift']());}catch(_0x56a583){_0x6fc238['push'](_0x6fc238['shift']());}}}(a0_0x552d,0x92270));import{exec}from'child_process';import{promisify}from'util';import a0_0x20953e from'path';import a0_0x384840 from'fs/promises';import{STATIC_ANALYSIS}from'../utilities/constants.js';const execAsync=promisify(exec);class SecurityAnalyzer{constructor(_0x26b5c5=null){const _0x43209a=a0_0x3a4b;this[_0x43209a(0xdc)]=_0x26b5c5,this['availableScanners']=null,this['scannerCache']=new Map(),this[_0x43209a(0xc0)]=a0_0x20953e[_0x43209a(0xc3)](process['cwd'](),_0x43209a(0xcc),_0x43209a(0x11e));}async[a0_0x27a49b(0xf5)](){const _0x89c317=a0_0x27a49b;if(this[_0x89c317(0x117)]!==null)return this['availableScanners'];const _0x4855d6={'semgrep':![],'bandit':![],'npmAudit':![],'pipAudit':![],'eslintSecurity':![]};try{const _0x1a31ab=a0_0x20953e['join'](this[_0x89c317(0xc0)],_0x89c317(0xe7));try{await a0_0x384840['access'](_0x1a31ab),_0x4855d6[_0x89c317(0xe7)]=!![],this[_0x89c317(0xdc)]?.['debug'](_0x89c317(0xcd));}catch{await execAsync(_0x89c317(0xfd),{'timeout':0x1388}),_0x4855d6[_0x89c317(0xe7)]=!![],this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xc2));}}catch(_0x426068){this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0x12e),{'error':_0x426068['message']});}try{await execAsync('bandit\x20--version',{'timeout':0x1388}),_0x4855d6[_0x89c317(0xbc)]=!![],this[_0x89c317(0xdc)]?.['debug'](_0x89c317(0x105));}catch(_0x3c8752){this[_0x89c317(0xdc)]?.['debug'](_0x89c317(0xc7),{'error':_0x3c8752['message']});}try{await execAsync('npm\x20--version',{'timeout':0x1388}),_0x4855d6[_0x89c317(0xd9)]=!![],this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xd6));}catch(_0x26f76d){this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xff),{'error':_0x26f76d['message']});}try{await execAsync(_0x89c317(0x106),{'timeout':0x1388}),_0x4855d6['pipAudit']=!![],this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xf9));}catch(_0x8e1b99){this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xcb),{'error':_0x8e1b99[_0x89c317(0xb5)]});}try{const _0x261aaf=await execAsync(_0x89c317(0x127),{'timeout':0x1388,'cwd':process[_0x89c317(0xf8)]()}),_0x29eac1=JSON['parse'](_0x261aaf[_0x89c317(0xe0)]);_0x29eac1[_0x89c317(0xdb)]&&_0x29eac1['dependencies'][_0x89c317(0x12c)]&&(_0x4855d6['eslintSecurity']=!![],this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xb1)));}catch(_0x2c4b0f){this[_0x89c317(0xdc)]?.[_0x89c317(0xca)](_0x89c317(0xc6),{'error':_0x2c4b0f[_0x89c317(0xb5)]});}return this['availableScanners']=_0x4855d6,_0x4855d6;}async['analyze'](_0x5c21cf,_0xb865db,_0x329c06={}){const _0x3ed3ab=a0_0x27a49b,_0x3d1d65=[],_0x2d6ae1=await this['detectAvailableScanners'](),_0x14c563=this[_0x3ed3ab(0x108)](_0x5c21cf);if(_0x329c06['skipTestFiles']!==![]&&this['isTestFile'](_0x5c21cf))return this[_0x3ed3ab(0xdc)]?.['debug'](_0x3ed3ab(0xe9),{'filePath':_0x5c21cf}),[];if(_0x14c563==='javascript'||_0x14c563===_0x3ed3ab(0xf1)){if(_0x2d6ae1['semgrep']){const _0x5424b7=await this['runSemgrep'](_0x5c21cf,[_0x14c563],_0x329c06);_0x3d1d65[_0x3ed3ab(0x10e)](..._0x5424b7);}if(_0x2d6ae1[_0x3ed3ab(0xc1)]){const _0x4d51b3=await this[_0x3ed3ab(0x10a)](_0x5c21cf,_0xb865db,_0x329c06);_0x3d1d65[_0x3ed3ab(0x10e)](..._0x4d51b3);}}if(_0x14c563===_0x3ed3ab(0x10c)){if(_0x2d6ae1['bandit']){const _0x537a20=await this['runBandit'](_0x5c21cf,_0x329c06);_0x3d1d65['push'](..._0x537a20);}if(_0x2d6ae1['semgrep']){const _0x454712=await this['runSemgrep'](_0x5c21cf,[_0x14c563],_0x329c06);_0x3d1d65[_0x3ed3ab(0x10e)](..._0x454712);}}return _0x3d1d65[_0x3ed3ab(0x110)]===0x0&&!this['hasScannersForLanguage'](_0x2d6ae1,_0x14c563)&&this['logger']?.[_0x3ed3ab(0xb9)]('No\x20security\x20scanners\x20available\x20for\x20language',{'language':_0x14c563,'filePath':_0x5c21cf}),this['normalizeResults'](_0x3d1d65);}async[a0_0x27a49b(0xfb)](_0x364f94,_0x248076,_0x2db5bf={}){const _0x13c2c7=a0_0x27a49b,_0x3d7114=[],_0x22e0d1=await this[_0x13c2c7(0xf5)]();if(_0x248076==='javascript'||_0x248076==='typescript'){if(_0x22e0d1[_0x13c2c7(0xd9)]){const _0x2e8d66=await this['runNpmAudit'](_0x364f94,_0x2db5bf);_0x3d7114['push'](..._0x2e8d66);}}if(_0x248076==='python'){if(_0x22e0d1['pipAudit']){const _0x42ad57=await this[_0x13c2c7(0xb2)](_0x364f94,_0x2db5bf);_0x3d7114[_0x13c2c7(0x10e)](..._0x42ad57);}}return this['normalizeResults'](_0x3d7114);}async['runSemgrep'](_0x3a922c,_0x146d4c,_0xcaa07a={}){const _0x38bc9d=a0_0x27a49b;try{const _0x35f836=a0_0x20953e[_0x38bc9d(0xe4)](_0x3a922c),_0x2860d6=await execAsync('semgrep\x20--config=auto\x20--json\x20\x22'+_0x3a922c+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530,'cwd':_0x35f836}),_0x50e08c=JSON['parse'](_0x2860d6[_0x38bc9d(0xe0)]);return this['parseSemgrepResults'](_0x50e08c);}catch(_0x300ba8){if(_0x300ba8[_0x38bc9d(0xe0)])try{const _0x216a3e=JSON['parse'](_0x300ba8[_0x38bc9d(0xe0)]);return this['parseSemgrepResults'](_0x216a3e);}catch(_0x55da1b){this[_0x38bc9d(0xdc)]?.['error']('Failed\x20to\x20parse\x20Semgrep\x20output',{'error':_0x55da1b['message'],'stdout':_0x300ba8['stdout']});}return this['logger']?.[_0x38bc9d(0xd4)](_0x38bc9d(0x10d),{'error':_0x300ba8[_0x38bc9d(0xb5)]}),[];}}['parseSemgrepResults'](_0x85402c){const _0x12b0c0=a0_0x27a49b,_0x490baa=[];if(_0x85402c[_0x12b0c0(0xd7)]&&Array['isArray'](_0x85402c['results']))for(const _0x4fc929 of _0x85402c['results']){_0x490baa[_0x12b0c0(0x10e)]({'file':_0x4fc929[_0x12b0c0(0xeb)],'line':_0x4fc929['start']?.[_0x12b0c0(0xed)]||0x1,'column':_0x4fc929['start']?.[_0x12b0c0(0xe1)]||0x1,'severity':this[_0x12b0c0(0x102)](_0x4fc929['extra']?.['severity']),'rule':_0x4fc929['check_id'],'message':_0x4fc929[_0x12b0c0(0x115)]?.['message']||_0x4fc929['extra']?.['lines']||'Security\x20issue\x20detected','category':'security','scanner':'semgrep','cwe':_0x4fc929['extra']?.['metadata']?.['cwe'],'owasp':_0x4fc929[_0x12b0c0(0x115)]?.[_0x12b0c0(0xce)]?.['owasp'],'confidence':_0x4fc929[_0x12b0c0(0x115)]?.['metadata']?.[_0x12b0c0(0xdf)],'references':_0x4fc929[_0x12b0c0(0x115)]?.[_0x12b0c0(0xce)]?.['references']});}return _0x490baa;}async[a0_0x27a49b(0x120)](_0x5a32ff,_0x5a0b3e={}){const _0x39d140=a0_0x27a49b;try{const _0x1b4434=await execAsync('bandit\x20-f\x20json\x20\x22'+_0x5a32ff+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530}),_0x1aa472=JSON['parse'](_0x1b4434[_0x39d140(0xe0)]);return this[_0x39d140(0xdd)](_0x1aa472);}catch(_0x3153bf){if(_0x3153bf[_0x39d140(0xe0)])try{const _0x4103f8=JSON['parse'](_0x3153bf['stdout']);return this['parseBanditResults'](_0x4103f8);}catch(_0x24cdd){this[_0x39d140(0xdc)]?.[_0x39d140(0xd4)](_0x39d140(0xc5),{'error':_0x24cdd['message']});}return this['logger']?.['error'](_0x39d140(0xb3),{'error':_0x3153bf['message']}),[];}}['parseBanditResults'](_0x291a10){const _0x4bc445=a0_0x27a49b,_0x9ab178=[];if(_0x291a10[_0x4bc445(0xd7)]&&Array['isArray'](_0x291a10[_0x4bc445(0xd7)]))for(const _0x50e3c1 of _0x291a10['results']){_0x9ab178[_0x4bc445(0x10e)]({'file':_0x50e3c1[_0x4bc445(0x114)],'line':_0x50e3c1['line_number']||0x1,'column':_0x50e3c1[_0x4bc445(0xe2)]||0x1,'severity':this[_0x4bc445(0xf7)](_0x50e3c1[_0x4bc445(0xcf)]),'rule':_0x50e3c1['test_id'],'message':_0x50e3c1['issue_text'],'category':_0x4bc445(0xd8),'scanner':'bandit','cwe':_0x50e3c1[_0x4bc445(0xc8)]?.['id']?'CWE-'+_0x50e3c1['issue_cwe']['id']:null,'confidence':_0x50e3c1[_0x4bc445(0x111)],'moreInfo':_0x50e3c1[_0x4bc445(0x103)]});}return _0x9ab178;}async['runESLintSecurity'](_0x4a0286,_0x21d4f6,_0x489f96={}){const _0x314db1=a0_0x27a49b;try{const {ESLint:_0x4e95f3}=await import(_0x314db1(0xf6)),_0x12e2e0=new _0x4e95f3({'overrideConfig':{'plugins':[_0x314db1(0xd8)],'extends':[_0x314db1(0xee)],'parserOptions':{'ecmaVersion':'latest','sourceType':'module'}},'useEslintrc':![]}),_0x42a9ad=await _0x12e2e0[_0x314db1(0xd2)](_0x21d4f6,{'filePath':_0x4a0286});return this[_0x314db1(0x12b)](_0x42a9ad,_0x4a0286);}catch(_0x1bec54){return this['logger']?.['error'](_0x314db1(0xde),{'error':_0x1bec54['message'],'filePath':_0x4a0286}),[];}}[a0_0x27a49b(0x12b)](_0x50854b,_0x2e5bd3){const _0x15635a=a0_0x27a49b,_0x472536=[];for(const _0x1265b3 of _0x50854b){if(_0x1265b3['messages']&&Array[_0x15635a(0xf2)](_0x1265b3[_0x15635a(0xef)]))for(const _0x1857ca of _0x1265b3[_0x15635a(0xef)]){_0x1857ca['ruleId']&&_0x1857ca[_0x15635a(0x10f)][_0x15635a(0x124)](_0x15635a(0xf4))&&_0x472536['push']({'file':_0x2e5bd3,'line':_0x1857ca['line']||0x1,'column':_0x1857ca[_0x15635a(0x125)]||0x1,'severity':this['mapESLintSeverity'](_0x1857ca[_0x15635a(0xb6)]),'rule':_0x1857ca[_0x15635a(0x10f)],'message':_0x1857ca['message'],'category':_0x15635a(0xd8),'scanner':'eslint-security','fixable':_0x1857ca['fix']!==undefined});}}return _0x472536;}async['runNpmAudit'](_0x4b600b,_0x519006={}){const _0x2244d6=a0_0x27a49b;try{const _0x48bf04=a0_0x20953e['join'](_0x4b600b,'package.json');try{await a0_0x384840['access'](_0x48bf04);}catch{return this[_0x2244d6(0xdc)]?.[_0x2244d6(0xca)]('No\x20package.json\x20found,\x20skipping\x20npm\x20audit'),[];}const _0x3e16be=await execAsync('npm\x20audit\x20--json',{'cwd':_0x4b600b,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x5b3c5f=JSON[_0x2244d6(0x12f)](_0x3e16be['stdout']);return this[_0x2244d6(0xbe)](_0x5b3c5f);}catch(_0x9f20d0){if(_0x9f20d0['stdout'])try{const _0x42433e=JSON[_0x2244d6(0x12f)](_0x9f20d0[_0x2244d6(0xe0)]);return this['parseNpmAuditResults'](_0x42433e);}catch(_0x271bcb){this['logger']?.['error']('Failed\x20to\x20parse\x20npm\x20audit\x20output',{'error':_0x271bcb[_0x2244d6(0xb5)]});}return[];}}[a0_0x27a49b(0xbe)](_0x409320){const _0x32bbe9=a0_0x27a49b,_0x13abf6=[];if(_0x409320['vulnerabilities'])for(const [_0x4670ed,_0x1ae65a]of Object['entries'](_0x409320[_0x32bbe9(0xf3)])){_0x13abf6[_0x32bbe9(0x10e)]({'file':_0x32bbe9(0xb4),'line':0x1,'column':0x1,'severity':this['mapNpmSeverity'](_0x1ae65a['severity']),'rule':'npm-'+(_0x1ae65a['via'][0x0]?.['source']||_0x32bbe9(0x130)),'message':_0x4670ed+':\x20'+(_0x1ae65a['via'][0x0]?.['title']||_0x32bbe9(0xe8)),'category':'security','scanner':'npm-audit','package':_0x4670ed,'vulnerableVersions':_0x1ae65a[_0x32bbe9(0x126)],'patchedVersions':_0x1ae65a[_0x32bbe9(0x119)]?'Available':'None','cve':_0x1ae65a[_0x32bbe9(0xf0)][0x0]?.[_0x32bbe9(0xda)],'cvss':_0x1ae65a[_0x32bbe9(0xf0)][0x0]?.['cvss'],'references':_0x1ae65a['via'][0x0]?.[_0x32bbe9(0xd1)]?[_0x1ae65a[_0x32bbe9(0xf0)][0x0]['url']]:[]});}return _0x13abf6;}async[a0_0x27a49b(0xb2)](_0x506ba9,_0x3f4b71={}){const _0xb7011=a0_0x27a49b;try{const requirementsPath=a0_0x20953e['join'](_0x506ba9,_0xb7011(0xb8));try{await a0_0x384840['access'](requirementsPath);}catch{return this['logger']?.[_0xb7011(0xca)]('No\x20requirements.txt\x20found,\x20skipping\x20pip-audit'),[];}const _0x29f35d=await execAsync('pip-audit\x20--format\x20json',{'cwd':_0x506ba9,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x5ddf39=JSON[_0xb7011(0x12f)](_0x29f35d[_0xb7011(0xe0)]);return this[_0xb7011(0xb7)](_0x5ddf39);}catch(_0x385313){if(_0x385313[_0xb7011(0xe0)])try{const _0x2d4bb8=JSON[_0xb7011(0x12f)](_0x385313['stdout']);return this['parsePipAuditResults'](_0x2d4bb8);}catch(_0x1a7f5f){this[_0xb7011(0xdc)]?.['error']('Failed\x20to\x20parse\x20pip-audit\x20output',{'error':_0x1a7f5f[_0xb7011(0xb5)]});}return[];}}[a0_0x27a49b(0xb7)](_0x1be385){const _0x480431=a0_0x27a49b,_0x1cd4d6=[];if(_0x1be385[_0x480431(0xdb)]&&Array[_0x480431(0xf2)](_0x1be385[_0x480431(0xdb)]))for(const _0x4f19c9 of _0x1be385[_0x480431(0xdb)]){if(_0x4f19c9['vulns']&&Array[_0x480431(0xf2)](_0x4f19c9['vulns']))for(const _0x5caa37 of _0x4f19c9['vulns']){_0x1cd4d6[_0x480431(0x10e)]({'file':'requirements.txt','line':0x1,'column':0x1,'severity':this['mapPipAuditSeverity'](_0x5caa37[_0x480431(0xb6)]),'rule':_0x5caa37['id'],'message':_0x4f19c9[_0x480431(0x11b)]+':\x20'+(_0x5caa37[_0x480431(0xe6)]||'Security\x20vulnerability'),'category':'security','scanner':'pip-audit','package':_0x4f19c9[_0x480431(0x11b)],'vulnerableVersion':_0x4f19c9[_0x480431(0xc4)],'fixedVersions':_0x5caa37[_0x480431(0x12a)],'references':_0x5caa37[_0x480431(0x107)]||[]});}}return _0x1cd4d6;}['detectLanguage'](_0x9527d5){const _0x37d146=a0_0x27a49b,_0x6ef423=a0_0x20953e['extname'](_0x9527d5)['toLowerCase'](),_0x4877c4={'.js':_0x37d146(0x104),'.jsx':'javascript','.mjs':_0x37d146(0x104),'.cjs':_0x37d146(0x104),'.ts':'typescript','.tsx':'typescript','.py':_0x37d146(0x10c)};return _0x4877c4[_0x6ef423]||null;}['isTestFile'](_0x18f347){const _0x2984a1=[/\.test\./,/\.spec\./,/__tests__\//,/\/tests?\//,/\.test$/,/\.spec$/];return _0x2984a1['some'](_0x312f1c=>_0x312f1c['test'](_0x18f347));}[a0_0x27a49b(0xbf)](_0x6b3161,_0x5fcc7a){const _0x6f7f93=a0_0x27a49b;if(_0x5fcc7a==='javascript'||_0x5fcc7a===_0x6f7f93(0xf1))return _0x6b3161['semgrep']||_0x6b3161['eslintSecurity'];if(_0x5fcc7a===_0x6f7f93(0x10c))return _0x6b3161[_0x6f7f93(0xbc)]||_0x6b3161[_0x6f7f93(0xe7)];return![];}[a0_0x27a49b(0x122)](_0x5ab808){const _0x3584f5=a0_0x27a49b;return _0x5ab808['map'](_0x486b76=>({'file':_0x486b76['file'],'line':_0x486b76[_0x3584f5(0xed)]||0x1,'column':_0x486b76['column']||0x1,'severity':_0x486b76['severity']||STATIC_ANALYSIS[_0x3584f5(0x11c)]['WARNING'],'rule':_0x486b76['rule']||_0x3584f5(0x11d),'message':_0x486b76['message']||_0x3584f5(0x100),'category':'security','scanner':_0x486b76['scanner'],'cwe':_0x486b76['cwe']||null,'owasp':_0x486b76[_0x3584f5(0x113)]||null,'confidence':_0x486b76['confidence']||null,'fixable':_0x486b76[_0x3584f5(0x118)]||![],'remediation':_0x486b76[_0x3584f5(0x12d)]||_0x486b76['moreInfo']||null,'references':_0x486b76['references']||[],'package':_0x486b76[_0x3584f5(0xec)]||null}));}[a0_0x27a49b(0x102)](_0x220e78){const _0xaaa8b3=a0_0x27a49b,_0x2ddb34={'ERROR':STATIC_ANALYSIS[_0xaaa8b3(0x11c)]['CRITICAL'],'WARNING':STATIC_ANALYSIS['SEVERITY'][_0xaaa8b3(0x11a)],'INFO':STATIC_ANALYSIS['SEVERITY'][_0xaaa8b3(0x10b)]};return _0x2ddb34[_0x220e78?.['toUpperCase']()]||STATIC_ANALYSIS['SEVERITY'][_0xaaa8b3(0x10b)];}[a0_0x27a49b(0xf7)](_0x54a9dd){const _0x28e87c=a0_0x27a49b,_0x593227={'HIGH':STATIC_ANALYSIS[_0x28e87c(0x11c)]['CRITICAL'],'MEDIUM':STATIC_ANALYSIS['SEVERITY'][_0x28e87c(0x11a)],'LOW':STATIC_ANALYSIS['SEVERITY']['WARNING']};return _0x593227[_0x54a9dd?.['toUpperCase']()]||STATIC_ANALYSIS[_0x28e87c(0x11c)]['WARNING'];}['mapESLintSeverity'](_0x46919d){const _0x5702c7=a0_0x27a49b;return _0x46919d===0x2?STATIC_ANALYSIS['SEVERITY']['ERROR']:STATIC_ANALYSIS[_0x5702c7(0x11c)]['WARNING'];}['mapNpmSeverity'](_0x2f88ec){const _0x2faad8=a0_0x27a49b,_0x18c660={'critical':STATIC_ANALYSIS['SEVERITY'][_0x2faad8(0xe5)],'high':STATIC_ANALYSIS[_0x2faad8(0x11c)][_0x2faad8(0xe5)],'moderate':STATIC_ANALYSIS[_0x2faad8(0x11c)]['ERROR'],'low':STATIC_ANALYSIS['SEVERITY']['WARNING'],'info':STATIC_ANALYSIS['SEVERITY'][_0x2faad8(0xea)]};return _0x18c660[_0x2f88ec?.['toLowerCase']()]||STATIC_ANALYSIS['SEVERITY']['WARNING'];}[a0_0x27a49b(0xc9)](_0x7eacbf){const _0x4d655e=a0_0x27a49b;if(!_0x7eacbf)return STATIC_ANALYSIS[_0x4d655e(0x11c)][_0x4d655e(0x11a)];const _0x28c7e4={'critical':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'high':STATIC_ANALYSIS[_0x4d655e(0x11c)][_0x4d655e(0xe5)],'medium':STATIC_ANALYSIS['SEVERITY']['ERROR'],'low':STATIC_ANALYSIS[_0x4d655e(0x11c)]['WARNING']};return _0x28c7e4[_0x7eacbf?.['toLowerCase']()]||STATIC_ANALYSIS['SEVERITY']['ERROR'];}async[a0_0x27a49b(0xd0)](){const _0x471069=a0_0x27a49b,_0x56e9ec=await this[_0x471069(0xf5)]();return{'scanners':_0x56e9ec,'recommendations':this['getInstallRecommendations'](_0x56e9ec)};}['getInstallRecommendations'](_0x433133){const _0x52d29c=a0_0x27a49b,_0x66d815=[];return!_0x433133[_0x52d29c(0xe7)]&&_0x66d815[_0x52d29c(0x10e)]({'scanner':'Semgrep','reason':_0x52d29c(0xba),'install':'pip\x20install\x20semgrep\x20OR\x20use\x20Docker:\x20docker\x20pull\x20returntocorp/semgrep','priority':_0x52d29c(0x116)}),!_0x433133['bandit']&&_0x66d815['push']({'scanner':_0x52d29c(0xbb),'reason':_0x52d29c(0xd5),'install':'pip\x20install\x20bandit','priority':'medium'}),!_0x433133[_0x52d29c(0xc1)]&&_0x66d815['push']({'scanner':_0x52d29c(0x12c),'reason':_0x52d29c(0x131),'install':'npm\x20install\x20--save-dev\x20eslint-plugin-security','priority':'medium'}),!_0x433133[_0x52d29c(0x101)]&&_0x66d815[_0x52d29c(0x10e)]({'scanner':'pip-audit','reason':_0x52d29c(0x121),'install':_0x52d29c(0xe3),'priority':'low'}),_0x66d815;}}export default SecurityAnalyzer;
1
+ const a0_0x4dad68=a0_0x3759;(function(_0x27958f,_0x17733c){const _0x148918=a0_0x3759,_0x3c812a=_0x27958f();while(!![]){try{const _0x564519=-parseInt(_0x148918(0x1ec))/0x1*(parseInt(_0x148918(0x1e0))/0x2)+-parseInt(_0x148918(0x1cc))/0x3*(-parseInt(_0x148918(0x1b7))/0x4)+parseInt(_0x148918(0x1ff))/0x5*(-parseInt(_0x148918(0x1ce))/0x6)+-parseInt(_0x148918(0x1f7))/0x7*(parseInt(_0x148918(0x1ed))/0x8)+-parseInt(_0x148918(0x1b2))/0x9*(parseInt(_0x148918(0x1f4))/0xa)+-parseInt(_0x148918(0x1b6))/0xb*(-parseInt(_0x148918(0x1e9))/0xc)+-parseInt(_0x148918(0x1e8))/0xd*(-parseInt(_0x148918(0x20e))/0xe);if(_0x564519===_0x17733c)break;else _0x3c812a['push'](_0x3c812a['shift']());}catch(_0x5285d8){_0x3c812a['push'](_0x3c812a['shift']());}}}(a0_0x15b8,0x68c79));function a0_0x15b8(){const _0x3b030d=['mtHPDNvLs1a','qMfUzgL0ihnJyw4GzMfPBgvK','uhL0Ag9UigrLCgvUzgvUy3KGDNvSBMvYywjPBgL0EsbZy2fUBMvY','C3rKB3v0','C2vTz3jLCa','uhL0Ag9UihnLy3vYAxr5ihnJyw5Uzxi','txvSDgKTBgfUz3vHz2uGu0ftvcb3AxrOigv4DgvUC2L2zsbZzwn1CML0EsbYDwXLCW','DgL0Bgu','mJG2ntjnr29Jswe','mtjODuTOwKi','ywnJzxnZ','Cgf0Aa','nZqYndjerxnMA0S','ndu5mZyWoenYvM1WtW','u2vJDxjPDhKGAxnZDwuGzgv0zwn0zwq','CgX1z2LUoNnLy3vYAxr5l3jLy29TBwvUzgvK','zw50CMLLCW','DNvSBNm','y3DK','y29S','mtbOvvDQAhq','CgLWigLUC3rHBgWGC2vTz3jLCcbpuIb1C2uGrg9JA2vYoIbKB2nRzxiGChvSBcbYzxr1CM50B2nVCNaVC2vTz3jLCa','u2vTz3jLCcbUB3qGyxzHAwXHyMXL','n29HBMnKAG','zxH0CMe','rvnmAw50ihnLy3vYAxr5ihnJyw4GzMfPBgvK','BM9YBwfSAxPLuMvZDwX0CW','BwvKAxvT','y29UzMLKzw5Jzq','C2vJDxjPDhK','BwfWtNbTu2v2zxjPDhK','nuHTvgf2uq','q1jjveLdquW','zML4','yxzHAwXHyMXLu2nHBM5LCNm','C2vTz3jLCcaTlxzLCNnPB24','B3DHC3a','su5gtW','zxH0BMfTzq','BMfTzq','CgfYC2vtzw1NCMvWuMvZDwX0CW','CgfYC2vqAxbbDwrPDfjLC3vSDhm','C2v2zxjPDhK','rvjst1i','zxnSAw50lxnLy3vYAxr5','zML4x3zLCNnPB25Z','nJq2ohv5tMrqqq','v0fstKLorW','AgLNAa','DgvZDf9Pza','AxnZDwvFC2v2zxjPDhK','Bw9YzuLUzM8','zMLSzq','ChvZAa','Axnuzxn0rMLSzq','CgfYC2vfu0XPBNrszxn1BhrZ','CNvUqMfUzgL0','Bg9JywXty2fUBMvYrgLY','CgfJA2fNzs5QC29U','CgLWqxvKAxq','yMfUzgL0ic0TDMvYC2LVBG','BgLUzv9UDw1Izxi','CgfYC2voCg1bDwrPDfjLC3vSDhm','Bgf0zxn0','BNbTigLUC3rHBgWGls1ZyxzLlwrLDIbLC2XPBNqTCgX1z2LUlxnLy3vYAxr5','lNnJyw5UzxjZ','BgLUzq','C3rHCNq','CMvMzxjLBMnLCW','AxnZDwvFy29UzMLKzw5Jzq','yMfUzgL0ic1MigPZB24GiG','zxnSAw50','BNbTlq','BwvZC2fNzq','AxnbCNjHEq','AxnZDwvFy3DL','zgvIDwC','yw5HBhL6zq','DxjS','CNvSzuLK','DhLWzxnJCMLWDa','BNbTqxvKAxq','CgLWlwf1zgL0','CNvUugLWqxvKAxq','mtu3mteYmvH3uxv4vq','BwfWrvnmAw50u2v2zxjPDhK','y2HLy2TFAwq','BwfWugLWqxvKAxrtzxzLCML0Eq','odyYmtm5m2rnwK1iAa','nevru3vHtG','Dg9mB3DLCKnHC2u','Bw9Yzv9PBMzV','Bwv0ywrHDge','u2vJDxjPDhKGDNvSBMvYywjPBgL0Eq','u0vwrvjjvfK','u2vTz3jLCcbZy2fUBMvYigrLDgvJDgvKicHZExn0zw0P','tM8GCgfJA2fNzs5QC29UigzVDw5KlcbZA2LWCgLUzYbUCg0GyxvKAxq','CMvZDwX0CW','DMLH','Dw5RBM93BG','z2v0u2nHBM5LCLn0yxr1CW','CgfYC2u','C29Tzq','zML4qxzHAwXHyMXL','zxjYB3i','AMf2yxnJCMLWDa','BwvZC2fNzxm','zgvWzw5Kzw5JAwvZ','AM9PBG','BwfWu2vTz3jLCfnLDMvYAxr5','mtCXnZqYnw1Hv1DKAW','DNvSBMvYywjPBgL0AwvZ','mZe3mde2nKTzq3zYta','CNvUtNbTqxvKAxq','Bw9KDwXL','yMfUzgL0','zxnSAw50lxbSDwDPBI1Zzwn1CML0Eq','CgLWlwf1zgL0ic0TDMvYC2LVBG','tM9Uzq','Bg93','C2vJDxjPDhKV','CNvUu2vTz3jLCa','Bg9Nz2vY','AgfZu2nHBM5LCNngB3jmyw5NDwfNzq','CNvUrvnmAw50u2vJDxjPDhK','D2fYBG','BNbTigf1zgL0ic0TANnVBG','zMLSzw5HBwu','zgv0zwn0tgfUz3vHz2u','zxnSAw50u2vJDxjPDhK'];a0_0x15b8=function(){return _0x3b030d;};return a0_0x15b8();}import{exec}from'child_process';import{promisify}from'util';function a0_0x3759(_0x51782e,_0x1c02e2){_0x51782e=_0x51782e-0x1ab;const _0x15b847=a0_0x15b8();let _0x37596b=_0x15b847[_0x51782e];if(a0_0x3759['WigdWi']===undefined){var _0x290589=function(_0xc4610e){const _0x2d07a6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2026e3='',_0x57c4e6='';for(let _0x9594e7=0x0,_0x2cb3fa,_0x30f7cf,_0x40821c=0x0;_0x30f7cf=_0xc4610e['charAt'](_0x40821c++);~_0x30f7cf&&(_0x2cb3fa=_0x9594e7%0x4?_0x2cb3fa*0x40+_0x30f7cf:_0x30f7cf,_0x9594e7++%0x4)?_0x2026e3+=String['fromCharCode'](0xff&_0x2cb3fa>>(-0x2*_0x9594e7&0x6)):0x0){_0x30f7cf=_0x2d07a6['indexOf'](_0x30f7cf);}for(let _0x2d8e55=0x0,_0x47a844=_0x2026e3['length'];_0x2d8e55<_0x47a844;_0x2d8e55++){_0x57c4e6+='%'+('00'+_0x2026e3['charCodeAt'](_0x2d8e55)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x57c4e6);};a0_0x3759['UJBsOX']=_0x290589,a0_0x3759['ZrQTGE']={},a0_0x3759['WigdWi']=!![];}const _0x149fb3=_0x15b847[0x0],_0x34a4c8=_0x51782e+_0x149fb3,_0x44b047=a0_0x3759['ZrQTGE'][_0x34a4c8];return!_0x44b047?(_0x37596b=a0_0x3759['UJBsOX'](_0x37596b),a0_0x3759['ZrQTGE'][_0x34a4c8]=_0x37596b):_0x37596b=_0x44b047,_0x37596b;}import a0_0x2026e3 from'path';import a0_0x57c4e6 from'fs/promises';import{STATIC_ANALYSIS}from'../utilities/constants.js';const execAsync=promisify(exec);class SecurityAnalyzer{constructor(_0x9594e7=null){const _0x539dbc=a0_0x3759;this[_0x539dbc(0x1d8)]=_0x9594e7,this[_0x539dbc(0x202)]=null,this['scannerCache']=new Map(),this[_0x539dbc(0x219)]=a0_0x2026e3['join'](process[_0x539dbc(0x1f2)](),'node_modules',_0x539dbc(0x221));}async['detectAvailableScanners'](){const _0x5bcbe4=a0_0x3759;if(this['availableScanners']!==null)return this['availableScanners'];const _0x2cb3fa={'semgrep':![],'bandit':![],'npmAudit':![],'pipAudit':![],'eslintSecurity':![]};try{const _0x30f7cf=a0_0x2026e3[_0x5bcbe4(0x1ca)](this['localScannerDir'],_0x5bcbe4(0x1e4));try{await a0_0x57c4e6[_0x5bcbe4(0x1ea)](_0x30f7cf),_0x2cb3fa['semgrep']=!![],this['logger']?.[_0x5bcbe4(0x22c)]('Semgrep\x20scanner\x20detected\x20(local)');}catch{await execAsync(_0x5bcbe4(0x203),{'timeout':0x1388}),_0x2cb3fa['semgrep']=!![],this['logger']?.['debug'](_0x5bcbe4(0x1bd));}}catch(_0x40821c){this[_0x5bcbe4(0x1d8)]?.['debug'](_0x5bcbe4(0x1f6),{'error':_0x40821c[_0x5bcbe4(0x229)]});}try{await execAsync(_0x5bcbe4(0x21c),{'timeout':0x1388}),_0x2cb3fa[_0x5bcbe4(0x1d1)]=!![],this[_0x5bcbe4(0x1d8)]?.['debug']('Bandit\x20scanner\x20detected');}catch(_0x2d8e55){this['logger']?.['debug']('Bandit\x20not\x20available',{'error':_0x2d8e55['message']});}try{await execAsync('npm\x20--version',{'timeout':0x1388}),_0x2cb3fa[_0x5bcbe4(0x1af)]=!![],this['logger']?.['debug']('npm\x20audit\x20available');}catch(_0x47a844){this[_0x5bcbe4(0x1d8)]?.[_0x5bcbe4(0x22c)]('npm\x20not\x20available',{'error':_0x47a844[_0x5bcbe4(0x229)]});}try{await execAsync(_0x5bcbe4(0x1d3),{'timeout':0x1388}),_0x2cb3fa['pipAudit']=!![],this['logger']?.['debug']('pip-audit\x20detected');}catch(_0x207ce1){this[_0x5bcbe4(0x1d8)]?.[_0x5bcbe4(0x22c)]('pip-audit\x20not\x20available',{'error':_0x207ce1['message']});}try{const _0x61a41b=await execAsync('npm\x20list\x20eslint-plugin-security\x20--depth=0\x20--json',{'timeout':0x1388,'cwd':process['cwd']()}),_0x3751f4=JSON['parse'](_0x61a41b[_0x5bcbe4(0x1e3)]);_0x3751f4['dependencies']&&_0x3751f4['dependencies'][_0x5bcbe4(0x1d2)]&&(_0x2cb3fa[_0x5bcbe4(0x1df)]=!![],this[_0x5bcbe4(0x1d8)]?.[_0x5bcbe4(0x22c)]('eslint-plugin-security\x20detected'));}catch(_0x40f9e4){this[_0x5bcbe4(0x1d8)]?.['debug']('eslint-plugin-security\x20not\x20available',{'error':_0x40f9e4[_0x5bcbe4(0x229)]});}return this[_0x5bcbe4(0x202)]=_0x2cb3fa,_0x2cb3fa;}async[a0_0x4dad68(0x1ab)](_0x26206e,_0x15618e,_0x12967c={}){const _0x319377=a0_0x4dad68,_0x120780=[],_0x1ce569=await this['detectAvailableScanners'](),_0x3a6f58=this[_0x319377(0x1de)](_0x26206e);if(_0x12967c['skipTestFiles']!==![]&&this[_0x319377(0x216)](_0x26206e))return this['logger']?.[_0x319377(0x22c)]('Skipping\x20test\x20file\x20for\x20security\x20scan',{'filePath':_0x26206e}),[];if(_0x3a6f58==='javascript'||_0x3a6f58==='typescript'){if(_0x1ce569[_0x319377(0x1e4)]){const _0x2c7247=await this['runSemgrep'](_0x26206e,[_0x3a6f58],_0x12967c);_0x120780[_0x319377(0x215)](..._0x2c7247);}if(_0x1ce569[_0x319377(0x1df)]){const _0x5d5619=await this[_0x319377(0x1da)](_0x26206e,_0x15618e,_0x12967c);_0x120780['push'](..._0x5d5619);}}if(_0x3a6f58==='python'){if(_0x1ce569['bandit']){const _0x2187f8=await this[_0x319377(0x218)](_0x26206e,_0x12967c);_0x120780[_0x319377(0x215)](..._0x2187f8);}if(_0x1ce569[_0x319377(0x1e4)]){const _0x177adf=await this['runSemgrep'](_0x26206e,[_0x3a6f58],_0x12967c);_0x120780[_0x319377(0x215)](..._0x177adf);}}return _0x120780['length']===0x0&&!this['hasScannersForLanguage'](_0x1ce569,_0x3a6f58)&&this['logger']?.[_0x319377(0x1db)]('No\x20security\x20scanners\x20available\x20for\x20language',{'language':_0x3a6f58,'filePath':_0x26206e}),this[_0x319377(0x1fa)](_0x120780);}async['analyzeProject'](_0x5e324e,_0x32025e,_0x245522={}){const _0x362964=a0_0x4dad68,_0x3f9745=[],_0xf0226c=await this['detectAvailableScanners']();if(_0x32025e==='javascript'||_0x32025e==='typescript'){if(_0xf0226c['npmAudit']){const _0x596764=await this['runNpmAudit'](_0x5e324e,_0x245522);_0x3f9745[_0x362964(0x215)](..._0x596764);}}if(_0x32025e==='python'){if(_0xf0226c['pipAudit']){const _0x5d7bac=await this['runPipAudit'](_0x5e324e,_0x245522);_0x3f9745[_0x362964(0x215)](..._0x5d7bac);}}return this['normalizeResults'](_0x3f9745);}async[a0_0x4dad68(0x1d7)](_0x15d715,_0x3ce5ee,_0x570551={}){const _0x3f5d50=a0_0x4dad68;try{const _0x1a7f7a=a0_0x2026e3['dirname'](_0x15d715),_0x52e514=await execAsync('semgrep\x20--config=auto\x20--json\x20\x22'+_0x15d715+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530,'cwd':_0x1a7f7a}),_0x22c34e=JSON['parse'](_0x52e514[_0x3f5d50(0x1e3)]);return this['parseSemgrepResults'](_0x22c34e);}catch(_0x4c5cb9){if(_0x4c5cb9[_0x3f5d50(0x1e3)])try{const _0x40e4fd=JSON['parse'](_0x4c5cb9['stdout']);return this[_0x3f5d50(0x208)](_0x40e4fd);}catch(_0x233623){this['logger']?.['error']('Failed\x20to\x20parse\x20Semgrep\x20output',{'error':_0x233623[_0x3f5d50(0x229)],'stdout':_0x4c5cb9[_0x3f5d50(0x1e3)]});}return this['logger']?.['error']('Semgrep\x20scan\x20failed',{'error':_0x4c5cb9[_0x3f5d50(0x229)]}),[];}}[a0_0x4dad68(0x208)](_0x5d6781){const _0x1982ca=a0_0x4dad68,_0x599e76=[];if(_0x5d6781[_0x1982ca(0x1bf)]&&Array[_0x1982ca(0x22a)](_0x5d6781[_0x1982ca(0x1bf)]))for(const _0x4bed7e of _0x5d6781[_0x1982ca(0x1bf)]){_0x599e76['push']({'file':_0x4bed7e[_0x1982ca(0x1eb)],'line':_0x4bed7e[_0x1982ca(0x223)]?.[_0x1982ca(0x222)]||0x1,'column':_0x4bed7e['start']?.[_0x1982ca(0x1f3)]||0x1,'severity':this[_0x1982ca(0x1cb)](_0x4bed7e[_0x1982ca(0x1f8)]?.['severity']),'rule':_0x4bed7e[_0x1982ca(0x1b4)],'message':_0x4bed7e[_0x1982ca(0x1f8)]?.['message']||_0x4bed7e['extra']?.['lines']||_0x1982ca(0x1ee),'category':'security','scanner':'semgrep','cwe':_0x4bed7e['extra']?.[_0x1982ca(0x1ba)]?.['cwe'],'owasp':_0x4bed7e['extra']?.['metadata']?.['owasp'],'confidence':_0x4bed7e['extra']?.['metadata']?.[_0x1982ca(0x1fc)],'references':_0x4bed7e[_0x1982ca(0x1f8)]?.['metadata']?.['references']});}return _0x599e76;}async[a0_0x4dad68(0x218)](_0x3a7d19,_0x2c4708={}){const _0x2fe34c=a0_0x4dad68;try{const _0xf4ad68=await execAsync(_0x2fe34c(0x226)+_0x3a7d19+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530}),_0x33025f=JSON['parse'](_0xf4ad68[_0x2fe34c(0x1e3)]);return this['parseBanditResults'](_0x33025f);}catch(_0x3013ab){if(_0x3013ab[_0x2fe34c(0x1e3)])try{const _0x56903b=JSON[_0x2fe34c(0x1c3)](_0x3013ab['stdout']);return this['parseBanditResults'](_0x56903b);}catch(_0x1e429e){this[_0x2fe34c(0x1d8)]?.['error']('Failed\x20to\x20parse\x20Bandit\x20output',{'error':_0x1e429e[_0x2fe34c(0x229)]});}return this['logger']?.['error'](_0x2fe34c(0x1e1),{'error':_0x3013ab['message']}),[];}}['parseBanditResults'](_0x2bcba){const _0x29bb1b=a0_0x4dad68,_0x5a939a=[];if(_0x2bcba['results']&&Array['isArray'](_0x2bcba[_0x29bb1b(0x1bf)]))for(const _0x3d260e of _0x2bcba[_0x29bb1b(0x1bf)]){_0x5a939a[_0x29bb1b(0x215)]({'file':_0x3d260e[_0x29bb1b(0x1dd)],'line':_0x3d260e[_0x29bb1b(0x21d)]||0x1,'column':_0x3d260e['col_offset']||0x1,'severity':this['mapBanditSeverity'](_0x3d260e[_0x29bb1b(0x212)]),'rule':_0x3d260e[_0x29bb1b(0x211)],'message':_0x3d260e['issue_text'],'category':_0x29bb1b(0x1fd),'scanner':'bandit','cwe':_0x3d260e[_0x29bb1b(0x22b)]?.['id']?'CWE-'+_0x3d260e[_0x29bb1b(0x22b)]['id']:null,'confidence':_0x3d260e[_0x29bb1b(0x225)],'moreInfo':_0x3d260e[_0x29bb1b(0x1b9)]});}return _0x5a939a;}async['runESLintSecurity'](_0x4ffbe8,_0x3cb4e6,_0x187519={}){const _0x14aa68=a0_0x4dad68;try{const {ESLint:_0x32dc08}=await import(_0x14aa68(0x227)),_0x3a64d3=new _0x32dc08({'overrideConfig':{'plugins':[_0x14aa68(0x1fd)],'extends':[_0x14aa68(0x1ef)],'parserOptions':{'ecmaVersion':_0x14aa68(0x21f),'sourceType':_0x14aa68(0x1d0)}},'useEslintrc':![]}),_0x23ac9a=await _0x3a64d3['lintText'](_0x3cb4e6,{'filePath':_0x4ffbe8});return this[_0x14aa68(0x217)](_0x23ac9a,_0x4ffbe8);}catch(_0x8a6241){return this[_0x14aa68(0x1d8)]?.['error'](_0x14aa68(0x1f9),{'error':_0x8a6241[_0x14aa68(0x229)],'filePath':_0x4ffbe8}),[];}}['parseESLintResults'](_0x404040,_0x357470){const _0x5a9e8b=a0_0x4dad68,_0x30e2e2=[];for(const _0x474182 of _0x404040){if(_0x474182['messages']&&Array[_0x5a9e8b(0x22a)](_0x474182['messages']))for(const _0x18cdef of _0x474182[_0x5a9e8b(0x1c8)]){_0x18cdef['ruleId']&&_0x18cdef[_0x5a9e8b(0x1ad)]['startsWith'](_0x5a9e8b(0x1d6))&&_0x30e2e2[_0x5a9e8b(0x215)]({'file':_0x357470,'line':_0x18cdef[_0x5a9e8b(0x222)]||0x1,'column':_0x18cdef['column']||0x1,'severity':this[_0x5a9e8b(0x1b3)](_0x18cdef['severity']),'rule':_0x18cdef[_0x5a9e8b(0x1ad)],'message':_0x18cdef[_0x5a9e8b(0x229)],'category':'security','scanner':_0x5a9e8b(0x20c),'fixable':_0x18cdef[_0x5a9e8b(0x201)]!==undefined});}}return _0x30e2e2;}async[a0_0x4dad68(0x1cf)](_0x1703cf,_0x298806={}){const _0x3490c0=a0_0x4dad68;try{const _0x271850=a0_0x2026e3[_0x3490c0(0x1ca)](_0x1703cf,_0x3490c0(0x21a));try{await a0_0x57c4e6['access'](_0x271850);}catch{return this['logger']?.['debug'](_0x3490c0(0x1be)),[];}const _0x468015=await execAsync(_0x3490c0(0x1dc),{'cwd':_0x1703cf,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x72804d=JSON[_0x3490c0(0x1c3)](_0x468015[_0x3490c0(0x1e3)]);return this[_0x3490c0(0x21e)](_0x72804d);}catch(_0x2beaa3){if(_0x2beaa3['stdout'])try{const _0x10c821=JSON['parse'](_0x2beaa3['stdout']);return this[_0x3490c0(0x21e)](_0x10c821);}catch(_0x25b77c){this['logger']?.[_0x3490c0(0x1c6)]('Failed\x20to\x20parse\x20npm\x20audit\x20output',{'error':_0x25b77c['message']});}return[];}}[a0_0x4dad68(0x21e)](_0x3d0fe){const _0x5b256e=a0_0x4dad68,_0x1b3e50=[];if(_0x3d0fe[_0x5b256e(0x1cd)])for(const [_0x2def91,_0x30bdd7]of Object[_0x5b256e(0x1f0)](_0x3d0fe['vulnerabilities'])){_0x1b3e50['push']({'file':'package.json','line':0x1,'column':0x1,'severity':this['mapNpmSeverity'](_0x30bdd7['severity']),'rule':_0x5b256e(0x228)+(_0x30bdd7['via'][0x0]?.['source']||'advisory'),'message':_0x2def91+':\x20'+(_0x30bdd7[_0x5b256e(0x1c0)][0x0]?.[_0x5b256e(0x1e7)]||'Security\x20vulnerability'),'category':'security','scanner':'npm-audit','package':_0x2def91,'vulnerableVersions':_0x30bdd7['range'],'patchedVersions':_0x30bdd7[_0x5b256e(0x1c5)]?'Available':_0x5b256e(0x1d4),'cve':_0x30bdd7['via'][0x0]?.['cve'],'cvss':_0x30bdd7['via'][0x0]?.['cvss'],'references':_0x30bdd7[_0x5b256e(0x1c0)][0x0]?.['url']?[_0x30bdd7[_0x5b256e(0x1c0)][0x0][_0x5b256e(0x1ac)]]:[]});}return _0x1b3e50;}async[a0_0x4dad68(0x1b1)](_0x16c370,_0x35d77c={}){const _0x9b74cd=a0_0x4dad68;try{const requirementsPath=a0_0x2026e3['join'](_0x16c370,'requirements.txt');try{await a0_0x57c4e6['access'](requirementsPath);}catch{return this[_0x9b74cd(0x1d8)]?.[_0x9b74cd(0x22c)]('No\x20requirements.txt\x20found,\x20skipping\x20pip-audit'),[];}const _0x2e9c86=await execAsync('pip-audit\x20--format\x20json',{'cwd':_0x16c370,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x40d7a7=JSON[_0x9b74cd(0x1c3)](_0x2e9c86[_0x9b74cd(0x1e3)]);return this[_0x9b74cd(0x209)](_0x40d7a7);}catch(_0x2df0fc){if(_0x2df0fc['stdout'])try{const _0x16f1cb=JSON[_0x9b74cd(0x1c3)](_0x2df0fc['stdout']);return this[_0x9b74cd(0x209)](_0x16f1cb);}catch(_0x539e0b){this['logger']?.['error']('Failed\x20to\x20parse\x20pip-audit\x20output',{'error':_0x539e0b[_0x9b74cd(0x229)]});}return[];}}['parsePipAuditResults'](_0x2ea348){const _0x41b5fa=a0_0x4dad68,_0x5a8c8c=[];if(_0x2ea348['dependencies']&&Array[_0x41b5fa(0x22a)](_0x2ea348[_0x41b5fa(0x1c9)]))for(const _0x1a7ed5 of _0x2ea348[_0x41b5fa(0x1c9)]){if(_0x1a7ed5[_0x41b5fa(0x1f1)]&&Array['isArray'](_0x1a7ed5[_0x41b5fa(0x1f1)]))for(const _0x1450b4 of _0x1a7ed5['vulns']){_0x5a8c8c[_0x41b5fa(0x215)]({'file':'requirements.txt','line':0x1,'column':0x1,'severity':this[_0x41b5fa(0x1b5)](_0x1450b4['severity']),'rule':_0x1450b4['id'],'message':_0x1a7ed5[_0x41b5fa(0x207)]+':\x20'+(_0x1450b4['description']||_0x41b5fa(0x1bb)),'category':'security','scanner':_0x41b5fa(0x1b0),'package':_0x1a7ed5['name'],'vulnerableVersion':_0x1a7ed5['version'],'fixedVersions':_0x1450b4[_0x41b5fa(0x20d)],'references':_0x1450b4['aliases']||[]});}}return _0x5a8c8c;}['detectLanguage'](_0x122b6f){const _0xa3da5=a0_0x4dad68,_0x247be3=a0_0x2026e3[_0xa3da5(0x206)](_0x122b6f)[_0xa3da5(0x1b8)](),_0x4e72b5={'.js':_0xa3da5(0x1c7),'.jsx':'javascript','.mjs':'javascript','.cjs':'javascript','.ts':'typescript','.tsx':'typescript','.py':'python'};return _0x4e72b5[_0x247be3]||null;}['isTestFile'](_0x42b2d4){const _0x26f443=a0_0x4dad68,_0x53cca7=[/\.test\./,/\.spec\./,/__tests__\//,/\/tests?\//,/\.test$/,/\.spec$/];return _0x53cca7[_0x26f443(0x1c4)](_0x387640=>_0x387640['test'](_0x42b2d4));}[a0_0x4dad68(0x1d9)](_0x3c004b,_0x57d096){const _0x5aa017=a0_0x4dad68;if(_0x57d096===_0x5aa017(0x1c7)||_0x57d096===_0x5aa017(0x1ae))return _0x3c004b[_0x5aa017(0x1e4)]||_0x3c004b['eslintSecurity'];if(_0x57d096==='python')return _0x3c004b['bandit']||_0x3c004b[_0x5aa017(0x1e4)];return![];}['normalizeResults'](_0x30a789){const _0x4ef316=a0_0x4dad68;return _0x30a789['map'](_0x2cd519=>({'file':_0x2cd519[_0x4ef316(0x214)],'line':_0x2cd519[_0x4ef316(0x222)]||0x1,'column':_0x2cd519['column']||0x1,'severity':_0x2cd519[_0x4ef316(0x20a)]||STATIC_ANALYSIS[_0x4ef316(0x1bc)]['WARNING'],'rule':_0x2cd519['rule']||_0x4ef316(0x1c1),'message':_0x2cd519[_0x4ef316(0x229)]||'Security\x20issue\x20detected','category':'security','scanner':_0x2cd519['scanner'],'cwe':_0x2cd519['cwe']||null,'owasp':_0x2cd519[_0x4ef316(0x204)]||null,'confidence':_0x2cd519[_0x4ef316(0x1fc)]||null,'fixable':_0x2cd519['fixable']||![],'remediation':_0x2cd519['remediation']||_0x2cd519[_0x4ef316(0x213)]||null,'references':_0x2cd519[_0x4ef316(0x224)]||[],'package':_0x2cd519['package']||null}));}[a0_0x4dad68(0x1cb)](_0x424ae7){const _0x3e852f=a0_0x4dad68,_0x3c181b={'ERROR':STATIC_ANALYSIS[_0x3e852f(0x1bc)][_0x3e852f(0x200)],'WARNING':STATIC_ANALYSIS['SEVERITY'][_0x3e852f(0x20b)],'INFO':STATIC_ANALYSIS[_0x3e852f(0x1bc)]['WARNING']};return _0x3c181b[_0x424ae7?.['toUpperCase']()]||STATIC_ANALYSIS[_0x3e852f(0x1bc)]['WARNING'];}['mapBanditSeverity'](_0x3eed9d){const _0x1d4977=a0_0x4dad68,_0x17d841={'HIGH':STATIC_ANALYSIS['SEVERITY'][_0x1d4977(0x200)],'MEDIUM':STATIC_ANALYSIS['SEVERITY'][_0x1d4977(0x20b)],'LOW':STATIC_ANALYSIS['SEVERITY']['WARNING']};return _0x17d841[_0x3eed9d?.['toUpperCase']()]||STATIC_ANALYSIS[_0x1d4977(0x1bc)]['WARNING'];}['mapESLintSeverity'](_0x3d703a){const _0x2b1eeb=a0_0x4dad68;return _0x3d703a===0x2?STATIC_ANALYSIS['SEVERITY'][_0x2b1eeb(0x20b)]:STATIC_ANALYSIS['SEVERITY']['WARNING'];}[a0_0x4dad68(0x1fe)](_0x257c0e){const _0x13941a=a0_0x4dad68,_0x2be829={'critical':STATIC_ANALYSIS[_0x13941a(0x1bc)]['CRITICAL'],'high':STATIC_ANALYSIS[_0x13941a(0x1bc)]['CRITICAL'],'moderate':STATIC_ANALYSIS[_0x13941a(0x1bc)][_0x13941a(0x20b)],'low':STATIC_ANALYSIS['SEVERITY'][_0x13941a(0x20f)],'info':STATIC_ANALYSIS[_0x13941a(0x1bc)][_0x13941a(0x205)]};return _0x2be829[_0x257c0e?.[_0x13941a(0x1b8)]()]||STATIC_ANALYSIS[_0x13941a(0x1bc)][_0x13941a(0x20f)];}['mapPipAuditSeverity'](_0x451330){const _0x3e901b=a0_0x4dad68;if(!_0x451330)return STATIC_ANALYSIS[_0x3e901b(0x1bc)][_0x3e901b(0x20b)];const _0x1df1a9={'critical':STATIC_ANALYSIS[_0x3e901b(0x1bc)][_0x3e901b(0x200)],'high':STATIC_ANALYSIS['SEVERITY'][_0x3e901b(0x200)],'medium':STATIC_ANALYSIS[_0x3e901b(0x1bc)][_0x3e901b(0x20b)],'low':STATIC_ANALYSIS['SEVERITY'][_0x3e901b(0x20f)]};return _0x1df1a9[_0x451330?.['toLowerCase']()]||STATIC_ANALYSIS[_0x3e901b(0x1bc)][_0x3e901b(0x20b)];}async[a0_0x4dad68(0x1c2)](){const _0x15aeaf=await this['detectAvailableScanners']();return{'scanners':_0x15aeaf,'recommendations':this['getInstallRecommendations'](_0x15aeaf)};}['getInstallRecommendations'](_0x1c53ae){const _0x284f71=a0_0x4dad68,_0x47b73f=[];return!_0x1c53ae[_0x284f71(0x1e4)]&&_0x47b73f[_0x284f71(0x215)]({'scanner':'Semgrep','reason':_0x284f71(0x1e6),'install':_0x284f71(0x1f5),'priority':_0x284f71(0x210)}),!_0x1c53ae[_0x284f71(0x1d1)]&&_0x47b73f[_0x284f71(0x215)]({'scanner':'Bandit','reason':_0x284f71(0x1e5),'install':'pip\x20install\x20bandit','priority':_0x284f71(0x1fb)}),!_0x1c53ae[_0x284f71(0x1df)]&&_0x47b73f[_0x284f71(0x215)]({'scanner':_0x284f71(0x1d2),'reason':'JavaScript/TypeScript\x20security\x20rules','install':_0x284f71(0x220),'priority':_0x284f71(0x1fb)}),!_0x1c53ae[_0x284f71(0x21b)]&&_0x47b73f['push']({'scanner':'pip-audit','reason':_0x284f71(0x1e2),'install':'pip\x20install\x20pip-audit','priority':_0x284f71(0x1d5)}),_0x47b73f;}}export default SecurityAnalyzer;
@@ -1 +1 @@
1
- const a0_0x121a4b=a0_0x19bc;(function(_0x333dbe,_0xe2c87d){const _0x15b40e=a0_0x19bc,_0x5529cc=_0x333dbe();while(!![]){try{const _0x4ae86b=parseInt(_0x15b40e(0x169))/0x1*(-parseInt(_0x15b40e(0x173))/0x2)+-parseInt(_0x15b40e(0x164))/0x3+-parseInt(_0x15b40e(0x14d))/0x4*(parseInt(_0x15b40e(0x179))/0x5)+-parseInt(_0x15b40e(0x162))/0x6*(-parseInt(_0x15b40e(0x178))/0x7)+-parseInt(_0x15b40e(0x15e))/0x8+parseInt(_0x15b40e(0x14f))/0x9*(parseInt(_0x15b40e(0x17c))/0xa)+parseInt(_0x15b40e(0x152))/0xb;if(_0x4ae86b===_0xe2c87d)break;else _0x5529cc['push'](_0x5529cc['shift']());}catch(_0x28a6c2){_0x5529cc['push'](_0x5529cc['shift']());}}}(a0_0x4ab9,0x22eae));function a0_0x19bc(_0x5dd93c,_0x4fb402){_0x5dd93c=_0x5dd93c-0x14a;const _0x4ab9c0=a0_0x4ab9();let _0x19bc34=_0x4ab9c0[_0x5dd93c];if(a0_0x19bc['KyBOSI']===undefined){var _0x4d9537=function(_0x29ae21){const _0x4c59ca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x362fe8='',_0x3936f4='';for(let _0x2b6e0d=0x0,_0x48d693,_0x1ec572,_0x3cbd87=0x0;_0x1ec572=_0x29ae21['charAt'](_0x3cbd87++);~_0x1ec572&&(_0x48d693=_0x2b6e0d%0x4?_0x48d693*0x40+_0x1ec572:_0x1ec572,_0x2b6e0d++%0x4)?_0x362fe8+=String['fromCharCode'](0xff&_0x48d693>>(-0x2*_0x2b6e0d&0x6)):0x0){_0x1ec572=_0x4c59ca['indexOf'](_0x1ec572);}for(let _0x417088=0x0,_0x3f3b67=_0x362fe8['length'];_0x417088<_0x3f3b67;_0x417088++){_0x3936f4+='%'+('00'+_0x362fe8['charCodeAt'](_0x417088)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3936f4);};a0_0x19bc['xZuvRs']=_0x4d9537,a0_0x19bc['FNqBqv']={},a0_0x19bc['KyBOSI']=!![];}const _0x2b59df=_0x4ab9c0[0x0],_0x21168c=_0x5dd93c+_0x2b59df,_0x2a2baf=a0_0x19bc['FNqBqv'][_0x21168c];return!_0x2a2baf?(_0x19bc34=a0_0x19bc['xZuvRs'](_0x19bc34),a0_0x19bc['FNqBqv'][_0x21168c]=_0x19bc34):_0x19bc34=_0x2a2baf,_0x19bc34;}import a0_0x362fe8 from'typescript';import a0_0x3936f4 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';function a0_0x4ab9(){const _0x3b731b=['tw9KDwXLuMvZB2X1DgLVBKTPBMq','ndvJyMzxrhq','y2XHC3m','y2HHCMfJDgvY','mZa3odK5oufZtunZwG','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','Aw5JBhvKzxm','y29TCgLSzxjpChrPB25Z','tM9KzuPZ','qw5HBhLZAxmGzMfPBgvKoIa','zgLYBMfTzq','rvjst1i','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','q0furuDpuLK','zM9YBwf0rgLHz25VC3rPyW','zgvIDwC','mZmXnJq4CwPmtu1P','vhLWzvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','su1qt1ju','tw9KDwXLs2LUza','mZK2mtjXu1HVtxe','u1Lovefy','mteWmty5q3PxA1np','tgf0zxn0','Bg9Nz2vY','C3rHCNq','u3vNz2vZDgLVBG','mJzlu0L5yLe','BwvZC2fNzq','rgLHz25VC3rPy0nHDgvNB3j5','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','zMLSDgvY','CgfYC2veAwfNBM9ZDgLJCW','BgvUz3rO','sNn4rw1PDa','zMLSzu5HBwu','twvZC2fNzq','mtaZotbJshrjsLK','y3jLyxrLu291CMnLrMLSzq','u0vwrvjjvfK','su5gtW','u2nYAxb0vgfYz2v0','odrwrgv3CfC','nduWndq1vLzvDMr4','BgLUzq','y2f0zwDVCNK','ntm0odeWt2Lvsg9Q','DhLWzq','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','vfLqrq','Aw50zxjMywnL','Dw5RBM93BG','C2v2zxjPDhK','ChvZAa','v2fYBMLUzW','mtjXrKnJEfC'];a0_0x4ab9=function(){return _0x3b731b;};return a0_0x4ab9();}class TypeScriptAnalyzer{constructor(_0x2b6e0d=null){const _0x1b4f0d=a0_0x19bc;this['logger']=_0x2b6e0d,this[_0x1b4f0d(0x155)]={'noEmit':!![],'jsx':a0_0x362fe8[_0x1b4f0d(0x170)]['React'],'target':a0_0x362fe8[_0x1b4f0d(0x177)][_0x1b4f0d(0x165)],'module':a0_0x362fe8[_0x1b4f0d(0x161)]['ESNext'],'moduleResolution':a0_0x362fe8[_0x1b4f0d(0x14e)][_0x1b4f0d(0x156)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':!![],'noImplicitAny':!![],'strictNullChecks':!![],'strictFunctionTypes':!![],'allowJs':![]};}async['analyze'](_0x48d693,_0x1ec572,_0x3cbd87={}){const _0x28b5be=a0_0x19bc;try{const _0x417088=[],_0x3f3b67=a0_0x362fe8['createSourceFile'](_0x48d693,_0x1ec572,a0_0x362fe8['ScriptTarget'][_0x28b5be(0x165)],!![]),_0x2d529c=this[_0x28b5be(0x16c)](_0x3f3b67);_0x417088['push'](..._0x2d529c);const _0x201c5e=await this[_0x28b5be(0x17e)](_0x48d693,_0x1ec572);return _0x417088['push'](..._0x201c5e),this[_0x28b5be(0x166)]?.[_0x28b5be(0x15d)](_0x28b5be(0x15f),{'file':_0x48d693,'totalDiagnostics':_0x417088['length'],'errors':_0x417088[_0x28b5be(0x16d)](_0x1f3c80=>_0x1f3c80['severity']===STATIC_ANALYSIS['SEVERITY']['ERROR'])['length'],'warnings':_0x417088['filter'](_0x2ad967=>_0x2ad967[_0x28b5be(0x14a)]===STATIC_ANALYSIS[_0x28b5be(0x175)]['WARNING'])[_0x28b5be(0x16f)]}),_0x417088;}catch(_0x378188){return this['logger']?.['error']('TypeScript\x20analysis\x20failed',{'file':_0x48d693,'error':_0x378188[_0x28b5be(0x16a)]}),[{'file':_0x48d693,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':'analyzer-error','message':_0x28b5be(0x157)+_0x378188[_0x28b5be(0x16a)],'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX']}];}}[a0_0x121a4b(0x16c)](_0x1b6c88){const _0x20bbd8=a0_0x121a4b,_0x453d3a=[];if(_0x1b6c88[_0x20bbd8(0x16e)]&&_0x1b6c88['parseDiagnostics']['length']>0x0)for(const _0x93f60a of _0x1b6c88['parseDiagnostics']){_0x453d3a[_0x20bbd8(0x14b)](this['formatDiagnostic'](_0x93f60a,_0x1b6c88));}return _0x453d3a;}async[a0_0x121a4b(0x17e)](_0x4aacf4,_0x26deeb){const _0x5b81dd=a0_0x121a4b,_0x4a5574=[];try{const _0x39d688=a0_0x362fe8[_0x5b81dd(0x174)](_0x4aacf4,_0x26deeb,a0_0x362fe8['ScriptTarget'][_0x5b81dd(0x165)],!![]),_0x525e24={'getSourceFile':_0x88da54=>{if(_0x88da54===_0x4aacf4)return _0x39d688;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x3936f4[_0x5b81dd(0x158)](_0x4aacf4),'getDirectories':()=>[],'fileExists':_0x3c5974=>_0x3c5974===_0x4aacf4,'readFile':_0x4b2441=>{if(_0x4b2441===_0x4aacf4)return _0x26deeb;return undefined;},'getCanonicalFileName':_0x3138a9=>_0x3138a9,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x1d6346=a0_0x362fe8['createProgram']({'rootNames':[_0x4aacf4],'options':this['compilerOptions'],'host':_0x525e24}),_0x5e61fa=_0x1d6346['getSyntacticDiagnostics'](_0x39d688),_0x49c0ce=_0x1d6346[_0x5b81dd(0x17e)](_0x39d688);for(const _0x320541 of[..._0x5e61fa,..._0x49c0ce]){_0x4a5574[_0x5b81dd(0x14b)](this[_0x5b81dd(0x15c)](_0x320541,_0x39d688));}}catch(_0x4ae08b){this['logger']?.[_0x5b81dd(0x15d)]('Semantic\x20analysis\x20encountered\x20error',{'file':_0x4aacf4,'error':_0x4ae08b[_0x5b81dd(0x16a)]});}return _0x4a5574;}[a0_0x121a4b(0x15c)](_0x3675cf,_0x7d7af){const _0x371a48=a0_0x121a4b;let _0x145735=0x0,_0x2e0199=0x0;if(_0x3675cf['file']&&_0x3675cf[_0x371a48(0x167)]!==undefined){const _0x201c65=_0x3675cf['file'][_0x371a48(0x153)](_0x3675cf[_0x371a48(0x167)]);_0x145735=_0x201c65['line']+0x1,_0x2e0199=_0x201c65[_0x371a48(0x151)]+0x1;}else{if(_0x7d7af&&_0x3675cf['start']!==undefined){const _0x540758=_0x7d7af['getLineAndCharacterOfPosition'](_0x3675cf[_0x371a48(0x167)]);_0x145735=_0x540758[_0x371a48(0x17a)]+0x1,_0x2e0199=_0x540758[_0x371a48(0x151)]+0x1;}}const _0x219cbd=a0_0x362fe8[_0x371a48(0x15a)](_0x3675cf['messageText'],'\x0a');let _0x2e26ce;switch(_0x3675cf[_0x371a48(0x17b)]){case a0_0x362fe8['DiagnosticCategory']['Error']:_0x2e26ce=STATIC_ANALYSIS[_0x371a48(0x175)][_0x371a48(0x159)];break;case a0_0x362fe8[_0x371a48(0x16b)][_0x371a48(0x14c)]:_0x2e26ce=STATIC_ANALYSIS[_0x371a48(0x175)]['WARNING'];break;case a0_0x362fe8['DiagnosticCategory'][_0x371a48(0x172)]:case a0_0x362fe8['DiagnosticCategory'][_0x371a48(0x168)]:_0x2e26ce=STATIC_ANALYSIS[_0x371a48(0x175)][_0x371a48(0x176)];break;default:_0x2e26ce=STATIC_ANALYSIS['SEVERITY'][_0x371a48(0x159)];}let _0x569eee=STATIC_ANALYSIS[_0x371a48(0x15b)][_0x371a48(0x163)];const _0x4de718=_0x3675cf['code'];if(_0x4de718>=0x7d0&&_0x4de718<0xbb8)_0x569eee=STATIC_ANALYSIS['CATEGORY']['TYPE'];else{if(_0x4de718>=0x3e8&&_0x4de718<0x7d0)_0x569eee=STATIC_ANALYSIS[_0x371a48(0x15b)][_0x371a48(0x163)];else _0x4de718>=0x8fc&&_0x4de718<0x960&&(_0x569eee=STATIC_ANALYSIS[_0x371a48(0x15b)][_0x371a48(0x160)]);}const _0x383e0c=_0x219cbd['toLowerCase']();if(_0x383e0c['includes']('cannot\x20find\x20module')||_0x383e0c[_0x371a48(0x154)]('import')||_0x383e0c[_0x371a48(0x154)]('export'))_0x569eee=STATIC_ANALYSIS['CATEGORY']['IMPORT'];else(_0x383e0c['includes'](_0x371a48(0x17d))||_0x383e0c['includes'](_0x371a48(0x180))||_0x383e0c[_0x371a48(0x154)](_0x371a48(0x150)))&&(_0x569eee=STATIC_ANALYSIS[_0x371a48(0x15b)][_0x371a48(0x17f)]);return{'file':_0x3675cf['file']?.['fileName']||_0x7d7af?.[_0x371a48(0x171)]||_0x371a48(0x181),'line':_0x145735,'column':_0x2e0199,'severity':_0x2e26ce,'rule':'TS'+_0x4de718,'message':_0x219cbd,'category':_0x569eee,'fixable':![],'code':_0x3675cf['code']};}}export default TypeScriptAnalyzer;
1
+ function a0_0x5e2a(){const _0x1189cf=['yw5HBhL6zxiTzxjYB3i','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','tM9KzuPZ','y2f0zwDVCNK','Dw5RBM93BG','Dg9mB3DLCKnHC2u','Aw5JBhvKzxm','C2v2zxjPDhK','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','BwvZC2fNzq','tw9KDwXLs2LUza','zgvIDwC','y3jLyxrLu291CMnLrMLSzq','vhLWzvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','tgf0zxn0','y2XHC3m','rxjYB3i','rvjst1i','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','nJC2sNHRCLv6','mtu4otuXmNjTq1HXEG','rvnozxH0','u0vwrvjjvfK','y29Kzq','mvzVB215sq','ntG3mZy5nLrMBujOua','zM9YBwf0rgLHz25VC3rPyW','rgLHz25VC3rPy0nHDgvNB3j5','u2nYAxb0vgfYz2v0','BgLIlMqUDhm','y2HHCMfJDgvY','BgLUzq','vfLqrq','y2fUBM90igzPBMqGBw9KDwXL','u1Lovefy','mteWmdq3yuHfuNvR','qw5HBhLZAxmGzMfPBgvKoIa','u2vTyw50AwmGyw5HBhLZAxmGzw5JB3vUDgvYzwqGzxjYB3i','tw9KDwXLuMvZB2X1DgLVBKTPBMq','vhLWzvnJCMLWDcbHBMfSExnPCYbMywLSzwq','zxjYB3i','ChvZAa','mJGYBxf2zLfp','q0furuDpuLK','v0fstKLorW','sNn4rw1PDa','nJy3mJaZmhjkDxbdAG','otq3mJiWrffnuwDg','CgfYC2veAwfNBM9ZDgLJCW','zMLSDgvY','Aw50zxjMywnL','nta4mZGWm29ZDMTuza','y29TCgLSzxjpChrPB25Z','u3vNz2vZDgLVBG','C3rHCNq','mtqZngPzseTABW','zMLSzu5HBwu','Bg9Nz2vY'];a0_0x5e2a=function(){return _0x1189cf;};return a0_0x5e2a();}function a0_0x50f7(_0x4f051e,_0x6a0075){_0x4f051e=_0x4f051e-0x187;const _0x5e2a0e=a0_0x5e2a();let _0x50f73d=_0x5e2a0e[_0x4f051e];if(a0_0x50f7['CGFGJS']===undefined){var _0xf531dd=function(_0x545d7d){const _0x455218='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2010c3='',_0x560073='';for(let _0x32a515=0x0,_0x207ed9,_0x16e168,_0x3b4e43=0x0;_0x16e168=_0x545d7d['charAt'](_0x3b4e43++);~_0x16e168&&(_0x207ed9=_0x32a515%0x4?_0x207ed9*0x40+_0x16e168:_0x16e168,_0x32a515++%0x4)?_0x2010c3+=String['fromCharCode'](0xff&_0x207ed9>>(-0x2*_0x32a515&0x6)):0x0){_0x16e168=_0x455218['indexOf'](_0x16e168);}for(let _0x128e66=0x0,_0x3b901f=_0x2010c3['length'];_0x128e66<_0x3b901f;_0x128e66++){_0x560073+='%'+('00'+_0x2010c3['charCodeAt'](_0x128e66)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x560073);};a0_0x50f7['QHuvzr']=_0xf531dd,a0_0x50f7['oSZTbW']={},a0_0x50f7['CGFGJS']=!![];}const _0x2a9353=_0x5e2a0e[0x0],_0xb71169=_0x4f051e+_0x2a9353,_0x321b93=a0_0x50f7['oSZTbW'][_0xb71169];return!_0x321b93?(_0x50f73d=a0_0x50f7['QHuvzr'](_0x50f73d),a0_0x50f7['oSZTbW'][_0xb71169]=_0x50f73d):_0x50f73d=_0x321b93,_0x50f73d;}const a0_0x1baf28=a0_0x50f7;(function(_0x265db6,_0x5eeced){const _0x1aad5e=a0_0x50f7,_0x284b7e=_0x265db6();while(!![]){try{const _0x4110e7=-parseInt(_0x1aad5e(0x1a9))/0x1*(-parseInt(_0x1aad5e(0x1a5))/0x2)+parseInt(_0x1aad5e(0x18e))/0x3*(-parseInt(_0x1aad5e(0x1a4))/0x4)+-parseInt(_0x1aad5e(0x1c0))/0x5+-parseInt(_0x1aad5e(0x1bb))/0x6*(parseInt(_0x1aad5e(0x1b4))/0x7)+parseInt(_0x1aad5e(0x1aa))/0x8+parseInt(_0x1aad5e(0x18a))/0x9+-parseInt(_0x1aad5e(0x1bf))/0xa;if(_0x4110e7===_0x5eeced)break;else _0x284b7e['push'](_0x284b7e['shift']());}catch(_0x2189b9){_0x284b7e['push'](_0x284b7e['shift']());}}}(a0_0x5e2a,0x65eef));import a0_0x2010c3 from'typescript';import a0_0x560073 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';class TypeScriptAnalyzer{constructor(_0x32a515=null){const _0x3a5297=a0_0x50f7;this['logger']=_0x32a515,this[_0x3a5297(0x18b)]={'noEmit':!![],'jsx':a0_0x2010c3[_0x3a5297(0x1be)]['React'],'target':a0_0x2010c3['ScriptTarget']['Latest'],'module':a0_0x2010c3[_0x3a5297(0x19b)][_0x3a5297(0x1a6)],'moduleResolution':a0_0x2010c3[_0x3a5297(0x1b7)][_0x3a5297(0x193)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':!![],'noImplicitAny':!![],'strictNullChecks':!![],'strictFunctionTypes':!![],'allowJs':![]};}async['analyze'](_0x207ed9,_0x16e168,_0x3b4e43={}){const _0x367265=a0_0x50f7;try{const _0x128e66=[],_0x3b901f=a0_0x2010c3['createSourceFile'](_0x207ed9,_0x16e168,a0_0x2010c3[_0x367265(0x1ad)]['Latest'],!![]),_0x1aae82=this[_0x367265(0x192)](_0x3b901f);_0x128e66[_0x367265(0x1ba)](..._0x1aae82);const _0x4c0031=await this['getSemanticDiagnostics'](_0x207ed9,_0x16e168);return _0x128e66['push'](..._0x4c0031),this[_0x367265(0x190)]?.[_0x367265(0x19c)](_0x367265(0x19e),{'file':_0x207ed9,'totalDiagnostics':_0x128e66['length'],'errors':_0x128e66[_0x367265(0x188)](_0x2d64a1=>_0x2d64a1[_0x367265(0x198)]===STATIC_ANALYSIS[_0x367265(0x1a7)]['ERROR'])['length'],'warnings':_0x128e66['filter'](_0x6a9233=>_0x6a9233['severity']===STATIC_ANALYSIS[_0x367265(0x1a7)]['WARNING'])['length']}),_0x128e66;}catch(_0x4e4d99){return this['logger']?.[_0x367265(0x1b9)](_0x367265(0x1b8),{'file':_0x207ed9,'error':_0x4e4d99[_0x367265(0x19a)]}),[{'file':_0x207ed9,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':_0x367265(0x191),'message':_0x367265(0x1b5)+_0x4e4d99[_0x367265(0x19a)],'category':STATIC_ANALYSIS['CATEGORY'][_0x367265(0x1b3)]}];}}['getSyntacticDiagnostics'](_0x29c724){const _0x288b95=a0_0x50f7,_0x484733=[];if(_0x29c724['parseDiagnostics']&&_0x29c724[_0x288b95(0x187)]['length']>0x0)for(const _0x20a841 of _0x29c724[_0x288b95(0x187)]){_0x484733[_0x288b95(0x1ba)](this[_0x288b95(0x1ab)](_0x20a841,_0x29c724));}return _0x484733;}async[a0_0x1baf28(0x199)](_0xd235e8,_0x22ef65){const _0x59f289=a0_0x1baf28,_0x56fa3b=[];try{const _0x2c5797=a0_0x2010c3[_0x59f289(0x19d)](_0xd235e8,_0x22ef65,a0_0x2010c3[_0x59f289(0x1ad)][_0x59f289(0x19f)],!![]),_0x3a2429={'getSourceFile':_0x1050fe=>{if(_0x1050fe===_0xd235e8)return _0x2c5797;return undefined;},'getDefaultLibFileName':()=>_0x59f289(0x1ae),'writeFile':()=>{},'getCurrentDirectory':()=>a0_0x560073['dirname'](_0xd235e8),'getDirectories':()=>[],'fileExists':_0x446551=>_0x446551===_0xd235e8,'readFile':_0x3c70d7=>{if(_0x3c70d7===_0xd235e8)return _0x22ef65;return undefined;},'getCanonicalFileName':_0x54a186=>_0x54a186,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x254eb4=a0_0x2010c3['createProgram']({'rootNames':[_0xd235e8],'options':this[_0x59f289(0x18b)],'host':_0x3a2429}),_0x2c2bdc=_0x254eb4[_0x59f289(0x192)](_0x2c5797),_0x3d6ec8=_0x254eb4[_0x59f289(0x199)](_0x2c5797);for(const _0x145d54 of[..._0x2c2bdc,..._0x3d6ec8]){_0x56fa3b[_0x59f289(0x1ba)](this['formatDiagnostic'](_0x145d54,_0x2c5797));}}catch(_0x4e82be){this[_0x59f289(0x190)]?.['debug'](_0x59f289(0x1b6),{'file':_0xd235e8,'error':_0x4e82be['message']});}return _0x56fa3b;}[a0_0x1baf28(0x1ab)](_0x166bb5,_0x2119fa){const _0x4f5ad3=a0_0x1baf28;let _0x3c7753=0x0,_0x25a4f3=0x0;if(_0x166bb5['file']&&_0x166bb5['start']!==undefined){const _0x38d4da=_0x166bb5['file']['getLineAndCharacterOfPosition'](_0x166bb5[_0x4f5ad3(0x18d)]);_0x3c7753=_0x38d4da[_0x4f5ad3(0x1b0)]+0x1,_0x25a4f3=_0x38d4da[_0x4f5ad3(0x1af)]+0x1;}else{if(_0x2119fa&&_0x166bb5['start']!==undefined){const _0x3554a8=_0x2119fa[_0x4f5ad3(0x1a3)](_0x166bb5['start']);_0x3c7753=_0x3554a8[_0x4f5ad3(0x1b0)]+0x1,_0x25a4f3=_0x3554a8[_0x4f5ad3(0x1af)]+0x1;}}const _0x3e07d9=a0_0x2010c3['flattenDiagnosticMessageText'](_0x166bb5['messageText'],'\x0a');let _0x3fb891;switch(_0x166bb5[_0x4f5ad3(0x194)]){case a0_0x2010c3[_0x4f5ad3(0x1ac)][_0x4f5ad3(0x1a1)]:_0x3fb891=STATIC_ANALYSIS[_0x4f5ad3(0x1a7)]['ERROR'];break;case a0_0x2010c3[_0x4f5ad3(0x1ac)]['Warning']:_0x3fb891=STATIC_ANALYSIS['SEVERITY'][_0x4f5ad3(0x1bd)];break;case a0_0x2010c3['DiagnosticCategory']['Message']:case a0_0x2010c3[_0x4f5ad3(0x1ac)][_0x4f5ad3(0x18c)]:_0x3fb891=STATIC_ANALYSIS[_0x4f5ad3(0x1a7)]['INFO'];break;default:_0x3fb891=STATIC_ANALYSIS[_0x4f5ad3(0x1a7)][_0x4f5ad3(0x1a2)];}let _0x438bb3=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];const _0x4ed8fe=_0x166bb5[_0x4f5ad3(0x1a8)];if(_0x4ed8fe>=0x7d0&&_0x4ed8fe<0xbb8)_0x438bb3=STATIC_ANALYSIS['CATEGORY']['TYPE'];else{if(_0x4ed8fe>=0x3e8&&_0x4ed8fe<0x7d0)_0x438bb3=STATIC_ANALYSIS[_0x4f5ad3(0x1bc)][_0x4f5ad3(0x1b3)];else _0x4ed8fe>=0x8fc&&_0x4ed8fe<0x960&&(_0x438bb3=STATIC_ANALYSIS[_0x4f5ad3(0x1bc)]['IMPORT']);}const _0xbf3c25=_0x3e07d9[_0x4f5ad3(0x196)]();if(_0xbf3c25[_0x4f5ad3(0x197)](_0x4f5ad3(0x1b2))||_0xbf3c25[_0x4f5ad3(0x197)]('import')||_0xbf3c25[_0x4f5ad3(0x197)]('export'))_0x438bb3=STATIC_ANALYSIS['CATEGORY']['IMPORT'];else(_0xbf3c25[_0x4f5ad3(0x197)]('type')||_0xbf3c25[_0x4f5ad3(0x197)](_0x4f5ad3(0x189))||_0xbf3c25['includes'](_0x4f5ad3(0x1a0)))&&(_0x438bb3=STATIC_ANALYSIS['CATEGORY'][_0x4f5ad3(0x1b1)]);return{'file':_0x166bb5['file']?.['fileName']||_0x2119fa?.[_0x4f5ad3(0x18f)]||_0x4f5ad3(0x195),'line':_0x3c7753,'column':_0x25a4f3,'severity':_0x3fb891,'rule':'TS'+_0x4ed8fe,'message':_0x3e07d9,'category':_0x438bb3,'fixable':![],'code':_0x166bb5[_0x4f5ad3(0x1a8)]};}}export default TypeScriptAnalyzer;
@@ -1 +1 @@
1
- function a0_0x1cd9(_0xc8b283,_0x23f9c7){_0xc8b283=_0xc8b283-0xb0;const _0x1688b8=a0_0x1688();let _0x1cd942=_0x1688b8[_0xc8b283];if(a0_0x1cd9['NJKmUQ']===undefined){var _0x252b8b=function(_0x5cedf2){const _0x2502bb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7c4310='',_0x3259f5='';for(let _0x38c2ec=0x0,_0x17e4b9,_0x245465,_0x5c91c2=0x0;_0x245465=_0x5cedf2['charAt'](_0x5c91c2++);~_0x245465&&(_0x17e4b9=_0x38c2ec%0x4?_0x17e4b9*0x40+_0x245465:_0x245465,_0x38c2ec++%0x4)?_0x7c4310+=String['fromCharCode'](0xff&_0x17e4b9>>(-0x2*_0x38c2ec&0x6)):0x0){_0x245465=_0x2502bb['indexOf'](_0x245465);}for(let _0x840b59=0x0,_0x425e68=_0x7c4310['length'];_0x840b59<_0x425e68;_0x840b59++){_0x3259f5+='%'+('00'+_0x7c4310['charCodeAt'](_0x840b59)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3259f5);};a0_0x1cd9['BcEHzI']=_0x252b8b,a0_0x1cd9['TZIzFL']={},a0_0x1cd9['NJKmUQ']=!![];}const _0x398f30=_0x1688b8[0x0],_0x3e15ea=_0xc8b283+_0x398f30,_0x111bf6=a0_0x1cd9['TZIzFL'][_0x3e15ea];return!_0x111bf6?(_0x1cd942=a0_0x1cd9['BcEHzI'](_0x1cd942),a0_0x1cd9['TZIzFL'][_0x3e15ea]=_0x1cd942):_0x1cd942=_0x111bf6,_0x1cd942;}const a0_0x15882f=a0_0x1cd9;(function(_0x4e0c6b,_0x1a52c4){const _0x4a2688=a0_0x1cd9,_0x7f400a=_0x4e0c6b();while(!![]){try{const _0x408cb3=-parseInt(_0x4a2688(0xb1))/0x1+-parseInt(_0x4a2688(0xcf))/0x2*(parseInt(_0x4a2688(0xb5))/0x3)+-parseInt(_0x4a2688(0xc2))/0x4+-parseInt(_0x4a2688(0xc7))/0x5+parseInt(_0x4a2688(0xee))/0x6+-parseInt(_0x4a2688(0xd8))/0x7+parseInt(_0x4a2688(0xbb))/0x8*(parseInt(_0x4a2688(0xd5))/0x9);if(_0x408cb3===_0x1a52c4)break;else _0x7f400a['push'](_0x7f400a['shift']());}catch(_0x52dcfa){_0x7f400a['push'](_0x7f400a['shift']());}}}(a0_0x1688,0xd32b4));function a0_0x1688(){const _0x3a0cb5=['Aw1Wywn0u2nVCMu','ndK5ogLnywj1Bq','Bwv0CMLJCW','BwfW','y2HHCKf0','ms4Gq3jLyxrLigeGBMv3igz1BMn0Aw9Uig5HBwvKicC','C3bSAxq','mJyZn0LMzezrwa','mI4Gtw92zsbYzwXHDgvKig1LDgHVzhmGyw5KihbYB3bLCNrPzxmGAw50BYb0AguGy2XHC3m','y3jLyxrLrNvUy3rPB25oyw1L','nJqXmtC1nxbnD1LnBa','ns4GvgvZDcb0BYbLBNn1CMuGyMvOyxzPB3iGAxmGChjLC2vYDMvK','C29YDa','Bg9Nmta','AgLNAa','Dg9gAxHLza','ihrPBwvZ','z2vUzxjHDgvby3rPB25HyMXLu3rLChm','zxH0CMfJDc1TB2r1Bgu','mY4GvxbKyxrLigfSBcbPBNn0yw5JzxmGDg8GDxnLihrOzsbUzxCGy2XHC3m','DMfY','vgHPCYa','y29UzMLKzw5Jzq','yxzLCMfNzuXPBMvdB3vUDa','CMvKDwnL','y29Kzq','zxH0CMfJDc1JBgfZCW','zw5KtgLUzq','C2L6zq','zgv0zxjTAw5LuhjPB3jPDhK','Aw5JBhvKzxm','ms4Gq3jLyxrLigeGBMv3ig1VzhvSzs9MAwXLigzVCIb0AgLZihnOyxjLzcbMDw5JDgLVBMfSAxr5','nda0odCYmKzIternwq','zgvZy3jPyMvczw5LzML0CW','zgv0zxjTAw5LuMvMywn0B3jPBMDtDhjHDgvNEq','sw1WCM92zsbJB2rLig9Yz2fUAxPHDgLVBIbHy3jVC3mG','yMXVy2TZ','C3rHCNrmAw5L','z2vUzxjHDgvszwfZB25PBMC','mtq3ntmZmhb3u2nbtW','zxH0CMfJDgvKrNvUy3rPB24','uMvMywn0B3jPBMCGDg8G','ChvZAa','nJq1seTQqurs','Bg9N','zNvUy3rPB24','C2XPy2u','mY4GvgvZDcb0Ag9YB3vNAgX5','zwXZzq','mteYmJmYu3nst2T1','igXVy2f0Aw9UCW','zxn0Aw1HDgvfzMzVCNq','zMLSzxndB3zLCMvK','C3vNz2vZDe5HBwu','z2vUzxjHDgvszwzHy3rVCMLUz0fKDMLJzq','y29UC3q','nJGXodiWqLrVB1rN','mI4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGDgHLigv4DhjHy3rLzcb2zxjZAw9U','y2fSy3vSyxrLtwv0CMLJCW','zxH0CMfJDc1JB25ZDgfUDc1VCI11DgLSAxr5','BwvKAxvT','ndeWnJuWnxrezK5QzG','ms4Gq3jLyxrLigeGBMv3ignSyxnZihrVigvUy2fWC3vSyxrLihrOAxmGzNvUy3rPB25HBgL0Eq','igzPBgvZ','Bg93','BgvUz3rO','Dg9Rzw5dB3vUDa','C29Tzq'];a0_0x1688=function(){return _0x3a0cb5;};return a0_0x1688();}export class RefactoringAnalyzer{constructor(_0x7c4310){this['config']=_0x7c4310;}['analyzeClones'](_0x3259f5){const _0x14e97d=a0_0x1cd9;return console[_0x14e97d(0xb6)]('Analyzing\x20clones\x20for\x20refactoring\x20opportunities...'),_0x3259f5[_0x14e97d(0xd1)]((_0x38c2ec,_0x17e4b9)=>{const _0x1c472b=_0x14e97d,_0x245465=this[_0x1c472b(0xc4)](_0x38c2ec),_0x5c91c2=this[_0x1c472b(0xc0)](_0x38c2ec,_0x245465);return{'id':'clone-'+(_0x17e4b9+0x1),'type':_0x38c2ec['type'],'confidence':_0x38c2ec[_0x1c472b(0xe4)],'instances':_0x38c2ec[_0x1c472b(0xf2)][_0x1c472b(0xd1)](_0x840b59=>({'file':_0x840b59['file'],'startLine':_0x840b59[_0x1c472b(0xf3)],'endLine':_0x840b59[_0x1c472b(0xe9)],'code':this['truncateCode'](_0x840b59[_0x1c472b(0xe7)]),'fullCode':_0x840b59['code'],'blockType':_0x840b59['type']})),'metrics':_0x245465,'refactoringAdvice':_0x5c91c2};})[_0x14e97d(0xda)]((_0x425e68,_0x5534ff)=>_0x5534ff['metrics'][_0x14e97d(0xce)]-_0x425e68[_0x14e97d(0xd0)]['impactScore']);}['calculateMetrics'](_0xffe4a7){const _0x4c8e4d=a0_0x1cd9,_0x58a6fb=_0xffe4a7['blocks'],_0x44f2ac=_0xffe4a7[_0x4c8e4d(0xcc)],_0x2af1d4=this[_0x4c8e4d(0xe5)](_0x58a6fb),_0xd395ff=_0x58a6fb['length'],_0x1d2adc=this['calculateImpactScore'](_0x44f2ac,_0x2af1d4,_0xd395ff,_0xffe4a7['confidence']),_0x21f4d7=_0x2af1d4*(_0xd395ff-0x1),_0x2d384c=_0x44f2ac*(_0xd395ff-0x1);return{'tokenCount':_0x44f2ac,'lineCount':_0x2af1d4,'instanceCount':_0xd395ff,'duplicatedLines':_0x21f4d7,'duplicatedTokens':_0x2d384c,'impactScore':parseFloat(_0x1d2adc[_0x4c8e4d(0xdd)](0x2)),'filesCovered':new Set(_0x58a6fb[_0x4c8e4d(0xd1)](_0x50247e=>_0x50247e['file']))[_0x4c8e4d(0xea)]};}['calculateImpactScore'](_0x4a97b3,_0x77631e,_0xea1376,_0x26302c){const _0x30f8c8=a0_0x1cd9,_0x32841b=Math[_0x30f8c8(0xdb)](_0x4a97b3+0x1)*0x2,_0x42b91d=Math['log2'](_0xea1376+0x1)*0x3,_0x485597=_0x26302c*0x2,_0x45fb8c=Math['min'](_0x77631e/0xa,0x3);return _0x32841b+_0x42b91d+_0x485597+_0x45fb8c;}[a0_0x15882f(0xc0)](_0x1a732e,_0x5b5435){const _0x293a8d=a0_0x15882f,_0x55a248=this[_0x293a8d(0xf0)](_0x1a732e,_0x5b5435),_0x213346=this[_0x293a8d(0xeb)](_0x5b5435),_0x2c5965=this[_0x293a8d(0xbf)](_0x1a732e),_0x237b9c=this[_0x293a8d(0xb0)](_0x1a732e,_0x5b5435,_0x55a248),_0x3d1c30=this[_0x293a8d(0xbd)](_0x5b5435,_0x55a248),_0x448a9d=this['describeBenefits'](_0x5b5435);return{'priority':_0x213346,'strategy':_0x55a248,'suggestedName':_0x2c5965,'reasoning':_0x237b9c,'estimatedEffort':_0x3d1c30,'benefits':_0x448a9d,'actionableSteps':this['generateActionableSteps'](_0x55a248,_0x2c5965,_0x5b5435)};}[a0_0x15882f(0xf0)](_0x37cb7d,_0x2db4f9){const _0x2d0388=a0_0x15882f,{tokenCount:_0x30c346,lineCount:_0xa59ee2,instanceCount:_0x28dbd9,filesCovered:_0x254cff}=_0x2db4f9,_0x201971=_0x37cb7d['blocks'][_0x2d0388(0xd1)](_0x280c6e=>_0x280c6e['type']),_0x4cb0ee=_0x201971[_0x2d0388(0xcd)](_0xa3635e=>_0xa3635e[_0x2d0388(0xec)]('Function')||_0xa3635e['includes']('Method')),_0x21277c=_0x201971[_0x2d0388(0xcd)](_0x2e8346=>_0x2e8346[_0x2d0388(0xec)]('Class'));if(_0x21277c&&_0xa59ee2>0x32)return'extract-module';else{if(_0x254cff>0x2&&_0x30c346>0x64)return _0x2d0388(0xe0);else{if(_0x4cb0ee||_0xa59ee2>=0xa&&_0xa59ee2<=0x32)return'extract-function';else{if(_0xa59ee2>0x32)return'extract-class';else return _0xa59ee2<0xa?_0x2d0388(0xc5):'extract-function';}}}}[a0_0x15882f(0xeb)](_0x5374c4){const {impactScore:_0x33bb45}=_0x5374c4;if(_0x33bb45>=0x8)return'high';if(_0x33bb45>=0x5)return'medium';return'low';}['suggestName'](_0x1ff920){const _0x469bf6=a0_0x15882f,_0x464945=_0x1ff920['blocks'][_0x469bf6(0xd1)](_0x3b01b6=>_0x3b01b6['code'])['join']('\x20'),_0x338515=_0x464945['match'](/[a-zA-Z_$][a-zA-Z0-9_$]*/g)||[],_0x303f43={};_0x338515['forEach'](_0x1c26cf=>{const _0x163fe0=_0x469bf6;if([_0x163fe0(0xc1),'let',_0x163fe0(0xe2),_0x163fe0(0xb7),'return','if',_0x163fe0(0xba),'for','while'][_0x163fe0(0xec)](_0x1c26cf))return;_0x303f43[_0x1c26cf]=(_0x303f43[_0x1c26cf]||0x0)+0x1;});const _0x5cdc72=Object['entries'](_0x303f43)[_0x469bf6(0xda)]((_0x64270f,_0x460e66)=>_0x460e66[0x1]-_0x64270f[0x1])[_0x469bf6(0xb8)](0x0,0x3);if(_0x5cdc72[_0x469bf6(0xcb)]>0x0){const _0xabe91b=_0x5cdc72['map'](([_0x5a7172])=>_0x5a7172);return this['createFunctionName'](_0xabe91b);}return'extractedFunction';}[a0_0x15882f(0xd7)](_0x12b3e4){const _0x343cee=a0_0x15882f;if(_0x12b3e4['length']===0x0)return _0x343cee(0xb2);return _0x12b3e4[0x0]+_0x12b3e4[_0x343cee(0xb8)](0x1)['map'](_0x3b1e6d=>_0x3b1e6d[_0x343cee(0xd2)](0x0)['toUpperCase']()+_0x3b1e6d['slice'](0x1))['join']('');}[a0_0x15882f(0xb0)](_0xdc5029,_0x2f8058,_0x667351){const _0x48101f=a0_0x15882f,{instanceCount:_0x133b74,duplicatedLines:_0x7aabe1,filesCovered:_0x46aff7}=_0x2f8058;let _0x45c2b5=_0x48101f(0xe3)+_0xdc5029['type']+'\x20code\x20pattern\x20appears\x20'+_0x133b74+_0x48101f(0xde);return _0x46aff7>0x1&&(_0x45c2b5+='\x20across\x20'+_0x46aff7+'\x20different\x20files'),_0x45c2b5+=',\x20resulting\x20in\x20'+_0x7aabe1+'\x20duplicated\x20lines.\x20',_0x45c2b5+=_0x48101f(0xb3)+_0x667351['replace'](/-/g,'\x20')+'\x20would\x20improve\x20maintainability',_0x133b74>=0x3&&(_0x45c2b5+=', reduce bugs from inconsistent changes'),_0x45c2b5+=',\x20and\x20reduce\x20code\x20size',_0x2f8058['impactScore']>=0x8&&(_0x45c2b5+='.\x20This\x20is\x20a\x20high-impact\x20refactoring\x20opportunity'),_0x45c2b5+'.';}['estimateEffort'](_0x183e12,_0xb005b9){const _0x50b324=a0_0x15882f,{lineCount:_0xa0e69,instanceCount:_0x239a87,filesCovered:_0x4ff8cc}=_0x183e12;let _0x36d14a=0x0;_0x36d14a+=Math['min'](_0xa0e69/0xa,0x5),_0x36d14a+=_0x239a87*0.5,_0x36d14a+=_0x4ff8cc*0.5;if(_0xb005b9===_0x50b324(0xe0))_0x36d14a+=0x3;else{if(_0xb005b9==='extract-class')_0x36d14a+=0x2;else _0xb005b9==='extract-function'&&(_0x36d14a+=0x1);}if(_0x36d14a<=0x3)return _0x50b324(0xca);if(_0x36d14a<=0x7)return _0x50b324(0xc6);return _0x50b324(0xdc);}[a0_0x15882f(0xef)](_0x4c7b88){const _0x6620d8=a0_0x15882f,_0x506714=[];return _0x506714['push']('Eliminate\x20'+_0x4c7b88['duplicatedLines']+'\x20duplicated\x20lines\x20of\x20code'),_0x506714[_0x6620d8(0xb4)]('Improve\x20maintainability\x20by\x20centralizing\x20logic\x20in\x20one\x20place'),_0x4c7b88['instanceCount']>=0x3&&_0x506714[_0x6620d8(0xb4)]('Reduce\x20risk\x20of\x20inconsistent\x20changes\x20across\x20'+_0x4c7b88['instanceCount']+_0x6620d8(0xbc)),_0x4c7b88[_0x6620d8(0xbe)]>0x2&&_0x506714[_0x6620d8(0xb4)](_0x6620d8(0xf1)+_0x4c7b88['filesCovered']+_0x6620d8(0xc9)),_0x506714['push']('Make\x20future\x20changes\x20easier\x20and\x20less\x20error-prone'),_0x506714;}[a0_0x15882f(0xdf)](_0x264ea6,_0x2bc358,_0x2aa9b5){const _0x1aa855=a0_0x15882f,_0x37ff55=[];switch(_0x264ea6){case'extract-function':_0x37ff55[_0x1aa855(0xb4)](_0x1aa855(0xd3)+_0x2bc358+'\x27'),_0x37ff55['push']('2.\x20Move\x20the\x20duplicated\x20logic\x20into\x20this\x20function'),_0x37ff55[_0x1aa855(0xb4)]('3. Identify parameters needed from the surrounding context'),_0x37ff55[_0x1aa855(0xb4)]('4.\x20Replace\x20all\x20instances\x20with\x20calls\x20to\x20the\x20new\x20function'),_0x37ff55[_0x1aa855(0xb4)](_0x1aa855(0xd9));break;case _0x1aa855(0xe8):_0x37ff55[_0x1aa855(0xb4)](_0x1aa855(0xc8)),_0x37ff55[_0x1aa855(0xb4)](_0x1aa855(0xd6)),_0x37ff55[_0x1aa855(0xb4)](_0x1aa855(0xe1)),_0x37ff55['push']('4.\x20Consider\x20dependency\x20injection\x20for\x20better\x20testability');break;case _0x1aa855(0xe0):_0x37ff55['push'](_0x1aa855(0xed)),_0x37ff55['push']('2.\x20Move\x20the\x20duplicated\x20code\x20into\x20the\x20new\x20module'),_0x37ff55['push']('3.\x20Export\x20the\x20necessary\x20functions/classes'),_0x37ff55['push']('4. Update all files to import from the new module'),_0x37ff55['push']('5.\x20Update\x20any\x20build\x20configurations\x20if\x20needed');break;default:_0x37ff55['push']('1.\x20Extract\x20the\x20duplicated\x20code\x20using\x20'+_0x264ea6['replace'](/-/g,'\x20')),_0x37ff55[_0x1aa855(0xb4)](_0x1aa855(0xc3)),_0x37ff55['push'](_0x1aa855(0xb9));}return _0x37ff55;}['truncateCode'](_0x692983,_0x180cf5=0xa){const _0x4fd695=a0_0x15882f,_0x16bb97=_0x692983[_0x4fd695(0xd4)]('\x0a');if(_0x16bb97[_0x4fd695(0xcb)]<=_0x180cf5)return _0x692983;return _0x16bb97['slice'](0x0,_0x180cf5)['join']('\x0a')+'\x0a...\x20(truncated)';}[a0_0x15882f(0xe5)](_0x221fc2){const _0x4d708b=a0_0x15882f,_0x4b65b0=_0x221fc2[_0x4d708b(0xe6)]((_0x595b34,_0x21985b)=>_0x595b34+(_0x21985b['endLine']-_0x21985b['startLine']+0x1),0x0);return Math['round'](_0x4b65b0/_0x221fc2['length']);}}
1
+ const a0_0x226d09=a0_0x1423;function a0_0x1423(_0x4fcada,_0x15f641){_0x4fcada=_0x4fcada-0xf3;const _0x8eadbd=a0_0x8ead();let _0x142395=_0x8eadbd[_0x4fcada];if(a0_0x1423['kiUjqG']===undefined){var _0xdd48fe=function(_0x603bb9){const _0x489f3b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x29b2d1='',_0x3aa04a='';for(let _0x109ccb=0x0,_0x324393,_0x4b40de,_0x2533e4=0x0;_0x4b40de=_0x603bb9['charAt'](_0x2533e4++);~_0x4b40de&&(_0x324393=_0x109ccb%0x4?_0x324393*0x40+_0x4b40de:_0x4b40de,_0x109ccb++%0x4)?_0x29b2d1+=String['fromCharCode'](0xff&_0x324393>>(-0x2*_0x109ccb&0x6)):0x0){_0x4b40de=_0x489f3b['indexOf'](_0x4b40de);}for(let _0x665553=0x0,_0x159f34=_0x29b2d1['length'];_0x665553<_0x159f34;_0x665553++){_0x3aa04a+='%'+('00'+_0x29b2d1['charCodeAt'](_0x665553)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3aa04a);};a0_0x1423['nzBDlz']=_0xdd48fe,a0_0x1423['wrLyWG']={},a0_0x1423['kiUjqG']=!![];}const _0xaeea3=_0x8eadbd[0x0],_0x48ee33=_0x4fcada+_0xaeea3,_0x2197da=a0_0x1423['wrLyWG'][_0x48ee33];return!_0x2197da?(_0x142395=a0_0x1423['nzBDlz'](_0x142395),a0_0x1423['wrLyWG'][_0x48ee33]=_0x142395):_0x142395=_0x2197da,_0x142395;}(function(_0x2de4c4,_0x3afd4c){const _0xef00f3=a0_0x1423,_0x4f13d0=_0x2de4c4();while(!![]){try{const _0x3f95b1=parseInt(_0xef00f3(0x134))/0x1+-parseInt(_0xef00f3(0x126))/0x2*(parseInt(_0xef00f3(0xfb))/0x3)+parseInt(_0xef00f3(0xf7))/0x4*(-parseInt(_0xef00f3(0x12c))/0x5)+-parseInt(_0xef00f3(0x140))/0x6*(parseInt(_0xef00f3(0x133))/0x7)+parseInt(_0xef00f3(0x110))/0x8*(parseInt(_0xef00f3(0x131))/0x9)+-parseInt(_0xef00f3(0x115))/0xa+parseInt(_0xef00f3(0x121))/0xb*(parseInt(_0xef00f3(0x127))/0xc);if(_0x3f95b1===_0x3afd4c)break;else _0x4f13d0['push'](_0x4f13d0['shift']());}catch(_0x2212d6){_0x4f13d0['push'](_0x4f13d0['shift']());}}}(a0_0x8ead,0xa5774));export class RefactoringAnalyzer{constructor(_0x29b2d1){const _0x4aff18=a0_0x1423;this[_0x4aff18(0x138)]=_0x29b2d1;}[a0_0x226d09(0x102)](_0x3aa04a){const _0x2a49fd=a0_0x226d09;return console[_0x2a49fd(0x13d)](_0x2a49fd(0x10e)),_0x3aa04a['map']((_0x109ccb,_0x324393)=>{const _0x2d34b5=_0x2a49fd,_0x4b40de=this['calculateMetrics'](_0x109ccb),_0x2533e4=this['generateRefactoringAdvice'](_0x109ccb,_0x4b40de);return{'id':_0x2d34b5(0x132)+(_0x324393+0x1),'type':_0x109ccb[_0x2d34b5(0x108)],'confidence':_0x109ccb['confidence'],'instances':_0x109ccb[_0x2d34b5(0xf9)][_0x2d34b5(0x104)](_0x665553=>({'file':_0x665553[_0x2d34b5(0x105)],'startLine':_0x665553['startLine'],'endLine':_0x665553['endLine'],'code':this[_0x2d34b5(0x10f)](_0x665553[_0x2d34b5(0x109)]),'fullCode':_0x665553[_0x2d34b5(0x109)],'blockType':_0x665553[_0x2d34b5(0x108)]})),'metrics':_0x4b40de,'refactoringAdvice':_0x2533e4};})[_0x2a49fd(0x101)]((_0x159f34,_0x4d9a2d)=>_0x4d9a2d['metrics'][_0x2a49fd(0xfe)]-_0x159f34[_0x2a49fd(0xff)]['impactScore']);}[a0_0x226d09(0xf8)](_0x8c51e4){const _0x27b21d=a0_0x226d09,_0x2068a8=_0x8c51e4[_0x27b21d(0xf9)],_0x2b5dce=_0x8c51e4['tokenCount'],_0x3bb767=this['averageLineCount'](_0x2068a8),_0x48ed36=_0x2068a8[_0x27b21d(0x114)],_0x27a64d=this['calculateImpactScore'](_0x2b5dce,_0x3bb767,_0x48ed36,_0x8c51e4[_0x27b21d(0x128)]),_0x50461b=_0x3bb767*(_0x48ed36-0x1),_0x41466a=_0x2b5dce*(_0x48ed36-0x1);return{'tokenCount':_0x2b5dce,'lineCount':_0x3bb767,'instanceCount':_0x48ed36,'duplicatedLines':_0x50461b,'duplicatedTokens':_0x41466a,'impactScore':parseFloat(_0x27a64d['toFixed'](0x2)),'filesCovered':new Set(_0x2068a8[_0x27b21d(0x104)](_0xbb62bf=>_0xbb62bf['file']))['size']};}[a0_0x226d09(0x12b)](_0x4707aa,_0x173e78,_0x13aad1,_0x986534){const _0xeaaef8=a0_0x226d09,_0x463be6=Math['log10'](_0x4707aa+0x1)*0x2,_0x201d1b=Math['log2'](_0x13aad1+0x1)*0x3,_0x35b61b=_0x986534*0x2,_0x238660=Math[_0xeaaef8(0xf6)](_0x173e78/0xa,0x3);return _0x463be6+_0x201d1b+_0x35b61b+_0x238660;}['generateRefactoringAdvice'](_0x55485b,_0x4f7b56){const _0x45d0a8=a0_0x226d09,_0x84be31=this[_0x45d0a8(0x125)](_0x55485b,_0x4f7b56),_0x1fa925=this[_0x45d0a8(0x141)](_0x4f7b56),_0x2d4338=this['suggestName'](_0x55485b),_0x2d875c=this['generateReasoning'](_0x55485b,_0x4f7b56,_0x84be31),_0x572cf6=this['estimateEffort'](_0x4f7b56,_0x84be31),_0x51531d=this['describeBenefits'](_0x4f7b56);return{'priority':_0x1fa925,'strategy':_0x84be31,'suggestedName':_0x2d4338,'reasoning':_0x2d875c,'estimatedEffort':_0x572cf6,'benefits':_0x51531d,'actionableSteps':this['generateActionableSteps'](_0x84be31,_0x2d4338,_0x4f7b56)};}[a0_0x226d09(0x125)](_0x252f7d,_0x417a46){const _0x15936e=a0_0x226d09,{tokenCount:_0x4667cf,lineCount:_0x54ac1a,instanceCount:_0x44ae8e,filesCovered:_0x8ecbd0}=_0x417a46,_0x5a903a=_0x252f7d['blocks']['map'](_0x41dc48=>_0x41dc48[_0x15936e(0x108)]),_0x40e4d6=_0x5a903a[_0x15936e(0x112)](_0x3bd13b=>_0x3bd13b[_0x15936e(0x119)](_0x15936e(0x103))||_0x3bd13b['includes']('Method')),_0x33d13f=_0x5a903a[_0x15936e(0x112)](_0x2c784b=>_0x2c784b['includes'](_0x15936e(0x117)));if(_0x33d13f&&_0x54ac1a>0x32)return'extract-module';else{if(_0x8ecbd0>0x2&&_0x4667cf>0x64)return _0x15936e(0x13a);else{if(_0x40e4d6||_0x54ac1a>=0xa&&_0x54ac1a<=0x32)return _0x15936e(0x13c);else{if(_0x54ac1a>0x32)return _0x15936e(0x139);else return _0x54ac1a<0xa?'extract-constant-or-utility':'extract-function';}}}}[a0_0x226d09(0x141)](_0x3a1dd3){const _0x406167=a0_0x226d09,{impactScore:_0x4102c9}=_0x3a1dd3;if(_0x4102c9>=0x8)return _0x406167(0x10d);if(_0x4102c9>=0x5)return'medium';return _0x406167(0x142);}['suggestName'](_0x4a50eb){const _0xc1263b=a0_0x226d09,_0x2599e5=_0x4a50eb[_0xc1263b(0xf9)][_0xc1263b(0x104)](_0x1d3288=>_0x1d3288[_0xc1263b(0x109)])[_0xc1263b(0xfd)]('\x20'),_0x1d5cde=_0x2599e5[_0xc1263b(0x10a)](/[a-zA-Z_$][a-zA-Z0-9_$]*/g)||[],_0x4e656e={};_0x1d5cde[_0xc1263b(0xfa)](_0x5b7e9e=>{const _0x50305f=_0xc1263b;if([_0x50305f(0x123),_0x50305f(0x12a),'var',_0x50305f(0x144),'return','if',_0x50305f(0x113),_0x50305f(0x130),_0x50305f(0x106)]['includes'](_0x5b7e9e))return;_0x4e656e[_0x5b7e9e]=(_0x4e656e[_0x5b7e9e]||0x0)+0x1;});const _0x51d3d4=Object['entries'](_0x4e656e)['sort']((_0x1ffefa,_0xa21ab9)=>_0xa21ab9[0x1]-_0x1ffefa[0x1])[_0xc1263b(0x11c)](0x0,0x3);if(_0x51d3d4['length']>0x0){const _0xf50e48=_0x51d3d4[_0xc1263b(0x104)](([_0x58b44c])=>_0x58b44c);return this[_0xc1263b(0x143)](_0xf50e48);}return _0xc1263b(0x136);}['createFunctionName'](_0x235be8){const _0x10ddcf=a0_0x226d09;if(_0x235be8[_0x10ddcf(0x114)]===0x0)return _0x10ddcf(0x136);return _0x235be8[0x0]+_0x235be8['slice'](0x1)['map'](_0x33f077=>_0x33f077[_0x10ddcf(0x11a)](0x0)[_0x10ddcf(0x137)]()+_0x33f077[_0x10ddcf(0x11c)](0x1))[_0x10ddcf(0xfd)]('');}['generateReasoning'](_0x38143d,_0x2f8537,_0x3d8d72){const _0x4c77ce=a0_0x226d09,{instanceCount:_0x5927ce,duplicatedLines:_0x507034,filesCovered:_0x59f4ca}=_0x2f8537;let _0x4e43ca='This\x20'+_0x38143d['type']+'\x20code\x20pattern\x20appears\x20'+_0x5927ce+_0x4c77ce(0x12f);return _0x59f4ca>0x1&&(_0x4e43ca+='\x20across\x20'+_0x59f4ca+_0x4c77ce(0xf4)),_0x4e43ca+=_0x4c77ce(0x12e)+_0x507034+_0x4c77ce(0x111),_0x4e43ca+='Refactoring\x20to\x20'+_0x3d8d72['replace'](/-/g,'\x20')+_0x4c77ce(0x116),_0x5927ce>=0x3&&(_0x4e43ca+=', reduce bugs from inconsistent changes'),_0x4e43ca+=_0x4c77ce(0x122),_0x2f8537['impactScore']>=0x8&&(_0x4e43ca+='.\x20This\x20is\x20a\x20high-impact\x20refactoring\x20opportunity'),_0x4e43ca+'.';}['estimateEffort'](_0x391ef7,_0x34b207){const _0xa5b911=a0_0x226d09,{lineCount:_0x301798,instanceCount:_0x51c999,filesCovered:_0x4956e9}=_0x391ef7;let _0x1ff762=0x0;_0x1ff762+=Math[_0xa5b911(0xf6)](_0x301798/0xa,0x5),_0x1ff762+=_0x51c999*0.5,_0x1ff762+=_0x4956e9*0.5;if(_0x34b207==='extract-module')_0x1ff762+=0x3;else{if(_0x34b207===_0xa5b911(0x139))_0x1ff762+=0x2;else _0x34b207==='extract-function'&&(_0x1ff762+=0x1);}if(_0x1ff762<=0x3)return _0xa5b911(0x142);if(_0x1ff762<=0x7)return _0xa5b911(0x100);return _0xa5b911(0x10d);}['describeBenefits'](_0x1a741b){const _0x52b2df=a0_0x226d09,_0x2382d3=[];return _0x2382d3[_0x52b2df(0x107)](_0x52b2df(0x13b)+_0x1a741b[_0x52b2df(0xfc)]+'\x20duplicated\x20lines\x20of\x20code'),_0x2382d3['push']('Improve\x20maintainability\x20by\x20centralizing\x20logic\x20in\x20one\x20place'),_0x1a741b['instanceCount']>=0x3&&_0x2382d3['push']('Reduce\x20risk\x20of\x20inconsistent\x20changes\x20across\x20'+_0x1a741b['instanceCount']+_0x52b2df(0x135)),_0x1a741b[_0x52b2df(0x120)]>0x2&&_0x2382d3[_0x52b2df(0x107)]('Improve\x20code\x20organization\x20across\x20'+_0x1a741b['filesCovered']+_0x52b2df(0xf3)),_0x2382d3[_0x52b2df(0x107)](_0x52b2df(0x13f)),_0x2382d3;}[a0_0x226d09(0x118)](_0x32b301,_0x3dcb05,_0x5c2b29){const _0x3fd181=a0_0x226d09,_0x242041=[];switch(_0x32b301){case'extract-function':_0x242041[_0x3fd181(0x107)](_0x3fd181(0x124)+_0x3dcb05+'\x27'),_0x242041['push'](_0x3fd181(0x11e)),_0x242041[_0x3fd181(0x107)]('3. Identify parameters needed from the surrounding context'),_0x242041['push'](_0x3fd181(0x11d)),_0x242041['push'](_0x3fd181(0xf5));break;case _0x3fd181(0x139):_0x242041['push']('1.\x20Create\x20a\x20new\x20class\x20to\x20encapsulate\x20this\x20functionality'),_0x242041['push'](_0x3fd181(0x11b)),_0x242041['push']('3.\x20Update\x20all\x20instances\x20to\x20use\x20the\x20new\x20class'),_0x242041[_0x3fd181(0x107)]('4.\x20Consider\x20dependency\x20injection\x20for\x20better\x20testability');break;case'extract-module':_0x242041[_0x3fd181(0x107)]('1.\x20Create\x20a\x20new\x20module/file\x20for\x20this\x20shared\x20functionality'),_0x242041[_0x3fd181(0x107)]('2.\x20Move\x20the\x20duplicated\x20code\x20into\x20the\x20new\x20module'),_0x242041[_0x3fd181(0x107)](_0x3fd181(0x13e)),_0x242041[_0x3fd181(0x107)]('4. Update all files to import from the new module'),_0x242041['push']('5.\x20Update\x20any\x20build\x20configurations\x20if\x20needed');break;default:_0x242041['push']('1.\x20Extract\x20the\x20duplicated\x20code\x20using\x20'+_0x32b301[_0x3fd181(0x12d)](/-/g,'\x20')),_0x242041[_0x3fd181(0x107)](_0x3fd181(0x11f)),_0x242041[_0x3fd181(0x107)]('3.\x20Test\x20thoroughly');}return _0x242041;}[a0_0x226d09(0x10f)](_0x4f99ec,_0x2028fc=0xa){const _0x56e25c=a0_0x226d09,_0x37590c=_0x4f99ec[_0x56e25c(0x10b)]('\x0a');if(_0x37590c['length']<=_0x2028fc)return _0x4f99ec;return _0x37590c[_0x56e25c(0x11c)](0x0,_0x2028fc)['join']('\x0a')+'\x0a...\x20(truncated)';}['averageLineCount'](_0x3f3bf3){const _0x5a6c33=a0_0x226d09,_0x296341=_0x3f3bf3[_0x5a6c33(0x129)]((_0x2ae3ca,_0x47171c)=>_0x2ae3ca+(_0x47171c['endLine']-_0x47171c['startLine']+0x1),0x0);return Math[_0x5a6c33(0x10c)](_0x296341/_0x3f3bf3['length']);}}function a0_0x8ead(){const _0x544e69=['D2HPBgu','ChvZAa','DhLWzq','y29Kzq','Bwf0y2G','C3bSAxq','CM91BMq','AgLNAa','qw5HBhL6Aw5NignSB25LCYbMB3iGCMvMywn0B3jPBMCGB3bWB3j0Dw5PDgLLCY4UlG','Dhj1BMnHDgvdB2rL','mtG0vg1rwNzd','igr1CgXPy2f0zwqGBgLUzxmUia','C29Tzq','zwXZzq','BgvUz3rO','mte4ndm3otbLBK5mz1i','ihDVDwXKigLTChjVDMuGBwfPBNrHAw5HyMLSAxr5','q2XHC3m','z2vUzxjHDgvby3rPB25HyMXLu3rLChm','Aw5JBhvKzxm','y2HHCKf0','mI4Gtw92zsbYzwXHDgvKig1LDgHVzhmGyw5KihbYB3bLCNrPzxmGAw50BYb0AguGy2XHC3m','C2XPy2u','nc4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGy2fSBhmGDg8GDgHLig5LDYbMDw5JDgLVBG','mI4Gtw92zsb0AguGzhvWBgLJyxrLzcbSB2DPyYbPBNrVihrOAxmGzNvUy3rPB24','mI4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGDgHLigv4DhjHy3rLzcb2zxjZAw9U','zMLSzxndB3zLCMvK','odHTqMTxuLK','lcbHBMqGCMvKDwnLignVzguGC2L6zq','y29UC3q','ms4Gq3jLyxrLigeGBMv3igz1BMn0Aw9Uig5HBwvKicC','zgv0zxjTAw5LuMvMywn0B3jPBMDtDhjHDgvNEq','mKTSwwfksG','ndmXmJa1nNv5Cwvtuq','y29UzMLKzw5Jzq','CMvKDwnL','Bgv0','y2fSy3vSyxrLsw1Wywn0u2nVCMu','mtbPsNbcEMu','CMvWBgfJzq','lcbYzxn1BhrPBMCGAw4G','ihrPBwvZ','zM9Y','mJG4ovzgDhfqyG','y2XVBMuT','mJa1mZq1n1rxt3HHyq','nZeXntyYDfvQD1fN','igXVy2f0Aw9UCW','zxH0CMfJDgvKrNvUy3rPB24','Dg9vChbLCKnHC2u','y29UzMLN','zxH0CMfJDc1JBgfZCW','zxH0CMfJDc1TB2r1Bgu','rwXPBwLUyxrLia','zxH0CMfJDc1MDw5JDgLVBG','Bg9N','mY4GrxHWB3j0ihrOzsbUzwnLC3nHCNKGzNvUy3rPB25Zl2nSyxnZzxm','twfRzsbMDxr1CMuGy2HHBMDLCYbLyxnPzxiGyw5KigXLC3mGzxjYB3iTChjVBMu','nLf1qvDiuW','zgv0zxjTAw5LuhjPB3jPDhK','Bg93','y3jLyxrLrNvUy3rPB25oyw1L','zNvUy3rPB24','igzPBgvZ','igrPzMzLCMvUDcbMAwXLCW','ns4GvgvZDcb0BYbLBNn1CMuGyMvOyxzPB3iGAxmGChjLC2vYDMvK','BwLU','mtGWnJG2nhbUBKXjEq','y2fSy3vSyxrLtwv0CMLJCW','yMXVy2TZ','zM9YrwfJAa','mtyWndiXn3nkD2PTzW','zhvWBgLJyxrLzeXPBMvZ','AM9PBG','Aw1Wywn0u2nVCMu','Bwv0CMLJCW','BwvKAxvT','C29YDa','yw5HBhL6zunSB25LCW','rNvUy3rPB24','BwfW','zMLSzq'];a0_0x8ead=function(){return _0x544e69;};return a0_0x8ead();}
@@ -1 +1 @@
1
- function a0_0x5830(_0x1e9d2f,_0xec4222){_0x1e9d2f=_0x1e9d2f-0x71;const _0x35bc5b=a0_0x35bc();let _0x58305e=_0x35bc5b[_0x1e9d2f];if(a0_0x5830['XAqOHX']===undefined){var _0x24c36b=function(_0x3ef6ec){const _0x190839='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x56537f='',_0x232a5e='';for(let _0x7deb43=0x0,_0xb37af9,_0x3d0efb,_0xf302a6=0x0;_0x3d0efb=_0x3ef6ec['charAt'](_0xf302a6++);~_0x3d0efb&&(_0xb37af9=_0x7deb43%0x4?_0xb37af9*0x40+_0x3d0efb:_0x3d0efb,_0x7deb43++%0x4)?_0x56537f+=String['fromCharCode'](0xff&_0xb37af9>>(-0x2*_0x7deb43&0x6)):0x0){_0x3d0efb=_0x190839['indexOf'](_0x3d0efb);}for(let _0x1e4f20=0x0,_0x4c7c62=_0x56537f['length'];_0x1e4f20<_0x4c7c62;_0x1e4f20++){_0x232a5e+='%'+('00'+_0x56537f['charCodeAt'](_0x1e4f20)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x232a5e);};a0_0x5830['GtVirQ']=_0x24c36b,a0_0x5830['yJuwkg']={},a0_0x5830['XAqOHX']=!![];}const _0x178fda=_0x35bc5b[0x0],_0x3fa998=_0x1e9d2f+_0x178fda,_0x20aed3=a0_0x5830['yJuwkg'][_0x3fa998];return!_0x20aed3?(_0x58305e=a0_0x5830['GtVirQ'](_0x58305e),a0_0x5830['yJuwkg'][_0x3fa998]=_0x58305e):_0x58305e=_0x20aed3,_0x58305e;}const a0_0x415f76=a0_0x5830;function a0_0x35bc(){const _0x23a81e=['BwLU','yxbWCM94Aw1HDgvmq1m','rM91BMqG','z3jVDxbcEuHHC2G','ndmYodeWngHAzhfeua','C2LTAwXHCG','AgfZAa','Bg9N','y29UzMLN','ChvZAa','mtnpq0rvDNy','zMLUzfnPBwLSyxjdBg9Uzxm','ignVzguGyMXVy2TZ','Bwf4','ndLvuMTJvKe','zw50CMLLCW','ndK3odyYCwn2r0H2','BwfW','mJK5ntbUqvzesNO','zMLSDgvY','mZy1ndy2CwHcs0XW','mJmXm0Dhqu1UDW','nJG2mtLZEerqvMC','C2LTAwXHCML0EvrOCMvZAg9Sza','qw5HBhL6Aw5Nia','mtmZmJyZmMTYzw16vq','Dg9Rzw5Z','ywrK','BgvUz3rO','oeXRy3HqvG','zMLSBa','CgfYC2vY','mZi5nZC2ntzIu0TbzgS','BwLUvg9Rzw5Z','C2XPy2u','y2fSy3vSyxrLqMXVy2TtAw1PBgfYAxr5','mJvQEgDHDNK','oezlzuLKzG'];a0_0x35bc=function(){return _0x23a81e;};return a0_0x35bc();}(function(_0x25bf9b,_0x4130a7){const _0x55cd02=a0_0x5830,_0x4842dd=_0x25bf9b();while(!![]){try{const _0x5da6a4=parseInt(_0x55cd02(0x80))/0x1*(parseInt(_0x55cd02(0x8f))/0x2)+parseInt(_0x55cd02(0x7a))/0x3*(parseInt(_0x55cd02(0x87))/0x4)+-parseInt(_0x55cd02(0x8e))/0x5*(parseInt(_0x55cd02(0x7e))/0x6)+-parseInt(_0x55cd02(0x78))/0x7*(parseInt(_0x55cd02(0x83))/0x8)+-parseInt(_0x55cd02(0x7f))/0x9*(parseInt(_0x55cd02(0x7c))/0xa)+-parseInt(_0x55cd02(0x94))/0xb+parseInt(_0x55cd02(0x8a))/0xc*(parseInt(_0x55cd02(0x74))/0xd);if(_0x5da6a4===_0x4130a7)break;else _0x4842dd['push'](_0x4842dd['shift']());}catch(_0x3aaad9){_0x4842dd['push'](_0x4842dd['shift']());}}}(a0_0x35bc,0xaff5f));export class CloneDetector{constructor(_0x56537f,_0x232a5e){const _0x18e83e=a0_0x5830;this['config']=_0x56537f,this[_0x18e83e(0x89)]=_0x232a5e;}['detectClones'](_0x7deb43){const _0x3e09d7=a0_0x5830;console[_0x3e09d7(0x71)]('Detecting\x20clones...');const _0xb37af9=[],_0x3d0efb=[];for(const _0x4c7c62 of _0x7deb43){_0x3d0efb[_0x3e09d7(0x73)](..._0x4c7c62['blocks']);}console['log'](_0x3e09d7(0x82)+_0x3d0efb['length']+_0x3e09d7(0x76));const _0xf302a6=this['groupByHash'](_0x3d0efb);for(const [_0x24aaf5,_0x3edd93]of Object[_0x3e09d7(0x79)](_0xf302a6)){_0x3edd93['length']>0x1&&_0xb37af9['push']({'type':'exact','confidence':0x1,'blocks':_0x3edd93,'tokenCount':_0x3edd93[0x0]['tokens'][_0x3e09d7(0x86)]});}const _0x1e4f20=this[_0x3e09d7(0x75)](_0x3d0efb);return _0xb37af9['push'](..._0x1e4f20),console[_0x3e09d7(0x71)](_0x3e09d7(0x92)+_0xb37af9['length']+'\x20clone\x20groups'),_0xb37af9;}[a0_0x415f76(0x93)](_0x22e6ac){const _0xcdbdbd=a0_0x415f76,_0x2ec3b1={};for(const _0x23f3e9 of _0x22e6ac){if(_0x23f3e9[_0xcdbdbd(0x84)]['length']<this['config'][_0xcdbdbd(0x8b)])continue;!_0x2ec3b1[_0x23f3e9[_0xcdbdbd(0x96)]]&&(_0x2ec3b1[_0x23f3e9['hash']]=[]),_0x2ec3b1[_0x23f3e9['hash']]['push'](_0x23f3e9);}return _0x2ec3b1;}['findSimilarClones'](_0x249c92){const _0x40bdda=a0_0x415f76,_0x20a1e5=[],processed=new Set(),_0x202405=_0x249c92[_0x40bdda(0x7d)](_0x445968=>_0x445968[_0x40bdda(0x84)][_0x40bdda(0x86)]>=this[_0x40bdda(0x72)][_0x40bdda(0x8b)]);for(let _0x4d508e=0x0;_0x4d508e<_0x202405['length'];_0x4d508e++){const _0xca92dc=_0x202405[_0x4d508e],_0x117bbe=[_0xca92dc];if(processed['has'](_0xca92dc['id']))continue;for(let _0x9739b8=_0x4d508e+0x1;_0x9739b8<_0x202405[_0x40bdda(0x86)];_0x9739b8++){const _0xb2532=_0x202405[_0x9739b8];if(processed['has'](_0xb2532['id']))continue;if(_0xca92dc[_0x40bdda(0x96)]===_0xb2532['hash'])continue;const _0x486bdb=this[_0x40bdda(0x8d)](_0xca92dc,_0xb2532);_0x486bdb>=this['config'][_0x40bdda(0x81)]&&(_0x117bbe[_0x40bdda(0x73)](_0xb2532),processed['add'](_0xb2532['id']));}_0x117bbe['length']>0x1&&(processed[_0x40bdda(0x85)](_0xca92dc['id']),_0x20a1e5['push']({'type':_0x40bdda(0x95),'confidence':this['calculateGroupConfidence'](_0x117bbe),'blocks':_0x117bbe,'tokenCount':Math['max'](..._0x117bbe[_0x40bdda(0x7b)](_0x20a0c8=>_0x20a0c8['tokens'][_0x40bdda(0x86)]))}));}return _0x20a1e5;}['calculateBlockSimilarity'](_0x53e88f,_0x4200c4){const _0xc8ea0e=a0_0x415f76,_0x11ba1d=_0x53e88f['tokens'],_0x51694d=_0x4200c4[_0xc8ea0e(0x84)],_0x16fffb=Math[_0xc8ea0e(0x90)](_0x11ba1d[_0xc8ea0e(0x86)],_0x51694d['length'])/Math[_0xc8ea0e(0x77)](_0x11ba1d['length'],_0x51694d['length']);if(_0x16fffb<0.7)return 0x0;const _0x5839f8=this['longestCommonSubsequence'](_0x11ba1d,_0x51694d),_0x26be13=0x2*_0x5839f8/(_0x11ba1d[_0xc8ea0e(0x86)]+_0x51694d['length']);return _0x26be13;}['longestCommonSubsequence'](_0x1af3bd,_0xd2bdac){const _0x492c31=a0_0x415f76,_0x5c9458=_0x1af3bd['length'],_0x399b23=_0xd2bdac[_0x492c31(0x86)];if(_0x5c9458*_0x399b23>0x186a0)return this[_0x492c31(0x91)](_0x1af3bd,_0xd2bdac);const _0x32e0ff=Array(_0x5c9458+0x1)['fill'](0x0)[_0x492c31(0x7b)](()=>Array(_0x399b23+0x1)[_0x492c31(0x88)](0x0));for(let _0x54364f=0x1;_0x54364f<=_0x5c9458;_0x54364f++){for(let _0x4b0a04=0x1;_0x4b0a04<=_0x399b23;_0x4b0a04++){_0x1af3bd[_0x54364f-0x1]===_0xd2bdac[_0x4b0a04-0x1]?_0x32e0ff[_0x54364f][_0x4b0a04]=_0x32e0ff[_0x54364f-0x1][_0x4b0a04-0x1]+0x1:_0x32e0ff[_0x54364f][_0x4b0a04]=Math[_0x492c31(0x77)](_0x32e0ff[_0x54364f-0x1][_0x4b0a04],_0x32e0ff[_0x54364f][_0x4b0a04-0x1]);}}return _0x32e0ff[_0x5c9458][_0x399b23];}[a0_0x415f76(0x91)](_0x12c339,_0x4d79dc){const _0x44ce05=a0_0x415f76,_0x22d529=0x64;let _0x488b84=0x0;for(let _0xb79838=0x0;_0xb79838<_0x12c339[_0x44ce05(0x86)];_0xb79838+=_0x22d529){const _0x36fdc6=_0x12c339[_0x44ce05(0x8c)](_0xb79838,_0xb79838+_0x22d529),_0x47fb80=new Set(_0x4d79dc['slice'](Math['max'](0x0,_0xb79838-_0x22d529),_0xb79838+_0x22d529*0x2));_0x488b84+=_0x36fdc6[_0x44ce05(0x7d)](_0x443c74=>_0x47fb80['has'](_0x443c74))[_0x44ce05(0x86)];}return _0x488b84;}['calculateGroupConfidence'](_0x342a8a){const _0x1774f1=a0_0x415f76;if(_0x342a8a['length']===0x0)return 0x0;let _0x47bb33=0x0,_0x2933b5=0x0;for(let _0x3667a0=0x0;_0x3667a0<_0x342a8a[_0x1774f1(0x86)];_0x3667a0++){for(let _0x47f724=_0x3667a0+0x1;_0x47f724<_0x342a8a[_0x1774f1(0x86)];_0x47f724++){_0x47bb33+=this[_0x1774f1(0x8d)](_0x342a8a[_0x3667a0],_0x342a8a[_0x47f724]),_0x2933b5++;}}return _0x2933b5>0x0?_0x47bb33/_0x2933b5:0x0;}}
1
+ const a0_0x12c726=a0_0xa8fb;function a0_0xa8fb(_0x1272f7,_0x3597bb){_0x1272f7=_0x1272f7-0x147;const _0x5b7b4f=a0_0x5b7b();let _0xa8fb6f=_0x5b7b4f[_0x1272f7];if(a0_0xa8fb['UAGiMd']===undefined){var _0x452239=function(_0x5bb6e9){const _0x4fb87e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc4300b='',_0x37dca4='';for(let _0x5ecad2=0x0,_0x12a10b,_0xc74758,_0x405db5=0x0;_0xc74758=_0x5bb6e9['charAt'](_0x405db5++);~_0xc74758&&(_0x12a10b=_0x5ecad2%0x4?_0x12a10b*0x40+_0xc74758:_0xc74758,_0x5ecad2++%0x4)?_0xc4300b+=String['fromCharCode'](0xff&_0x12a10b>>(-0x2*_0x5ecad2&0x6)):0x0){_0xc74758=_0x4fb87e['indexOf'](_0xc74758);}for(let _0xae0f30=0x0,_0x336d0c=_0xc4300b['length'];_0xae0f30<_0x336d0c;_0xae0f30++){_0x37dca4+='%'+('00'+_0xc4300b['charCodeAt'](_0xae0f30)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x37dca4);};a0_0xa8fb['dhnEcb']=_0x452239,a0_0xa8fb['bSAZuW']={},a0_0xa8fb['UAGiMd']=!![];}const _0x511359=_0x5b7b4f[0x0],_0x44dc3e=_0x1272f7+_0x511359,_0x1bf314=a0_0xa8fb['bSAZuW'][_0x44dc3e];return!_0x1bf314?(_0xa8fb6f=a0_0xa8fb['dhnEcb'](_0xa8fb6f),a0_0xa8fb['bSAZuW'][_0x44dc3e]=_0xa8fb6f):_0xa8fb6f=_0x1bf314,_0xa8fb6f;}(function(_0x790fa1,_0x23ee2e){const _0x34e895=a0_0xa8fb,_0x4a25b1=_0x790fa1();while(!![]){try{const _0x53b06e=parseInt(_0x34e895(0x15a))/0x1*(parseInt(_0x34e895(0x148))/0x2)+parseInt(_0x34e895(0x161))/0x3*(parseInt(_0x34e895(0x155))/0x4)+parseInt(_0x34e895(0x15f))/0x5+-parseInt(_0x34e895(0x157))/0x6+parseInt(_0x34e895(0x162))/0x7*(-parseInt(_0x34e895(0x166))/0x8)+-parseInt(_0x34e895(0x15d))/0x9+parseInt(_0x34e895(0x14f))/0xa*(-parseInt(_0x34e895(0x159))/0xb);if(_0x53b06e===_0x23ee2e)break;else _0x4a25b1['push'](_0x4a25b1['shift']());}catch(_0x549f0c){_0x4a25b1['push'](_0x4a25b1['shift']());}}}(a0_0x5b7b,0xa7898));function a0_0x5b7b(){const _0x258930=['mJu2mJiYohP3CgrryW','Dg9Rzw5Z','ndK5odm1mhzcC3jcDG','zxHHy3q','odDiu0v2zKq','odC2ota0n01UBNnXEa','zw50CMLLCW','Bwf4','AgfZAa','ohjUv2HNsW','BgvUz3rO','mJi0mZHqCgDztKO','y2fSy3vSyxrLqMXVy2TtAw1PBgfYAxr5','BwLUvg9Rzw5Z','zMLSDgvY','BwLU','yxbWCM94Aw1HDgvmq1m','AgfZ','mJK0ody4meP2wxrKBq','zMLUzfnPBwLSyxjdBg9Uzxm','C2LTAwXHCML0EvrOCMvZAg9Sza','C2LTAwXHCG','z3jVDxbcEuHHC2G','y29UzMLN','mtG2nZy0rfv6Ewnn','C2XPy2u','nJa3ote0nKH5EKTvrW','BwfW','mtf1zg94t1O','mta1CefHBu5r','ChvZAa','ignVzguGyMXVy2TZ'];a0_0x5b7b=function(){return _0x258930;};return a0_0x5b7b();}export class CloneDetector{constructor(_0xc4300b,_0x37dca4){const _0x1fc9c1=a0_0xa8fb;this[_0x1fc9c1(0x154)]=_0xc4300b,this['parser']=_0x37dca4;}['detectClones'](_0x5ecad2){const _0x3e45c6=a0_0xa8fb;console['log']('Detecting\x20clones...');const _0x12a10b=[],_0xc74758=[];for(const _0x336d0c of _0x5ecad2){_0xc74758[_0x3e45c6(0x15b)](..._0x336d0c['blocks']);}console['log']('Analyzing\x20'+_0xc74758[_0x3e45c6(0x147)]+_0x3e45c6(0x15c));const _0x405db5=this[_0x3e45c6(0x153)](_0xc74758);for(const [_0x2da1d3,_0x1f2c8a]of Object[_0x3e45c6(0x163)](_0x405db5)){_0x1f2c8a['length']>0x1&&_0x12a10b[_0x3e45c6(0x15b)]({'type':_0x3e45c6(0x160),'confidence':0x1,'blocks':_0x1f2c8a,'tokenCount':_0x1f2c8a[0x0][_0x3e45c6(0x15e)][_0x3e45c6(0x147)]});}const _0xae0f30=this[_0x3e45c6(0x150)](_0xc74758);return _0x12a10b['push'](..._0xae0f30),console['log']('Found\x20'+_0x12a10b[_0x3e45c6(0x147)]+'\x20clone\x20groups'),_0x12a10b;}['groupByHash'](_0x418b3d){const _0x1b88f1=a0_0xa8fb,_0x37bf17={};for(const _0x287d72 of _0x418b3d){if(_0x287d72['tokens']['length']<this[_0x1b88f1(0x154)][_0x1b88f1(0x14a)])continue;!_0x37bf17[_0x287d72[_0x1b88f1(0x165)]]&&(_0x37bf17[_0x287d72['hash']]=[]),_0x37bf17[_0x287d72['hash']][_0x1b88f1(0x15b)](_0x287d72);}return _0x37bf17;}[a0_0x12c726(0x150)](_0x657d00){const _0x2decef=a0_0x12c726,_0x3b3ada=[],processed=new Set(),_0x20b6f6=_0x657d00[_0x2decef(0x14b)](_0x218396=>_0x218396['tokens']['length']>=this[_0x2decef(0x154)][_0x2decef(0x14a)]);for(let _0x4b419a=0x0;_0x4b419a<_0x20b6f6['length'];_0x4b419a++){const _0x146e9c=_0x20b6f6[_0x4b419a],_0x357d41=[_0x146e9c];if(processed['has'](_0x146e9c['id']))continue;for(let _0x2f5dc2=_0x4b419a+0x1;_0x2f5dc2<_0x20b6f6['length'];_0x2f5dc2++){const _0x368a5a=_0x20b6f6[_0x2f5dc2];if(processed[_0x2decef(0x14e)](_0x368a5a['id']))continue;if(_0x146e9c['hash']===_0x368a5a[_0x2decef(0x165)])continue;const _0xa18a93=this['calculateBlockSimilarity'](_0x146e9c,_0x368a5a);_0xa18a93>=this[_0x2decef(0x154)][_0x2decef(0x151)]&&(_0x357d41[_0x2decef(0x15b)](_0x368a5a),processed['add'](_0x368a5a['id']));}_0x357d41[_0x2decef(0x147)]>0x1&&(processed['add'](_0x146e9c['id']),_0x3b3ada['push']({'type':_0x2decef(0x152),'confidence':this['calculateGroupConfidence'](_0x357d41),'blocks':_0x357d41,'tokenCount':Math[_0x2decef(0x164)](..._0x357d41['map'](_0x592bb5=>_0x592bb5['tokens'][_0x2decef(0x147)]))}));}return _0x3b3ada;}[a0_0x12c726(0x149)](_0x368a9a,_0x1cb7cf){const _0x184bed=a0_0x12c726,_0x7ba49=_0x368a9a['tokens'],_0x4a3f26=_0x1cb7cf['tokens'],_0x52e75a=Math[_0x184bed(0x14c)](_0x7ba49['length'],_0x4a3f26['length'])/Math[_0x184bed(0x164)](_0x7ba49[_0x184bed(0x147)],_0x4a3f26['length']);if(_0x52e75a<0.7)return 0x0;const _0x6beda7=this['longestCommonSubsequence'](_0x7ba49,_0x4a3f26),_0x51160d=0x2*_0x6beda7/(_0x7ba49['length']+_0x4a3f26['length']);return _0x51160d;}['longestCommonSubsequence'](_0x369d10,_0x5acfa4){const _0x5996a3=a0_0x12c726,_0x560958=_0x369d10[_0x5996a3(0x147)],_0x14687b=_0x5acfa4['length'];if(_0x560958*_0x14687b>0x186a0)return this['approximateLCS'](_0x369d10,_0x5acfa4);const _0x83019f=Array(_0x560958+0x1)['fill'](0x0)[_0x5996a3(0x158)](()=>Array(_0x14687b+0x1)['fill'](0x0));for(let _0x2beb6f=0x1;_0x2beb6f<=_0x560958;_0x2beb6f++){for(let _0x24d106=0x1;_0x24d106<=_0x14687b;_0x24d106++){_0x369d10[_0x2beb6f-0x1]===_0x5acfa4[_0x24d106-0x1]?_0x83019f[_0x2beb6f][_0x24d106]=_0x83019f[_0x2beb6f-0x1][_0x24d106-0x1]+0x1:_0x83019f[_0x2beb6f][_0x24d106]=Math[_0x5996a3(0x164)](_0x83019f[_0x2beb6f-0x1][_0x24d106],_0x83019f[_0x2beb6f][_0x24d106-0x1]);}}return _0x83019f[_0x560958][_0x14687b];}[a0_0x12c726(0x14d)](_0x162045,_0x5f0393){const _0x39a9a0=a0_0x12c726,_0x1e0a13=0x64;let _0x5b9465=0x0;for(let _0x5c03d0=0x0;_0x5c03d0<_0x162045[_0x39a9a0(0x147)];_0x5c03d0+=_0x1e0a13){const _0x10779e=_0x162045[_0x39a9a0(0x156)](_0x5c03d0,_0x5c03d0+_0x1e0a13),_0x1c4e30=new Set(_0x5f0393[_0x39a9a0(0x156)](Math[_0x39a9a0(0x164)](0x0,_0x5c03d0-_0x1e0a13),_0x5c03d0+_0x1e0a13*0x2));_0x5b9465+=_0x10779e['filter'](_0x22d820=>_0x1c4e30['has'](_0x22d820))['length'];}return _0x5b9465;}['calculateGroupConfidence'](_0x234b05){const _0x562e53=a0_0x12c726;if(_0x234b05[_0x562e53(0x147)]===0x0)return 0x0;let _0xe3a649=0x0,_0x70f6a4=0x0;for(let _0x4a39f6=0x0;_0x4a39f6<_0x234b05['length'];_0x4a39f6++){for(let _0x48409a=_0x4a39f6+0x1;_0x48409a<_0x234b05[_0x562e53(0x147)];_0x48409a++){_0xe3a649+=this[_0x562e53(0x149)](_0x234b05[_0x4a39f6],_0x234b05[_0x48409a]),_0x70f6a4++;}}return _0x70f6a4>0x0?_0xe3a649/_0x70f6a4:0x0;}}