@loxia-labs/loxia-autopilot-one 1.0.10 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/aiService.js +1 -1
  76. package/src/services/apiKeyManager.js +1 -1
  77. package/src/services/benchmarkService.js +1 -1
  78. package/src/services/budgetService.js +1 -1
  79. package/src/services/contextInjectionService.js +1 -1
  80. package/src/services/conversationCompactionService.js +1 -1
  81. package/src/services/errorHandler.js +1 -1
  82. package/src/services/fileAttachmentService.js +1 -1
  83. package/src/services/modelRouterService.js +1 -1
  84. package/src/services/modelsService.js +1 -1
  85. package/src/services/qualityInspector.js +1 -1
  86. package/src/services/tokenCountingService.js +1 -1
  87. package/src/tools/agentCommunicationTool.js +1 -1
  88. package/src/tools/agentDelayTool.js +1 -1
  89. package/src/tools/asyncToolManager.js +1 -1
  90. package/src/tools/baseTool.js +1 -1
  91. package/src/tools/browserTool.js +1 -1
  92. package/src/tools/cloneDetectionTool.js +1 -1
  93. package/src/tools/dependencyResolverTool.js +1 -1
  94. package/src/tools/fileContentReplaceTool.js +1 -1
  95. package/src/tools/fileSystemTool.js +1 -1
  96. package/src/tools/fileTreeTool.js +1 -1
  97. package/src/tools/imageTool.js +1 -1
  98. package/src/tools/importAnalyzerTool.js +1 -1
  99. package/src/tools/jobDoneTool.js +1 -1
  100. package/src/tools/seekTool.js +1 -1
  101. package/src/tools/staticAnalysisTool.js +1 -1
  102. package/src/tools/taskManagerTool.js +1 -1
  103. package/src/tools/terminalTool.js +1 -1
  104. package/src/tools/webTool.js +1 -1
  105. package/src/types/agent.js +1 -1
  106. package/src/types/contextReference.js +1 -1
  107. package/src/types/conversation.js +1 -1
  108. package/src/types/toolCommand.js +1 -1
  109. package/src/utilities/attachmentValidator.js +1 -1
  110. package/src/utilities/configManager.js +1 -1
  111. package/src/utilities/constants.js +1 -1
  112. package/src/utilities/directoryAccessManager.js +1 -1
  113. package/src/utilities/fileProcessor.js +1 -1
  114. package/src/utilities/logger.js +1 -1
  115. package/src/utilities/tagParser.js +1 -1
  116. package/src/utilities/toolConstants.js +1 -1
  117. package/web-ui/build/index.html +2 -2
  118. package/web-ui/build/static/{index-CoRE46V-.js → index-C5X7qBNF.js} +63 -63
  119. package/web-ui/build/static/index-g2UFuTwG.css +1 -0
  120. package/web-ui/build/static/index-P281Rusr.css +0 -1
@@ -1 +1 @@
1
- const a0_0xd183ba=a0_0x4e50;(function(_0x398262,_0x1a9119){const _0x495c24=a0_0x4e50,_0x95dc90=_0x398262();while(!![]){try{const _0x1cde3c=parseInt(_0x495c24(0x198))/0x1+parseInt(_0x495c24(0x193))/0x2*(-parseInt(_0x495c24(0x1a2))/0x3)+parseInt(_0x495c24(0x194))/0x4+-parseInt(_0x495c24(0x18d))/0x5*(-parseInt(_0x495c24(0x1b2))/0x6)+parseInt(_0x495c24(0x181))/0x7*(-parseInt(_0x495c24(0x1b0))/0x8)+-parseInt(_0x495c24(0x195))/0x9*(parseInt(_0x495c24(0x1a4))/0xa)+-parseInt(_0x495c24(0x1b4))/0xb;if(_0x1cde3c===_0x1a9119)break;else _0x95dc90['push'](_0x95dc90['shift']());}catch(_0x23268c){_0x95dc90['push'](_0x95dc90['shift']());}}}(a0_0xc08f,0xa070f));import a0_0x1a355f from'typescript';function a0_0x4e50(_0x565c4a,_0x490b32){_0x565c4a=_0x565c4a-0x17d;const _0xc08f23=a0_0xc08f();let _0x4e50b6=_0xc08f23[_0x565c4a];if(a0_0x4e50['QTJSeM']===undefined){var _0x30ce08=function(_0x38a931){const _0x530a94='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a355f='',_0x15bd1b='';for(let _0x217a34=0x0,_0x3a986f,_0x5087cf,_0xf1947=0x0;_0x5087cf=_0x38a931['charAt'](_0xf1947++);~_0x5087cf&&(_0x3a986f=_0x217a34%0x4?_0x3a986f*0x40+_0x5087cf:_0x5087cf,_0x217a34++%0x4)?_0x1a355f+=String['fromCharCode'](0xff&_0x3a986f>>(-0x2*_0x217a34&0x6)):0x0){_0x5087cf=_0x530a94['indexOf'](_0x5087cf);}for(let _0x4944c5=0x0,_0x26d4f8=_0x1a355f['length'];_0x4944c5<_0x26d4f8;_0x4944c5++){_0x15bd1b+='%'+('00'+_0x1a355f['charCodeAt'](_0x4944c5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x15bd1b);};a0_0x4e50['jftRIQ']=_0x30ce08,a0_0x4e50['DEPjHx']={},a0_0x4e50['QTJSeM']=!![];}const _0x13a558=_0xc08f23[0x0],_0x270921=_0x565c4a+_0x13a558,_0x448570=a0_0x4e50['DEPjHx'][_0x270921];return!_0x448570?(_0x4e50b6=a0_0x4e50['jftRIQ'](_0x4e50b6),a0_0x4e50['DEPjHx'][_0x270921]=_0x4e50b6):_0x4e50b6=_0x448570,_0x4e50b6;}import a0_0x15bd1b from'path';function a0_0xc08f(){const _0x27bcef=['y29Kzq','su5gtW','y2HHCMfJDgvY','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','nda4uKrJy0zz','Aw5JBhvKzxm','nJm4ndi0C1DtvNrk','z2v0u3rHCNq','ode4mZe2nfrVyxDMyW','tM9KzuPZ','zgLYBMfTzq','tw9KDwXLs2LUza','Dw5RBM93BG','qw5HBhLZAxmGzMfPBgvKoIa','mJKXotDzuujquxe','u0vwrvjjvfK','rxjYB3i','sNn4rw1PDa','BgvUz3rO','y3jLyxrLuhjVz3jHBq','zM9YrwfJAenOAwXK','uMvHy3q','BwvZC2fNzq','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','ChvZAa','y2f0zwDVCNK','mZv1rgfQsLm','q0furuDpuLK','rgLHz25VC3rPy0nHDgvNB3j5','tgf0zxn0','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','zMLSzq','mtC4ufjky3rU','mZi4otyXmNPqzMPpqG','nZKXmtKWz2rztwPS','rvjst1i','BwvZC2fNzvrLEhq','nti1odi0sejbs1LA','u1Lovefy','yw5HBhL6zq','sMf2yvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','BgLUzq','v2fYBMLUzW','twvZC2fNzq','BgLIlMqUDhm','Bg9Nz2vY','Dg9mB3DLCKnHC2u','mtmXotfgzfzOv2i','u2nYAxb0vgfYz2v0','mtbuzw9frwK','y29TCgLSzxjpChrPB25Z','C3rHCNq','vw5RBM93BG','zMLSzu5HBwu','su1qt1ju','zxjYB3i','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24'];a0_0xc08f=function(){return _0x27bcef;};return a0_0xc08f();}import{STATIC_ANALYSIS}from'../utilities/constants.js';class JavaScriptAnalyzer{constructor(_0x217a34=null){const _0x176c8d=a0_0x4e50;this['logger']=_0x217a34,this[_0x176c8d(0x1a5)]={'allowJs':!![],'checkJs':!![],'noEmit':!![],'jsx':a0_0x1a355f[_0x176c8d(0x184)][_0x176c8d(0x188)],'target':a0_0x1a355f['ScriptTarget'][_0x176c8d(0x190)],'module':a0_0x1a355f[_0x176c8d(0x17e)]['ESNext'],'moduleResolution':a0_0x1a355f['ModuleResolutionKind'][_0x176c8d(0x1b5)],'esModuleInterop':!![],'skipLibCheck':!![],'strict':![],'noImplicitAny':![]};}async[a0_0xd183ba(0x19a)](_0x3a986f,_0x5087cf,_0xf1947={}){const _0x5ea47f=a0_0xd183ba;try{const _0x4944c5=[],_0x26d4f8=a0_0x1a355f['createSourceFile'](_0x3a986f,_0x5087cf,a0_0x1a355f['ScriptTarget']['Latest'],!![]),_0x4c3ef5=this[_0x5ea47f(0x1af)](_0x26d4f8);_0x4944c5[_0x5ea47f(0x18b)](..._0x4c3ef5);const _0x51f3ad=await this['getSemanticDiagnostics'](_0x3a986f,_0x5087cf);return _0x4944c5[_0x5ea47f(0x18b)](..._0x51f3ad),this[_0x5ea47f(0x1a0)]?.['debug'](_0x5ea47f(0x19b),{'file':_0x3a986f,'totalDiagnostics':_0x4944c5['length'],'errors':_0x4944c5['filter'](_0x24886b=>_0x24886b['severity']===STATIC_ANALYSIS[_0x5ea47f(0x182)]['ERROR'])[_0x5ea47f(0x185)],'warnings':_0x4944c5['filter'](_0x2529fd=>_0x2529fd['severity']===STATIC_ANALYSIS['SEVERITY']['WARNING'])['length']}),_0x4944c5;}catch(_0x4eda41){return this['logger']?.[_0x5ea47f(0x1aa)]('JavaScript\x20analysis\x20failed',{'file':_0x3a986f,'error':_0x4eda41[_0x5ea47f(0x189)]}),[{'file':_0x3a986f,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY'][_0x5ea47f(0x196)],'rule':'analyzer-error','message':_0x5ea47f(0x180)+_0x4eda41[_0x5ea47f(0x189)],'category':STATIC_ANALYSIS['CATEGORY'][_0x5ea47f(0x199)]}];}}['getSyntacticDiagnostics'](_0x1af54d){const _0x1e0ed9=[],_0x22f95c=_0x21bf27=>{const _0x12a294=a0_0x4e50;if(_0x21bf27['kind']===a0_0x1a355f['SyntaxKind'][_0x12a294(0x1a7)]){const _0x16df51=_0x1af54d['getLineAndCharacterOfPosition'](_0x21bf27[_0x12a294(0x1b3)]());_0x1e0ed9['push']({'file':_0x1af54d[_0x12a294(0x1a8)],'line':_0x16df51['line']+0x1,'column':_0x16df51['character']+0x1,'severity':STATIC_ANALYSIS[_0x12a294(0x182)][_0x12a294(0x196)],'rule':'syntax-error','message':'Syntax\x20error','category':STATIC_ANALYSIS['CATEGORY'][_0x12a294(0x199)],'fixable':![]});}a0_0x1a355f[_0x12a294(0x187)](_0x21bf27,_0x22f95c);};_0x22f95c(_0x1af54d);if(_0x1af54d['parseDiagnostics']&&_0x1af54d['parseDiagnostics']['length']>0x0)for(const _0x3b388d of _0x1af54d['parseDiagnostics']){_0x1e0ed9['push'](this['formatDiagnostic'](_0x3b388d,_0x1af54d));}return _0x1e0ed9;}async[a0_0xd183ba(0x18a)](_0x2c042d,_0x3374d0){const _0x105fe6=a0_0xd183ba,_0x194845=[];try{const _0x15d46a=a0_0x1a355f['createSourceFile'](_0x2c042d,_0x3374d0,a0_0x1a355f[_0x105fe6(0x1a3)]['Latest'],!![]),_0x32e562={'getSourceFile':_0x1b80d0=>{if(_0x1b80d0===_0x2c042d)return _0x15d46a;return undefined;},'getDefaultLibFileName':()=>_0x105fe6(0x19f),'writeFile':()=>{},'getCurrentDirectory':()=>a0_0x15bd1b[_0x105fe6(0x17d)](_0x2c042d),'getDirectories':()=>[],'fileExists':_0x598bda=>_0x598bda===_0x2c042d,'readFile':_0x400b26=>{if(_0x400b26===_0x2c042d)return _0x3374d0;return undefined;},'getCanonicalFileName':_0x3a4df3=>_0x3a4df3,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x3d8070=a0_0x1a355f[_0x105fe6(0x186)]({'rootNames':[_0x2c042d],'options':this['compilerOptions'],'host':_0x32e562}),_0x38be19=_0x3d8070['getSemanticDiagnostics'](_0x15d46a);for(const _0x40fa93 of _0x38be19){_0x194845[_0x105fe6(0x18b)](this['formatDiagnostic'](_0x40fa93,_0x15d46a));}}catch(_0x372bda){this[_0x105fe6(0x1a0)]?.['debug']('Semantic\x20analysis\x20skipped',{'file':_0x2c042d,'reason':_0x372bda[_0x105fe6(0x189)]});}return _0x194845;}['formatDiagnostic'](_0x2f5c34,_0x164954){const _0x2a435a=a0_0xd183ba;let _0x291187=0x0,_0x15c9a1=0x0;if(_0x2f5c34[_0x2a435a(0x192)]&&_0x2f5c34[_0x2a435a(0x1a6)]!==undefined){const _0x59c962=_0x2f5c34[_0x2a435a(0x192)][_0x2a435a(0x1ab)](_0x2f5c34['start']);_0x291187=_0x59c962[_0x2a435a(0x19c)]+0x1,_0x15c9a1=_0x59c962[_0x2a435a(0x1ae)]+0x1;}else{if(_0x164954&&_0x2f5c34[_0x2a435a(0x1a6)]!==undefined){const _0x10c039=_0x164954[_0x2a435a(0x1ab)](_0x2f5c34['start']);_0x291187=_0x10c039[_0x2a435a(0x19c)]+0x1,_0x15c9a1=_0x10c039[_0x2a435a(0x1ae)]+0x1;}}const _0x402588=a0_0x1a355f[_0x2a435a(0x191)](_0x2f5c34[_0x2a435a(0x197)],'\x0a');let _0x2ce5a5;switch(_0x2f5c34[_0x2a435a(0x18c)]){case a0_0x1a355f[_0x2a435a(0x18f)][_0x2a435a(0x183)]:_0x2ce5a5=STATIC_ANALYSIS['SEVERITY'][_0x2a435a(0x196)];break;case a0_0x1a355f['DiagnosticCategory'][_0x2a435a(0x19d)]:_0x2ce5a5=STATIC_ANALYSIS['SEVERITY']['WARNING'];break;case a0_0x1a355f['DiagnosticCategory'][_0x2a435a(0x19e)]:case a0_0x1a355f['DiagnosticCategory']['Suggestion']:_0x2ce5a5=STATIC_ANALYSIS['SEVERITY'][_0x2a435a(0x1ad)];break;default:_0x2ce5a5=STATIC_ANALYSIS[_0x2a435a(0x182)][_0x2a435a(0x196)];}let _0x173b3f=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];const _0x2332fe=_0x2f5c34[_0x2a435a(0x1ac)];if(_0x2332fe>=0x7d0&&_0x2332fe<0xbb8)_0x173b3f=STATIC_ANALYSIS['CATEGORY']['TYPE'];else{if(_0x2332fe>=0x3e8&&_0x2332fe<0x7d0)_0x173b3f=STATIC_ANALYSIS['CATEGORY'][_0x2a435a(0x199)];else _0x2332fe>=0x8fc&&_0x2332fe<0x960&&(_0x173b3f=STATIC_ANALYSIS['CATEGORY'][_0x2a435a(0x1a9)]);}return(_0x402588[_0x2a435a(0x1a1)]()['includes']('cannot\x20find\x20module')||_0x402588[_0x2a435a(0x1a1)]()[_0x2a435a(0x1b1)]('import'))&&(_0x173b3f=STATIC_ANALYSIS[_0x2a435a(0x18e)][_0x2a435a(0x1a9)]),{'file':_0x2f5c34[_0x2a435a(0x192)]?.['fileName']||_0x164954?.['fileName']||_0x2a435a(0x17f),'line':_0x291187,'column':_0x15c9a1,'severity':_0x2ce5a5,'rule':'TS'+_0x2332fe,'message':_0x402588,'category':_0x173b3f,'fixable':![],'code':_0x2f5c34[_0x2a435a(0x1ac)]};}}export default JavaScriptAnalyzer;
1
+ const a0_0x3604d5=a0_0x30ea;(function(_0x45cb50,_0x3e29ec){const _0x589341=a0_0x30ea,_0x4c019a=_0x45cb50();while(!![]){try{const _0x1911d1=-parseInt(_0x589341(0x172))/0x1*(-parseInt(_0x589341(0x170))/0x2)+parseInt(_0x589341(0x16a))/0x3+parseInt(_0x589341(0x180))/0x4+-parseInt(_0x589341(0x174))/0x5*(parseInt(_0x589341(0x164))/0x6)+parseInt(_0x589341(0x17a))/0x7+-parseInt(_0x589341(0x173))/0x8+-parseInt(_0x589341(0x183))/0x9*(parseInt(_0x589341(0x185))/0xa);if(_0x1911d1===_0x3e29ec)break;else _0x4c019a['push'](_0x4c019a['shift']());}catch(_0x474613){_0x4c019a['push'](_0x4c019a['shift']());}}}(a0_0x49bf,0x30b71));function a0_0x30ea(_0x544a20,_0x24f3eb){_0x544a20=_0x544a20-0x161;const _0x49bf34=a0_0x49bf();let _0x30ea31=_0x49bf34[_0x544a20];if(a0_0x30ea['jjFzFH']===undefined){var _0x2c84b3=function(_0x493788){const _0x398d86='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f1abf='',_0x2ae0b7='';for(let _0x3343f1=0x0,_0x6bf1f1,_0x57ca9b,_0x4674bc=0x0;_0x57ca9b=_0x493788['charAt'](_0x4674bc++);~_0x57ca9b&&(_0x6bf1f1=_0x3343f1%0x4?_0x6bf1f1*0x40+_0x57ca9b:_0x57ca9b,_0x3343f1++%0x4)?_0x2f1abf+=String['fromCharCode'](0xff&_0x6bf1f1>>(-0x2*_0x3343f1&0x6)):0x0){_0x57ca9b=_0x398d86['indexOf'](_0x57ca9b);}for(let _0x1f0dc6=0x0,_0xa6e894=_0x2f1abf['length'];_0x1f0dc6<_0xa6e894;_0x1f0dc6++){_0x2ae0b7+='%'+('00'+_0x2f1abf['charCodeAt'](_0x1f0dc6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ae0b7);};a0_0x30ea['IAxOuL']=_0x2c84b3,a0_0x30ea['iOeVOf']={},a0_0x30ea['jjFzFH']=!![];}const _0x367ade=_0x49bf34[0x0],_0x57119a=_0x544a20+_0x367ade,_0xc94bd2=a0_0x30ea['iOeVOf'][_0x57119a];return!_0xc94bd2?(_0x30ea31=a0_0x30ea['IAxOuL'](_0x30ea31),a0_0x30ea['iOeVOf'][_0x57119a]=_0x30ea31):_0x30ea31=_0xc94bd2,_0x30ea31;}import a0_0x2f1abf from'typescript';import a0_0x2ae0b7 from'path';function a0_0x49bf(){const _0x1e8309=['z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','CgfYC2veAwfNBM9ZDgLJCW','su5gtW','rgLHz25VC3rPy0nHDgvNB3j5','BgLUzq','z2v0u3rHCNq','v2fYBMLUzW','nte0mZa4qursr2zL','rvjst1i','y29Kzq','u3vNz2vZDgLVBG','zMLSzu5HBwu','y2HHCMfJDgvY','odC4mJu2DKzrDNHM','y29TCgLSzxjpChrPB25Z','zM9YrwfJAenOAwXK','u3LUDgf4igvYCM9Y','u3LUDgf4s2LUza','zMLSzq','mM9ZyuvyAa','BgvUz3rO','ndu3ndzlDKPku0S','mJCWndy0mgX3txLKsq','mtbKC2LjsMi','zM9YBwf0rgLHz25VC3rPyW','yw5HBhL6zxiTzxjYB3i','u0vwrvjjvfK','BwvZC2fNzq','BwvZC2fNzvrLEhq','mtG0otqWmfD5AxHWwa','v0fstKLorW','u2nYAxb0vgfYz2v0','yw5HBhL6zq','u2vTyw50AwmGyw5HBhLZAxmGC2TPChbLza','ChvZAa','odGZmZm2ug15AhD6','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','rvnozxH0','ouHwr1zwAq','Bg9Nz2vY','mte0ndC5mg1fA2v4sq','C3rHCNq','Dg9mB3DLCKnHC2u','zgvIDwC','y3jLyxrLu291CMnLrMLSzq','vfLqrq','C3LUDgf4lwvYCM9Y','q0furuDpuLK','twvZC2fNzq','u1Lovefy','tgf0zxn0','C2v2zxjPDhK'];a0_0x49bf=function(){return _0x1e8309;};return a0_0x49bf();}import{STATIC_ANALYSIS}from'../utilities/constants.js';class JavaScriptAnalyzer{constructor(_0x3343f1=null){const _0x5c1c07=a0_0x30ea;this['logger']=_0x3343f1,this[_0x5c1c07(0x16b)]={'allowJs':!![],'checkJs':!![],'noEmit':!![],'jsx':a0_0x2f1abf['JsxEmit']['React'],'target':a0_0x2f1abf['ScriptTarget'][_0x5c1c07(0x18f)],'module':a0_0x2f1abf['ModuleKind'][_0x5c1c07(0x182)],'moduleResolution':a0_0x2f1abf['ModuleResolutionKind']['NodeJs'],'esModuleInterop':!![],'skipLibCheck':!![],'strict':![],'noImplicitAny':![]};}async[a0_0x3604d5(0x17d)](_0x6bf1f1,_0x57ca9b,_0x4674bc={}){const _0x380348=a0_0x3604d5;try{const _0x1f0dc6=[],_0xa6e894=a0_0x2f1abf['createSourceFile'](_0x6bf1f1,_0x57ca9b,a0_0x2f1abf['ScriptTarget'][_0x380348(0x18f)],!![]),_0x35f512=this[_0x380348(0x191)](_0xa6e894);_0x1f0dc6[_0x380348(0x17f)](..._0x35f512);const _0x21620c=await this['getSemanticDiagnostics'](_0x6bf1f1,_0x57ca9b);return _0x1f0dc6['push'](..._0x21620c),this['logger']?.[_0x380348(0x188)]('JavaScript\x20analysis\x20completed',{'file':_0x6bf1f1,'totalDiagnostics':_0x1f0dc6[_0x380348(0x171)],'errors':_0x1f0dc6['filter'](_0x3a7a96=>_0x3a7a96[_0x380348(0x190)]===STATIC_ANALYSIS['SEVERITY']['ERROR'])[_0x380348(0x171)],'warnings':_0x1f0dc6['filter'](_0x5c6b7b=>_0x5c6b7b[_0x380348(0x190)]===STATIC_ANALYSIS['SEVERITY'][_0x380348(0x17b)])['length']}),_0x1f0dc6;}catch(_0x1309b6){return this['logger']?.['error']('JavaScript\x20analysis\x20failed',{'file':_0x6bf1f1,'error':_0x1309b6[_0x380348(0x178)]}),[{'file':_0x6bf1f1,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':_0x380348(0x176),'message':'Analysis\x20failed:\x20'+_0x1309b6[_0x380348(0x178)],'category':STATIC_ANALYSIS[_0x380348(0x18c)][_0x380348(0x18e)]}];}}[a0_0x3604d5(0x191)](_0x22579c){const _0x46ad90=a0_0x3604d5,_0x44f026=[],_0x5abdfb=_0x22e680=>{const _0x38d870=a0_0x30ea;if(_0x22e680['kind']===a0_0x2f1abf[_0x38d870(0x16e)]['Unknown']){const _0x119e67=_0x22579c['getLineAndCharacterOfPosition'](_0x22e680[_0x38d870(0x162)]());_0x44f026[_0x38d870(0x17f)]({'file':_0x22579c['fileName'],'line':_0x119e67[_0x38d870(0x161)]+0x1,'column':_0x119e67['character']+0x1,'severity':STATIC_ANALYSIS[_0x38d870(0x177)]['ERROR'],'rule':_0x38d870(0x18b),'message':_0x38d870(0x16d),'category':STATIC_ANALYSIS['CATEGORY'][_0x38d870(0x18e)],'fixable':![]});}a0_0x2f1abf[_0x38d870(0x16c)](_0x22e680,_0x5abdfb);};_0x5abdfb(_0x22579c);if(_0x22579c['parseDiagnostics']&&_0x22579c[_0x46ad90(0x192)]['length']>0x0)for(const _0x4ecee9 of _0x22579c['parseDiagnostics']){_0x44f026[_0x46ad90(0x17f)](this[_0x46ad90(0x175)](_0x4ecee9,_0x22579c));}return _0x44f026;}async['getSemanticDiagnostics'](_0x407234,_0x1b9a7c){const _0x3b48ea=a0_0x3604d5,_0xdeab70=[];try{const _0x160089=a0_0x2f1abf[_0x3b48ea(0x189)](_0x407234,_0x1b9a7c,a0_0x2f1abf[_0x3b48ea(0x17c)][_0x3b48ea(0x18f)],!![]),_0x3dc26a={'getSourceFile':_0x8559ff=>{if(_0x8559ff===_0x407234)return _0x160089;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x2ae0b7['dirname'](_0x407234),'getDirectories':()=>[],'fileExists':_0x296baf=>_0x296baf===_0x407234,'readFile':_0x1a68f2=>{if(_0x1a68f2===_0x407234)return _0x1b9a7c;return undefined;},'getCanonicalFileName':_0x33ed7d=>_0x33ed7d,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x475f94=a0_0x2f1abf['createProgram']({'rootNames':[_0x407234],'options':this['compilerOptions'],'host':_0x3dc26a}),_0x485dce=_0x475f94['getSemanticDiagnostics'](_0x160089);for(const _0xf2b4a of _0x485dce){_0xdeab70['push'](this['formatDiagnostic'](_0xf2b4a,_0x160089));}}catch(_0x47376e){this[_0x3b48ea(0x184)]?.[_0x3b48ea(0x188)](_0x3b48ea(0x17e),{'file':_0x407234,'reason':_0x47376e[_0x3b48ea(0x178)]});}return _0xdeab70;}['formatDiagnostic'](_0x5e5c4e,_0x4a5414){const _0x3bd9ed=a0_0x3604d5;let _0x544490=0x0,_0x5b492b=0x0;if(_0x5e5c4e[_0x3bd9ed(0x16f)]&&_0x5e5c4e[_0x3bd9ed(0x186)]!==undefined){const _0x51a02b=_0x5e5c4e['file']['getLineAndCharacterOfPosition'](_0x5e5c4e['start']);_0x544490=_0x51a02b[_0x3bd9ed(0x161)]+0x1,_0x5b492b=_0x51a02b[_0x3bd9ed(0x169)]+0x1;}else{if(_0x4a5414&&_0x5e5c4e[_0x3bd9ed(0x186)]!==undefined){const _0x25fecf=_0x4a5414['getLineAndCharacterOfPosition'](_0x5e5c4e['start']);_0x544490=_0x25fecf['line']+0x1,_0x5b492b=_0x25fecf['character']+0x1;}}const _0x5772d4=a0_0x2f1abf[_0x3bd9ed(0x181)](_0x5e5c4e[_0x3bd9ed(0x179)],'\x0a');let _0x5f30f3;switch(_0x5e5c4e['category']){case a0_0x2f1abf['DiagnosticCategory']['Error']:_0x5f30f3=STATIC_ANALYSIS['SEVERITY'][_0x3bd9ed(0x165)];break;case a0_0x2f1abf[_0x3bd9ed(0x194)][_0x3bd9ed(0x163)]:_0x5f30f3=STATIC_ANALYSIS['SEVERITY'][_0x3bd9ed(0x17b)];break;case a0_0x2f1abf['DiagnosticCategory'][_0x3bd9ed(0x18d)]:case a0_0x2f1abf[_0x3bd9ed(0x194)][_0x3bd9ed(0x167)]:_0x5f30f3=STATIC_ANALYSIS['SEVERITY'][_0x3bd9ed(0x193)];break;default:_0x5f30f3=STATIC_ANALYSIS['SEVERITY'][_0x3bd9ed(0x165)];}let _0x1a46b3=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];const _0x1fe976=_0x5e5c4e[_0x3bd9ed(0x166)];if(_0x1fe976>=0x7d0&&_0x1fe976<0xbb8)_0x1a46b3=STATIC_ANALYSIS['CATEGORY'][_0x3bd9ed(0x18a)];else{if(_0x1fe976>=0x3e8&&_0x1fe976<0x7d0)_0x1a46b3=STATIC_ANALYSIS[_0x3bd9ed(0x18c)][_0x3bd9ed(0x18e)];else _0x1fe976>=0x8fc&&_0x1fe976<0x960&&(_0x1a46b3=STATIC_ANALYSIS[_0x3bd9ed(0x18c)]['IMPORT']);}return(_0x5772d4[_0x3bd9ed(0x187)]()['includes']('cannot\x20find\x20module')||_0x5772d4[_0x3bd9ed(0x187)]()['includes']('import'))&&(_0x1a46b3=STATIC_ANALYSIS['CATEGORY']['IMPORT']),{'file':_0x5e5c4e['file']?.[_0x3bd9ed(0x168)]||_0x4a5414?.['fileName']||'unknown','line':_0x544490,'column':_0x5b492b,'severity':_0x5f30f3,'rule':'TS'+_0x1fe976,'message':_0x5772d4,'category':_0x1a46b3,'fixable':![],'code':_0x5e5c4e['code']};}}export default JavaScriptAnalyzer;
@@ -1 +1 @@
1
- const a0_0x18d63b=a0_0x1be9;(function(_0x4800db,_0x2587e7){const _0x4e76c1=a0_0x1be9,_0x4f19fa=_0x4800db();while(!![]){try{const _0x3bedc8=parseInt(_0x4e76c1(0xa5))/0x1*(parseInt(_0x4e76c1(0xb8))/0x2)+-parseInt(_0x4e76c1(0xc3))/0x3+-parseInt(_0x4e76c1(0x9b))/0x4*(-parseInt(_0x4e76c1(0xad))/0x5)+-parseInt(_0x4e76c1(0xaf))/0x6*(-parseInt(_0x4e76c1(0xc1))/0x7)+-parseInt(_0x4e76c1(0xb0))/0x8*(-parseInt(_0x4e76c1(0xa1))/0x9)+parseInt(_0x4e76c1(0xa6))/0xa+-parseInt(_0x4e76c1(0xb2))/0xb;if(_0x3bedc8===_0x2587e7)break;else _0x4f19fa['push'](_0x4f19fa['shift']());}catch(_0x59309b){_0x4f19fa['push'](_0x4f19fa['shift']());}}}(a0_0x2d52,0xdc90e));function a0_0x1be9(_0x3f9fdf,_0x10c483){_0x3f9fdf=_0x3f9fdf-0x98;const _0x2d5242=a0_0x2d52();let _0x1be991=_0x2d5242[_0x3f9fdf];if(a0_0x1be9['YnvhGy']===undefined){var _0x318d1e=function(_0x2ef1d0){const _0x2acbaa='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x58f8b0='',_0x2b68e5='';for(let _0x38b8b7=0x0,_0x6e6a71,_0x11239e,_0x2d24c3=0x0;_0x11239e=_0x2ef1d0['charAt'](_0x2d24c3++);~_0x11239e&&(_0x6e6a71=_0x38b8b7%0x4?_0x6e6a71*0x40+_0x11239e:_0x11239e,_0x38b8b7++%0x4)?_0x58f8b0+=String['fromCharCode'](0xff&_0x6e6a71>>(-0x2*_0x38b8b7&0x6)):0x0){_0x11239e=_0x2acbaa['indexOf'](_0x11239e);}for(let _0x1eb749=0x0,_0x12b569=_0x58f8b0['length'];_0x1eb749<_0x12b569;_0x1eb749++){_0x2b68e5+='%'+('00'+_0x58f8b0['charCodeAt'](_0x1eb749)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b68e5);};a0_0x1be9['vdeuvT']=_0x318d1e,a0_0x1be9['FeUwTD']={},a0_0x1be9['YnvhGy']=!![];}const _0x226b70=_0x2d5242[0x0],_0x4e07ed=_0x3f9fdf+_0x226b70,_0x48337=a0_0x1be9['FeUwTD'][_0x4e07ed];return!_0x48337?(_0x1be991=a0_0x1be9['vdeuvT'](_0x1be991),a0_0x1be9['FeUwTD'][_0x4e07ed]=_0x1be991):_0x1be991=_0x48337,_0x1be991;}import a0_0x58f8b0 from'prettier';import a0_0x2b68e5 from'path';import a0_0x38b8b7 from'fs/promises';class PrettierFormatter{constructor(_0x6e6a71=null){this['logger']=_0x6e6a71,this['configCache']=new Map();}async[a0_0x18d63b(0xc4)](_0x11239e,_0x2d24c3,_0x1eb749={}){const _0x42f068=a0_0x18d63b;try{const _0x12b569=await this[_0x42f068(0xa9)](_0x11239e,_0x1eb749['workingDir']),_0x5b5361=this['getParser'](_0x11239e),_0x428e79=await a0_0x58f8b0[_0x42f068(0xc4)](_0x2d24c3,{..._0x12b569,'filepath':_0x11239e,'parser':_0x5b5361}),_0x4f88ef=_0x428e79!==_0x2d24c3;return{'formatted':_0x4f88ef,'content':_0x428e79,'original':_0x2d24c3,'changes':_0x4f88ef?this['describeChanges'](_0x2d24c3,_0x428e79):[],'linesChanged':_0x4f88ef?this[_0x42f068(0xaa)](_0x2d24c3,_0x428e79):0x0};}catch(_0xcd9872){this[_0x42f068(0xa2)]?.['error'](_0x42f068(0x98),{'file':_0x11239e,'error':_0xcd9872['message']});throw new Error(_0x42f068(0xa4)+_0xcd9872['message']);}}async[a0_0x18d63b(0x9f)](_0x482043,_0x4ea727,_0x262059={}){const _0x306040=a0_0x18d63b;try{const _0x357096=await this[_0x306040(0xa9)](_0x482043,_0x262059['workingDir']),_0x3b94a0=this['getParser'](_0x482043),_0x3bd8cd=await a0_0x58f8b0['format'](_0x4ea727,{..._0x357096,'filepath':_0x482043,'parser':_0x3b94a0});return _0x3bd8cd!==_0x4ea727;}catch(_0x3fa706){return this[_0x306040(0xa2)]?.['warn']('Prettier\x20check\x20failed',{'file':_0x482043,'error':_0x3fa706[_0x306040(0xac)]}),![];}}async['getPrettierConfig'](_0xc2a4fd,_0x2e2e28){const _0x1ba9a0=a0_0x18d63b,_0x5009ad=_0x2e2e28||a0_0x2b68e5[_0x1ba9a0(0xbe)](_0xc2a4fd);if(this['configCache'][_0x1ba9a0(0xb7)](_0x5009ad))return this['configCache'][_0x1ba9a0(0xba)](_0x5009ad);let _0x156552={};if(_0x2e2e28)try{const _0x4ea5e7=await a0_0x58f8b0['resolveConfig'](_0xc2a4fd,{'config':_0x2e2e28});_0x4ea5e7&&(this[_0x1ba9a0(0xa2)]?.[_0x1ba9a0(0xb1)](_0x1ba9a0(0xbf),{'workingDir':_0x2e2e28}),_0x156552=_0x4ea5e7);}catch(_0x39798c){this['logger']?.[_0x1ba9a0(0xb1)]('No Prettier config found, using defaults');}const defaultConfig={'semi':!![],'singleQuote':!![],'tabWidth':0x2,'trailingComma':'es5','printWidth':0x64,'arrowParens':'avoid','endOfLine':'lf',..._0x156552};return this['configCache'][_0x1ba9a0(0xa0)](_0x5009ad,defaultConfig),defaultConfig;}['getParser'](_0x528ebe){const _0x483d32=a0_0x18d63b,_0x24c310=a0_0x2b68e5[_0x483d32(0xc0)](_0x528ebe)['toLowerCase'](),_0x572862={'.js':'babel','.jsx':'babel','.mjs':'babel','.cjs':_0x483d32(0xae),'.ts':_0x483d32(0x9a),'.tsx':_0x483d32(0x9a),'.json':_0x483d32(0xab),'.json5':_0x483d32(0xbd),'.css':'css','.scss':_0x483d32(0x9d),'.less':_0x483d32(0xb3),'.html':'html','.vue':'vue','.md':_0x483d32(0x9e),'.yaml':'yaml','.yml':'yaml'};return _0x572862[_0x24c310]||'babel';}['describeChanges'](_0x23facc,_0xecd5f8){const _0x4a55ea=a0_0x18d63b,_0x55f165=[],_0x561a08=_0x23facc['split']('\x0a'),_0x1f162c=_0xecd5f8[_0x4a55ea(0xa3)]('\x0a'),_0x561975=Math[_0x4a55ea(0x9c)](_0x561a08[_0x4a55ea(0xa7)],_0x1f162c[_0x4a55ea(0xa7)]);for(let _0x4249c9=0x0;_0x4249c9<_0x561975;_0x4249c9++){const _0x3e81c7=_0x561a08[_0x4249c9],_0x487efb=_0x1f162c[_0x4249c9];_0x3e81c7!==_0x487efb&&_0x55f165[_0x4a55ea(0xb6)]({'line':_0x4249c9+0x1,'type':_0x3e81c7!==undefined&&_0x487efb!==undefined?_0x4a55ea(0xbb):_0x3e81c7!==undefined?'removed':'added','original':_0x3e81c7||'','formatted':_0x487efb||''});}return _0x55f165;}[a0_0x18d63b(0xaa)](_0x20846c,_0x441ac0){const _0x5c4e58=a0_0x18d63b,_0x42d78d=_0x20846c['split']('\x0a'),_0x55970c=_0x441ac0['split']('\x0a');let _0x43f5f1=0x0;const _0x5c3440=Math[_0x5c4e58(0x9c)](_0x42d78d[_0x5c4e58(0xa7)],_0x55970c['length']);for(let _0x314a3f=0x0;_0x314a3f<_0x5c3440;_0x314a3f++){_0x42d78d[_0x314a3f]!==_0x55970c[_0x314a3f]&&_0x43f5f1++;}return _0x43f5f1;}['getSupportedExtensions'](){const _0x229e91=a0_0x18d63b;return['.js','.jsx','.mjs','.cjs',_0x229e91(0xa8),'.tsx','.json',_0x229e91(0xbc),_0x229e91(0x99),_0x229e91(0xb9),'.less','.html','.vue',_0x229e91(0xb4),'.yaml','.yml'];}['isSupported'](_0x534db4){const _0x1b5f95=a0_0x18d63b,_0x1f6e30=a0_0x2b68e5[_0x1b5f95(0xc0)](_0x534db4)['toLowerCase']();return this[_0x1b5f95(0xb5)]()[_0x1b5f95(0xc2)](_0x1f6e30);}}export default PrettierFormatter;function a0_0x2d52(){const _0x22cbc4=['z2v0uhjLDhrPzxjdB25MAwC','y291BNrdAgfUz2vKtgLUzxm','ANnVBG','BwvZC2fNzq','nZqYmZK1shfRy0Th','yMfIzwW','mZmYmZq1ngnWCgLvuG','ndG3mtK0neP5CNbVBq','zgvIDwC','mtuZmtq5mtvRCfbtre0','BgvZCW','lM1K','z2v0u3vWCg9YDgvKrxH0zw5ZAw9UCW','ChvZAa','AgfZ','mte4rMnOs2rV','lNnJC3m','z2v0','Bw9KAwzPzwq','lMPZB241','ANnVBJu','zgLYBMfTzq','rM91BMqGuhjLDhrPzxiGy29UzMLN','zxH0BMfTzq','mtrWvM1xreq','Aw5JBhvKzxm','ndGXmtC4nhnRDM9Ryq','zM9YBwf0','uhjLDhrPzxiGzM9YBwf0DgLUzYbMywLSzwq','lMnZCW','DhLWzxnJCMLWDa','mtj4DK9cqwC','Bwf4','C2nZCW','BwfYA2rVD24','y2HLy2S','C2v0','ovrguvjuEG','Bg9Nz2vY','C3bSAxq','uhjLDhrPzxiGzM9YBwf0DgLUzYbMywLSzwq6ia','mJm0mdjIDhz0tMS','mZu2nJy1mefVAuvRwa','BgvUz3rO','lNrZ'];a0_0x2d52=function(){return _0x22cbc4;};return a0_0x2d52();}
1
+ function a0_0x21a6(_0x1fa6cb,_0xb861ef){_0x1fa6cb=_0x1fa6cb-0x1ee;const _0x2f8422=a0_0x2f84();let _0x21a651=_0x2f8422[_0x1fa6cb];if(a0_0x21a6['INRUbI']===undefined){var _0x165c84=function(_0x1fcd3a){const _0x4f908a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1389ee='',_0x5342d8='';for(let _0x1d63ce=0x0,_0x34c62c,_0x49da7c,_0x42cd69=0x0;_0x49da7c=_0x1fcd3a['charAt'](_0x42cd69++);~_0x49da7c&&(_0x34c62c=_0x1d63ce%0x4?_0x34c62c*0x40+_0x49da7c:_0x49da7c,_0x1d63ce++%0x4)?_0x1389ee+=String['fromCharCode'](0xff&_0x34c62c>>(-0x2*_0x1d63ce&0x6)):0x0){_0x49da7c=_0x4f908a['indexOf'](_0x49da7c);}for(let _0x3a68fb=0x0,_0x1385b4=_0x1389ee['length'];_0x3a68fb<_0x1385b4;_0x3a68fb++){_0x5342d8+='%'+('00'+_0x1389ee['charCodeAt'](_0x3a68fb)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5342d8);};a0_0x21a6['hCLtLv']=_0x165c84,a0_0x21a6['LXTMFH']={},a0_0x21a6['INRUbI']=!![];}const _0x5a4cfd=_0x2f8422[0x0],_0x121ae6=_0x1fa6cb+_0x5a4cfd,_0x4ec07a=a0_0x21a6['LXTMFH'][_0x121ae6];return!_0x4ec07a?(_0x21a651=a0_0x21a6['hCLtLv'](_0x21a651),a0_0x21a6['LXTMFH'][_0x121ae6]=_0x21a651):_0x21a651=_0x4ec07a,_0x21a651;}const a0_0x45a3b1=a0_0x21a6;(function(_0xc647d8,_0x387ea8){const _0x50c3aa=a0_0x21a6,_0x42a930=_0xc647d8();while(!![]){try{const _0x99839c=parseInt(_0x50c3aa(0x212))/0x1+parseInt(_0x50c3aa(0x20e))/0x2+parseInt(_0x50c3aa(0x202))/0x3*(-parseInt(_0x50c3aa(0x204))/0x4)+-parseInt(_0x50c3aa(0x1f6))/0x5+-parseInt(_0x50c3aa(0x1fe))/0x6+parseInt(_0x50c3aa(0x1f5))/0x7+parseInt(_0x50c3aa(0x215))/0x8;if(_0x99839c===_0x387ea8)break;else _0x42a930['push'](_0x42a930['shift']());}catch(_0x3731b8){_0x42a930['push'](_0x42a930['shift']());}}}(a0_0x2f84,0x52381));import a0_0x1389ee from'prettier';import a0_0x5342d8 from'path';import a0_0x1d63ce from'fs/promises';class PrettierFormatter{constructor(_0x34c62c=null){this['logger']=_0x34c62c,this['configCache']=new Map();}async['format'](_0x49da7c,_0x42cd69,_0x3a68fb={}){const _0x1aff45=a0_0x21a6;try{const _0x1385b4=await this['getPrettierConfig'](_0x49da7c,_0x3a68fb[_0x1aff45(0x20b)]),_0x1fdf83=this['getParser'](_0x49da7c),_0x320940=await a0_0x1389ee['format'](_0x42cd69,{..._0x1385b4,'filepath':_0x49da7c,'parser':_0x1fdf83}),_0x5f176f=_0x320940!==_0x42cd69;return{'formatted':_0x5f176f,'content':_0x320940,'original':_0x42cd69,'changes':_0x5f176f?this['describeChanges'](_0x42cd69,_0x320940):[],'linesChanged':_0x5f176f?this[_0x1aff45(0x1f8)](_0x42cd69,_0x320940):0x0};}catch(_0x2ebef9){this[_0x1aff45(0x203)]?.['error']('Prettier\x20formatting\x20failed',{'file':_0x49da7c,'error':_0x2ebef9['message']});throw new Error(_0x1aff45(0x205)+_0x2ebef9['message']);}}async[a0_0x45a3b1(0x210)](_0x51e5a3,_0x2f59d1,_0x448768={}){const _0x180ae3=a0_0x45a3b1;try{const _0x5445b0=await this['getPrettierConfig'](_0x51e5a3,_0x448768[_0x180ae3(0x20b)]),_0x127bde=this[_0x180ae3(0x213)](_0x51e5a3),_0x3ff1a7=await a0_0x1389ee[_0x180ae3(0x20c)](_0x2f59d1,{..._0x5445b0,'filepath':_0x51e5a3,'parser':_0x127bde});return _0x3ff1a7!==_0x2f59d1;}catch(_0x3f85d5){return this['logger']?.['warn']('Prettier\x20check\x20failed',{'file':_0x51e5a3,'error':_0x3f85d5['message']}),![];}}async[a0_0x45a3b1(0x1f4)](_0x4bd723,_0x387bd1){const _0x50d7eb=a0_0x45a3b1,_0x4ff866=_0x387bd1||a0_0x5342d8['dirname'](_0x4bd723);if(this[_0x50d7eb(0x20f)][_0x50d7eb(0x206)](_0x4ff866))return this[_0x50d7eb(0x20f)][_0x50d7eb(0x1fc)](_0x4ff866);let _0x32ffe9={};if(_0x387bd1)try{const _0x9723c9=await a0_0x1389ee[_0x50d7eb(0x207)](_0x4bd723,{'config':_0x387bd1});_0x9723c9&&(this[_0x50d7eb(0x203)]?.['debug'](_0x50d7eb(0x211),{'workingDir':_0x387bd1}),_0x32ffe9=_0x9723c9);}catch(_0x43de39){this['logger']?.['debug']('No Prettier config found, using defaults');}const defaultConfig={'semi':!![],'singleQuote':!![],'tabWidth':0x2,'trailingComma':'es5','printWidth':0x64,'arrowParens':'avoid','endOfLine':'lf',..._0x32ffe9};return this['configCache'][_0x50d7eb(0x1fd)](_0x4ff866,defaultConfig),defaultConfig;}['getParser'](_0x53f058){const _0x14a725=a0_0x45a3b1,_0x19a953=a0_0x5342d8[_0x14a725(0x1f3)](_0x53f058)[_0x14a725(0x1f7)](),_0x44d76a={'.js':_0x14a725(0x214),'.jsx':'babel','.mjs':_0x14a725(0x214),'.cjs':_0x14a725(0x214),'.ts':'typescript','.tsx':'typescript','.json':_0x14a725(0x201),'.json5':_0x14a725(0x208),'.css':'css','.scss':_0x14a725(0x200),'.less':_0x14a725(0x1f9),'.html':'html','.vue':'vue','.md':_0x14a725(0x20d),'.yaml':_0x14a725(0x209),'.yml':'yaml'};return _0x44d76a[_0x19a953]||'babel';}['describeChanges'](_0x5b34de,_0x1fc808){const _0x437f75=a0_0x45a3b1,_0x5a77f4=[],_0x58bc53=_0x5b34de['split']('\x0a'),_0x354a3c=_0x1fc808['split']('\x0a'),_0x5359f4=Math['max'](_0x58bc53[_0x437f75(0x1f0)],_0x354a3c[_0x437f75(0x1f0)]);for(let _0x3d3c3e=0x0;_0x3d3c3e<_0x5359f4;_0x3d3c3e++){const _0x10720a=_0x58bc53[_0x3d3c3e],_0x162179=_0x354a3c[_0x3d3c3e];_0x10720a!==_0x162179&&_0x5a77f4['push']({'line':_0x3d3c3e+0x1,'type':_0x10720a!==undefined&&_0x162179!==undefined?_0x437f75(0x20a):_0x10720a!==undefined?'removed':_0x437f75(0x1f1),'original':_0x10720a||'','formatted':_0x162179||''});}return _0x5a77f4;}['countChangedLines'](_0x47fd46,_0x1e4f6d){const _0x24c02e=a0_0x45a3b1,_0x30490b=_0x47fd46['split']('\x0a'),_0x15c7ac=_0x1e4f6d[_0x24c02e(0x1fb)]('\x0a');let _0x345fd6=0x0;const _0x4e2f7a=Math[_0x24c02e(0x1f2)](_0x30490b[_0x24c02e(0x1f0)],_0x15c7ac['length']);for(let _0x5a8466=0x0;_0x5a8466<_0x4e2f7a;_0x5a8466++){_0x30490b[_0x5a8466]!==_0x15c7ac[_0x5a8466]&&_0x345fd6++;}return _0x345fd6;}['getSupportedExtensions'](){const _0x232060=a0_0x45a3b1;return['.js','.jsx','.mjs','.cjs',_0x232060(0x1ff),'.tsx','.json','.json5','.css','.scss',_0x232060(0x1fa),'.html',_0x232060(0x1ef),'.md',_0x232060(0x1ee),'.yml'];}['isSupported'](_0x38076b){const _0x1c6041=a0_0x5342d8['extname'](_0x38076b)['toLowerCase']();return this['getSupportedExtensions']()['includes'](_0x1c6041);}}export default PrettierFormatter;function a0_0x2f84(){const _0xc9d9f3=['lNLHBwW','lNz1zq','BgvUz3rO','ywrKzwq','Bwf4','zxH0BMfTzq','z2v0uhjLDhrPzxjdB25MAwC','mZy4oteWnxzZDhvJta','mtC0nZKWnvLkvfnHAG','Dg9mB3DLCKnHC2u','y291BNrdAgfUz2vKtgLUzxm','BgvZCW','lMXLC3m','C3bSAxq','z2v0','C2v0','mZm0otuWnKnAA3fZtW','lNrZ','C2nZCW','ANnVBG','nJuXs25ksxLp','Bg9Nz2vY','ntmZmKHnr0XXsq','uhjLDhrPzxiGzM9YBwf0DgLUzYbMywLSzwq6ia','AgfZ','CMvZB2X2zunVBMzPzW','ANnVBJu','EwfTBa','Bw9KAwzPzwq','D29YA2LUz0rPCG','zM9YBwf0','BwfYA2rVD24','nti1odq0r1vKtxrN','y29UzMLNq2fJAgu','y2HLy2S','rM91BMqGuhjLDhrPzxiGy29UzMLN','mZC3nZG3vKLSre55','z2v0ugfYC2vY','yMfIzwW','mJKYoteWnfHIr2DwwG'];a0_0x2f84=function(){return _0xc9d9f3;};return a0_0x2f84();}
@@ -1 +1 @@
1
- function a0_0x5e97(){const _0x558315=['zxjYB3jZ','C3LUDgf4x2nOzwnRxW','rvjst1i','C3vWCg9YDhnbDxrVrML4','D3jPDgvgAwXL','ndLxEhj3q1i','y29SDw1U','mZy2mJm0qwnxDKL5','ChL0Ag9UmW','C3rKB3v0','q29TBwfUzcb0Aw1LB3v0','zMLSDgvY','CNvUq29TBwfUza','zgf0yq','Dg1WzgLY','AM9PBG','z2v0uhL0Ag9Uq29TBwfUza','ChL0Ag9U','oti2mdKXmKPpv1josq','nZqYndG4B0vNyu96','Dw5SAw5R','ndqXndK1ovfICevOqW','ouzMuef4va','u1Lovefy','odi3odG1tM1YwePj','ChvZAa','BwvZC2fNzq','rMfPBgvKihrVihbHCNnLifb5DgHVBIbZEw50yxGGy2HLy2SGCMvZDwX0','C3vJy2vZCW','uhL0Ag9Uig5VDcbHDMfPBgfIBguSihnRAxbWAw5NigfUywX5C2LZ','D2fYBG','rM91BMqGuhL0Ag9UignVBw1HBMq','ChL0Ag9Uq29TBwfUza','q0furuDpuLK','ChL0Ag9UlwfZDa','lNb5','C2v2zxjPDhK','CNvUuhL0Ag9Uu2nYAxb0','mtK1ndq5otbOy2rrA0e','mtmWmtmWofbHue1HAq','uhL0Ag9UigfUywX5C2LZignVBxbSzxrLza','u0vwrvjjvfK','mtj0DhfzDMu','Bg9Nz2vY'];a0_0x5e97=function(){return _0x558315;};return a0_0x5e97();}const a0_0x4e0a14=a0_0x547c;(function(_0x2bf9ed,_0x46ac2b){const _0x419991=a0_0x547c,_0x4dd51a=_0x2bf9ed();while(!![]){try{const _0xce5ae5=parseInt(_0x419991(0x96))/0x1+parseInt(_0x419991(0xaa))/0x2+-parseInt(_0x419991(0x98))/0x3+-parseInt(_0x419991(0xad))/0x4*(-parseInt(_0x419991(0x9b))/0x5)+-parseInt(_0x419991(0xb6))/0x6*(parseInt(_0x419991(0xb4))/0x7)+-parseInt(_0x419991(0x95))/0x8+-parseInt(_0x419991(0x99))/0x9*(-parseInt(_0x419991(0xa9))/0xa);if(_0xce5ae5===_0x46ac2b)break;else _0x4dd51a['push'](_0x4dd51a['shift']());}catch(_0x2df36d){_0x4dd51a['push'](_0x4dd51a['shift']());}}}(a0_0x5e97,0xc0578));import{spawn}from'child_process';import{STATIC_ANALYSIS}from'../utilities/constants.js';import a0_0x506520 from'fs/promises';import a0_0x11f719 from'path';import a0_0x50e2f1 from'os';function a0_0x547c(_0x11fa10,_0xf944b2){_0x11fa10=_0x11fa10-0x92;const _0x5e9720=a0_0x5e97();let _0x547c17=_0x5e9720[_0x11fa10];if(a0_0x547c['xFmLxV']===undefined){var _0x5e8350=function(_0x28436a){const _0x5b71bd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x506520='',_0x11f719='';for(let _0x50e2f1=0x0,_0x5734cc,_0x383b48,_0x1465e3=0x0;_0x383b48=_0x28436a['charAt'](_0x1465e3++);~_0x383b48&&(_0x5734cc=_0x50e2f1%0x4?_0x5734cc*0x40+_0x383b48:_0x383b48,_0x50e2f1++%0x4)?_0x506520+=String['fromCharCode'](0xff&_0x5734cc>>(-0x2*_0x50e2f1&0x6)):0x0){_0x383b48=_0x5b71bd['indexOf'](_0x383b48);}for(let _0x5e8fe1=0x0,_0x5318dd=_0x506520['length'];_0x5e8fe1<_0x5318dd;_0x5e8fe1++){_0x11f719+='%'+('00'+_0x506520['charCodeAt'](_0x5e8fe1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x11f719);};a0_0x547c['FmWrEe']=_0x5e8350,a0_0x547c['ZGVZWV']={},a0_0x547c['xFmLxV']=!![];}const _0x366da4=_0x5e9720[0x0],_0xbdc97e=_0x11fa10+_0x366da4,_0x5b4731=a0_0x547c['ZGVZWV'][_0xbdc97e];return!_0x5b4731?(_0x547c17=a0_0x547c['FmWrEe'](_0x547c17),a0_0x547c['ZGVZWV'][_0xbdc97e]=_0x547c17):_0x547c17=_0x5b4731,_0x547c17;}class PythonAnalyzer{constructor(_0x5734cc=null){const _0x2ece92=a0_0x547c;this[_0x2ece92(0xae)]=_0x5734cc,this['pythonCommand']=null;}async['analyze'](_0x383b48,_0x1465e3,_0x5e8fe1={}){const _0x54dd75=a0_0x547c;try{const _0x5318dd=[],_0x57aabd=await this[_0x54dd75(0x93)]();if(!_0x57aabd)return this['logger']?.[_0x54dd75(0xa1)](_0x54dd75(0xa0)),[];const _0x5d9f90=await this['checkSyntax'](_0x383b48,_0x1465e3,_0x57aabd);return _0x5318dd[_0x54dd75(0x9c)](..._0x5d9f90),this['logger']?.['debug'](_0x54dd75(0xab),{'file':_0x383b48,'totalDiagnostics':_0x5318dd['length'],'errors':_0x5318dd[_0x54dd75(0xba)](_0x5f52d5=>_0x5f52d5[_0x54dd75(0xa7)]===STATIC_ANALYSIS[_0x54dd75(0xac)][_0x54dd75(0xb1)])['length'],'warnings':_0x5318dd['filter'](_0x3e7abc=>_0x3e7abc['severity']===STATIC_ANALYSIS[_0x54dd75(0xac)]['WARNING'])['length']}),_0x5318dd;}catch(_0x11e188){return this[_0x54dd75(0xae)]?.['error']('Python\x20analysis\x20failed',{'file':_0x383b48,'error':_0x11e188['message']}),[];}}async['checkSyntax'](_0x1dd2d5,_0x4a1299,_0x78a1b){const _0x195559=a0_0x547c,_0x46e150=[],_0x29415e=a0_0x50e2f1[_0x195559(0xbd)](),_0x2822b0=a0_0x11f719[_0x195559(0x92)](_0x29415e,_0x195559(0xb0)+Date['now']()+_0x195559(0xa6)),_0x3ce61d=a0_0x11f719[_0x195559(0x92)](_0x29415e,'target_'+Date['now']()+_0x195559(0xa6));try{await a0_0x506520['writeFile'](_0x3ce61d,_0x4a1299,'utf-8');const _0xeb631a='\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_0x506520[_0x195559(0xb3)](_0x2822b0,_0xeb631a,'utf-8');const _0xfc4bf2=await this['runPythonScript'](_0x78a1b,_0x2822b0,[_0x3ce61d]);try{const _0x3f2723=JSON['parse'](_0xfc4bf2[_0x195559(0xb8)]);if(!_0x3f2723['success']&&_0x3f2723[_0x195559(0xaf)])for(const _0x234455 of _0x3f2723['errors']){_0x46e150[_0x195559(0x9c)]({'file':_0x1dd2d5,'line':_0x234455['line']||0x1,'column':_0x234455[_0x195559(0xb5)]||0x1,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':'SyntaxError','message':_0x234455[_0x195559(0x9d)],'category':STATIC_ANALYSIS[_0x195559(0xa4)][_0x195559(0x9a)],'fixable':![],'source':_0x195559(0xa5),'code':_0x234455['text']||undefined});}}catch(_0x7aedce){this[_0x195559(0xae)]?.['warn'](_0x195559(0x9e),{'error':_0x7aedce['message'],'stdout':_0xfc4bf2['stdout']});}}finally{try{await a0_0x506520[_0x195559(0x97)](_0x2822b0),await a0_0x506520['unlink'](_0x3ce61d);}catch{}}return _0x46e150;}async['getPythonCommand'](){const _0x63596b=a0_0x547c;if(this[_0x63596b(0xa3)])return this['pythonCommand'];const _0x4213ad=[_0x63596b(0xb7),_0x63596b(0x94)];for(const _0x154332 of _0x4213ad){try{const _0x38f832=await this[_0x63596b(0xbb)](_0x154332,['--version']);if(_0x38f832[_0x63596b(0x9f)])return this[_0x63596b(0xa3)]=_0x154332,this['logger']?.['debug'](_0x63596b(0xa2),{'command':_0x154332,'version':_0x38f832[_0x63596b(0xb8)]['trim']()}),_0x154332;}catch{}}return null;}async[a0_0x4e0a14(0xa8)](_0x217829,_0x27eabb,_0x2109c9=[]){return this['runCommand'](_0x217829,[_0x27eabb,..._0x2109c9]);}async[a0_0x4e0a14(0xbb)](_0x1fbba2,_0x5afd15=[],_0x367a5d={}){return new Promise((_0x4bdb7d,_0x3a8f33)=>{const _0x13127b=a0_0x547c,_0x5661a6=spawn(_0x1fbba2,_0x5afd15,{..._0x367a5d,'shell':!![]});let _0x12c9a7='',_0x1925ea='';_0x5661a6['stdout']?.['on'](_0x13127b(0xbc),_0x36ea0b=>{_0x12c9a7+=_0x36ea0b['toString']();}),_0x5661a6['stderr']?.['on'](_0x13127b(0xbc),_0x280806=>{_0x1925ea+=_0x280806['toString']();}),_0x5661a6['on']('error',_0x7e666c=>{_0x3a8f33(_0x7e666c);}),_0x5661a6['on']('close',_0x3fde54=>{_0x4bdb7d({'success':_0x3fde54===0x0,'code':_0x3fde54,'stdout':_0x12c9a7,'stderr':_0x1925ea});}),setTimeout(()=>{const _0x4204c2=_0x13127b;_0x5661a6['kill'](),_0x3a8f33(new Error(_0x4204c2(0xb9)));},0x2710);});}['getSupportedExtensions'](){return['.py'];}[a0_0x4e0a14(0xb2)](){return![];}}export default PythonAnalyzer;
1
+ const a0_0x1d112c=a0_0x2c92;(function(_0x1929e6,_0x57f635){const _0x372fa6=a0_0x2c92,_0x48dfe6=_0x1929e6();while(!![]){try{const _0x1a65b2=-parseInt(_0x372fa6(0xdd))/0x1+parseInt(_0x372fa6(0xde))/0x2+-parseInt(_0x372fa6(0xbf))/0x3*(parseInt(_0x372fa6(0xc7))/0x4)+parseInt(_0x372fa6(0xc2))/0x5*(parseInt(_0x372fa6(0xda))/0x6)+parseInt(_0x372fa6(0xd4))/0x7*(parseInt(_0x372fa6(0xc8))/0x8)+parseInt(_0x372fa6(0xb9))/0x9*(-parseInt(_0x372fa6(0xcd))/0xa)+parseInt(_0x372fa6(0xce))/0xb;if(_0x1a65b2===_0x57f635)break;else _0x48dfe6['push'](_0x48dfe6['shift']());}catch(_0x470781){_0x48dfe6['push'](_0x48dfe6['shift']());}}}(a0_0x1f59,0x6593d));function a0_0x2c92(_0x106144,_0xfb56d5){_0x106144=_0x106144-0xb6;const _0x1f59f4=a0_0x1f59();let _0x2c92bb=_0x1f59f4[_0x106144];if(a0_0x2c92['ZoGlIy']===undefined){var _0x7e8bc2=function(_0x330feb){const _0x29f701='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f18b2='',_0x2e5a6a='';for(let _0x5a9ff0=0x0,_0x39181a,_0x1dc747,_0x24f24d=0x0;_0x1dc747=_0x330feb['charAt'](_0x24f24d++);~_0x1dc747&&(_0x39181a=_0x5a9ff0%0x4?_0x39181a*0x40+_0x1dc747:_0x1dc747,_0x5a9ff0++%0x4)?_0x2f18b2+=String['fromCharCode'](0xff&_0x39181a>>(-0x2*_0x5a9ff0&0x6)):0x0){_0x1dc747=_0x29f701['indexOf'](_0x1dc747);}for(let _0x551fe4=0x0,_0x2ed84e=_0x2f18b2['length'];_0x551fe4<_0x2ed84e;_0x551fe4++){_0x2e5a6a+='%'+('00'+_0x2f18b2['charCodeAt'](_0x551fe4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e5a6a);};a0_0x2c92['MsgaXN']=_0x7e8bc2,a0_0x2c92['CsIanp']={},a0_0x2c92['ZoGlIy']=!![];}const _0x1393a0=_0x1f59f4[0x0],_0x615142=_0x106144+_0x1393a0,_0x51c37f=a0_0x2c92['CsIanp'][_0x615142];return!_0x51c37f?(_0x2c92bb=a0_0x2c92['MsgaXN'](_0x2c92bb),a0_0x2c92['CsIanp'][_0x615142]=_0x2c92bb):_0x2c92bb=_0x51c37f,_0x2c92bb;}import{spawn}from'child_process';import{STATIC_ANALYSIS}from'../utilities/constants.js';import a0_0x2f18b2 from'fs/promises';import a0_0x2e5a6a from'path';function a0_0x1f59(){const _0x4cb416=['ChL0Ag9UlwfZDa','CNvUuhL0Ag9Uu2nYAxb0','mJq2vuHWrgLx','v0fstKLorW','AM9PBG','nurWB3P6qW','DgfYz2v0xW','DxrMltG','Bg9Nz2vY','y2HLy2TtEw50yxG','mtC0mZjvr0fhreK','mteZnde2rLP3ug5j','BwvZC2fNzq','z2v0uhL0Ag9Uq29TBwfUza','rMfPBgvKihrVihbHCNnLifb5DgHVBIbZEw50yxGGy2HLy2SGCMvZDwX0','zMLSDgvY','mJGWDvzXrfnn','mtm5oty3m3brqKX2uW','CNvUq29TBwfUza','zgf0yq','C2v2zxjPDhK','C3rKB3v0','D2fYBG','mte5r1jWDeXA','Dg1WzgLY','y2XVC2u','rvjst1i','zxjYB3jZ','uhL0Ag9UigfUywX5C2LZigzHAwXLza','mJyZntG2nLLJzfbuDa','zgvIDwC','yw5HBhL6zq','mJK2nZCWz3LSu0nm','mteWmduZnKfSuMvvBG','q29TBwfUzcb0Aw1LB3v0','C3vJy2vZCW','rM91BMqGuhL0Ag9UignVBw1HBMq','ChL0Ag9Uq29TBwfUza','BgvUz3rO','Dgv4Da','oti0ntDIyLrUvgS','BgLUzq','ls12zxjZAw9U','CgfYC2u'];a0_0x1f59=function(){return _0x4cb416;};return a0_0x1f59();}import a0_0x5a9ff0 from'os';class PythonAnalyzer{constructor(_0x39181a=null){const _0x1d92a0=a0_0x2c92;this[_0x1d92a0(0xc5)]=_0x39181a,this['pythonCommand']=null;}async[a0_0x1d112c(0xdc)](_0x1dc747,_0x24f24d,_0x551fe4={}){const _0x2a3f0e=a0_0x1d112c;try{const _0x2ed84e=[],_0x4c66e7=await this[_0x2a3f0e(0xca)]();if(!_0x4c66e7)return this[_0x2a3f0e(0xc5)]?.[_0x2a3f0e(0xd3)]('Python\x20not\x20available,\x20skipping\x20analysis'),[];const _0x8d5fd4=await this[_0x2a3f0e(0xc6)](_0x1dc747,_0x24f24d,_0x4c66e7);return _0x2ed84e['push'](..._0x8d5fd4),this[_0x2a3f0e(0xc5)]?.[_0x2a3f0e(0xdb)]('Python\x20analysis\x20completed',{'file':_0x1dc747,'totalDiagnostics':_0x2ed84e['length'],'errors':_0x2ed84e[_0x2a3f0e(0xcc)](_0x5b73dc=>_0x5b73dc[_0x2a3f0e(0xd1)]===STATIC_ANALYSIS['SEVERITY'][_0x2a3f0e(0xd7)])[_0x2a3f0e(0xb7)],'warnings':_0x2ed84e[_0x2a3f0e(0xcc)](_0x133c63=>_0x133c63[_0x2a3f0e(0xd1)]===STATIC_ANALYSIS['SEVERITY'][_0x2a3f0e(0xc0)])[_0x2a3f0e(0xb7)]}),_0x2ed84e;}catch(_0x4e8e46){return this['logger']?.['error'](_0x2a3f0e(0xd9),{'file':_0x1dc747,'error':_0x4e8e46[_0x2a3f0e(0xc9)]}),[];}}async['checkSyntax'](_0xf5974c,_0x5ba799,_0x5e8505){const _0x32b8ca=a0_0x1d112c,_0x14beca=[],_0x1405fa=a0_0x5a9ff0[_0x32b8ca(0xd5)](),_0x5d8c42=a0_0x2e5a6a[_0x32b8ca(0xc1)](_0x1405fa,'syntax_check_'+Date['now']()+'.py'),_0x1adf34=a0_0x2e5a6a[_0x32b8ca(0xc1)](_0x1405fa,_0x32b8ca(0xc3)+Date['now']()+'.py');try{await a0_0x2f18b2['writeFile'](_0x1adf34,_0x5ba799,_0x32b8ca(0xc4));const _0x4dfd9a='\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_0x2f18b2['writeFile'](_0x5d8c42,_0x4dfd9a,_0x32b8ca(0xc4));const _0x379538=await this[_0x32b8ca(0xbe)](_0x5e8505,_0x5d8c42,[_0x1adf34]);try{const _0x1df7b9=JSON[_0x32b8ca(0xbc)](_0x379538['stdout']);if(!_0x1df7b9[_0x32b8ca(0xe0)]&&_0x1df7b9[_0x32b8ca(0xd8)])for(const _0xc97530 of _0x1df7b9['errors']){_0x14beca['push']({'file':_0xf5974c,'line':_0xc97530[_0x32b8ca(0xba)]||0x1,'column':_0xc97530['column']||0x1,'severity':STATIC_ANALYSIS['SEVERITY'][_0x32b8ca(0xd7)],'rule':'SyntaxError','message':_0xc97530[_0x32b8ca(0xc9)],'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX'],'fixable':![],'source':_0x32b8ca(0xbd),'code':_0xc97530[_0x32b8ca(0xb8)]||undefined});}}catch(_0x2471c9){this['logger']?.[_0x32b8ca(0xd3)](_0x32b8ca(0xcb),{'error':_0x2471c9[_0x32b8ca(0xc9)],'stdout':_0x379538[_0x32b8ca(0xd2)]});}}finally{try{await a0_0x2f18b2['unlink'](_0x5d8c42),await a0_0x2f18b2['unlink'](_0x1adf34);}catch{}}return _0x14beca;}async['getPythonCommand'](){const _0x58fbb9=a0_0x1d112c;if(this['pythonCommand'])return this['pythonCommand'];const _0x2695a2=['python3','python'];for(const _0xb9f1de of _0x2695a2){try{const _0x4c68c2=await this[_0x58fbb9(0xcf)](_0xb9f1de,[_0x58fbb9(0xbb)]);if(_0x4c68c2[_0x58fbb9(0xe0)])return this[_0x58fbb9(0xb6)]=_0xb9f1de,this['logger']?.[_0x58fbb9(0xdb)](_0x58fbb9(0xe1),{'command':_0xb9f1de,'version':_0x4c68c2[_0x58fbb9(0xd2)]['trim']()}),_0xb9f1de;}catch{}}return null;}async[a0_0x1d112c(0xbe)](_0x42ac55,_0x499525,_0x27b5d1=[]){const _0x5004c5=a0_0x1d112c;return this[_0x5004c5(0xcf)](_0x42ac55,[_0x499525,..._0x27b5d1]);}async[a0_0x1d112c(0xcf)](_0x2fcb73,_0xa88f3d=[],_0x4de21a={}){return new Promise((_0x521db5,_0x22590f)=>{const _0x34c845=a0_0x2c92,_0x271104=spawn(_0x2fcb73,_0xa88f3d,{..._0x4de21a,'shell':!![]});let _0x513988='',_0x4d9328='';_0x271104[_0x34c845(0xd2)]?.['on']('data',_0xeba9a3=>{_0x513988+=_0xeba9a3['toString']();}),_0x271104['stderr']?.['on'](_0x34c845(0xd0),_0x2196c8=>{_0x4d9328+=_0x2196c8['toString']();}),_0x271104['on']('error',_0x719534=>{_0x22590f(_0x719534);}),_0x271104['on'](_0x34c845(0xd6),_0x1c443a=>{_0x521db5({'success':_0x1c443a===0x0,'code':_0x1c443a,'stdout':_0x513988,'stderr':_0x4d9328});}),setTimeout(()=>{const _0x29bd72=_0x34c845;_0x271104['kill'](),_0x22590f(new Error(_0x29bd72(0xdf)));},0x2710);});}['getSupportedExtensions'](){return['.py'];}['supportsAutoFix'](){return![];}}export default PythonAnalyzer;
@@ -1 +1 @@
1
- const a0_0x3d5d56=a0_0x1496;function a0_0x1496(_0x4115d3,_0x8e421c){_0x4115d3=_0x4115d3-0x7e;const _0x60e289=a0_0x60e2();let _0x149605=_0x60e289[_0x4115d3];if(a0_0x1496['bQrMbd']===undefined){var _0x1bc6dd=function(_0x31305b){const _0xe9a0c6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x151447='',_0x34eaeb='';for(let _0x17600a=0x0,_0x43d1e9,_0x9d980f,_0xc2428d=0x0;_0x9d980f=_0x31305b['charAt'](_0xc2428d++);~_0x9d980f&&(_0x43d1e9=_0x17600a%0x4?_0x43d1e9*0x40+_0x9d980f:_0x9d980f,_0x17600a++%0x4)?_0x151447+=String['fromCharCode'](0xff&_0x43d1e9>>(-0x2*_0x17600a&0x6)):0x0){_0x9d980f=_0xe9a0c6['indexOf'](_0x9d980f);}for(let _0x283a1b=0x0,_0x51526e=_0x151447['length'];_0x283a1b<_0x51526e;_0x283a1b++){_0x34eaeb+='%'+('00'+_0x151447['charCodeAt'](_0x283a1b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34eaeb);};a0_0x1496['dxnIvX']=_0x1bc6dd,a0_0x1496['KBmmvv']={},a0_0x1496['bQrMbd']=!![];}const _0x1cb079=_0x60e289[0x0],_0x3765bf=_0x4115d3+_0x1cb079,_0x4e2f27=a0_0x1496['KBmmvv'][_0x3765bf];return!_0x4e2f27?(_0x149605=a0_0x1496['dxnIvX'](_0x149605),a0_0x1496['KBmmvv'][_0x3765bf]=_0x149605):_0x149605=_0x4e2f27,_0x149605;}(function(_0x1e843,_0x5c6bcd){const _0xcad424=a0_0x1496,_0x90ba3f=_0x1e843();while(!![]){try{const _0x3407b9=-parseInt(_0xcad424(0xe3))/0x1*(parseInt(_0xcad424(0xf2))/0x2)+-parseInt(_0xcad424(0xcd))/0x3+parseInt(_0xcad424(0xa3))/0x4*(-parseInt(_0xcad424(0x81))/0x5)+parseInt(_0xcad424(0x9b))/0x6*(-parseInt(_0xcad424(0x95))/0x7)+parseInt(_0xcad424(0xda))/0x8+-parseInt(_0xcad424(0xf7))/0x9+parseInt(_0xcad424(0xb4))/0xa;if(_0x3407b9===_0x5c6bcd)break;else _0x90ba3f['push'](_0x90ba3f['shift']());}catch(_0x50a265){_0x90ba3f['push'](_0x90ba3f['shift']());}}}(a0_0x60e2,0xe54ca));import{exec}from'child_process';import{promisify}from'util';import a0_0x151447 from'path';function a0_0x60e2(){const _0x46a418=['Dg9vChbLCKnHC2u','C2TPCfrLC3rgAwXLCW','mu9nqLzmAq','y3DL','u2vTz3jLCcbUB3qGyxzHAwXHyMXL','Bg9Nz2vY','tM8GC2vJDxjPDhKGC2nHBM5LCNmGyxzHAwXHyMXLigzVCIbSyw5NDwfNzq','CMvXDwLYzw1LBNrZlNr4Da','DxjS','CgLWigLUC3rHBgWGCgLWlwf1zgL0','qxzHAwXHyMXL','zgvWzw5Kzw5JAwvZ','AxnbCNjHEq','DMLH','AxnZDwvFy29UzMLKzw5Jzq','DhLWzxnJCMLWDa','qMfUzgL0ihnJyw5UzxiGzgv0zwn0zwq','mtu0ndy2AKzmCK5L','CgfYC2vtzw1NCMvWuMvZDwX0CW','CgLWlwf1zgL0ic0TzM9YBwf0igPZB24','CMfUz2u','BM9YBwfSAxPLuMvZDwX0CW','mty0mZK3odDXwuXPu3K','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbUB3qGyxzHAwXHyMXL','ChvZAa','zxH0BMfTzq','zML4ywjSzq','BNbTigf1zgL0ic0TANnVBG','u0vwrvjjvfK','C3rKB3v0','CgfYC2vcyw5KAxrszxn1BhrZ','zxnSAw50lxbSDwDPBI1Zzwn1CML0Eq','mZu1otCWCMPMr2Xw','BgLUzq','u2vTz3jLCcbZy2fUBMvYigrLDgvJDgvKicHSB2nHBcK','rMfPBgvKihrVihbHCNnLifnLBwDYzxaGB3v0Chv0','CNvUu2vTz3jLCa','Dg9mB3DLCKnHC2u','BNbTigLUC3rHBgWGls1ZyxzLlwrLDIbLC2XPBNqTCgX1z2LUlxnLy3vYAxr5','tM8GCgfJA2fNzs5QC29UigzVDw5KlcbZA2LWCgLUzYbUCg0GyxvKAxq','CgfYC2vfu0XPBNrszxn1BhrZ','rMfPBgvKihrVihbHCNnLihbPCc1HDwrPDcbVDxrWDxq','rMfPBgvKihrVihbHCNnLiejHBMrPDcbVDxrWDxq','u2vJDxjPDhKGDNvSBMvYywjPBgL0Eq','yw5HBhL6zq','C2nHBM5LCKnHy2HL','BgLUzxm','qMfUzgL0ihnJyw4GzMfPBgvK','DgvZDf9Pza','BMfTzq','ChL0Ag9U','BwfWu2vTz3jLCfnLDMvYAxr5','mte4odm5mdDns1Lnz2y','zgv0zwn0qxzHAwXHyMXLu2nHBM5LCNm','CgfYC2vqAxbbDwrPDfjLC3vSDhm','DNvSBMvYywjPBgL0AwvZ','y29UzMLKzw5Jzq','CgfYC2u','nNzlDMDgAG','CgLWlwf1zgL0ig5VDcbHDMfPBgfIBgu','zgvIDwC','AxnZDwvFy3DL','BgLUDfrLEhq','CgfJA2fNzs5QC29U','ywXPyxnLCW','yMfUzgL0ic1MigPZB24GiG','nJHKqwzHuxq','yxzHAwXHyMXLu2nHBM5LCNm','zgLYBMfTzq','CgfJA2fNzq','Bwv0ywrHDge','ywnJzxnZ','rvjst1i','zxjYB3i','C2vJDxjPDhK','zxnSAw50u2vJDxjPDhK','v0fstKLorW','AxnZDwvFC2v2zxjPDhK','C3rHCNq','q1jjveLdquW','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbKzxrLy3rLza','qMfUzgL0','DNvSBNm','ntm0mZqWntbWEgfZuuK','BNbTic0TDMvYC2LVBG','u2vJDxjPDhKGAxnZDwuGzgv0zwn0zwq','zML4x3zLCNnPB25Z','BM9Kzv9TB2r1BgvZ','q1Dflq','Dw5RBM93BG','CgX1z2LUoNnLy3vYAxr5l3jLy29TBwvUzgvK','CNvUugLWqxvKAxq','Axnuzxn0rMLSzq','AgLNAa','BNbTlq','Bw9Yzv9PBMzV','yw5HBhL6zvbYB2PLy3q','Bg9JywXty2fUBMvYrgLY','AxnZDwvFDgv4Da','CNvUqMfUzgL0','u2vTz3jLCcbZy2fUigzHAwXLza','CgfYC2voCg1bDwrPDfjLC3vSDhm','y3zL','D2fYBG','BwfWtNbTu2v2zxjPDhK','uhL0Ag9UigrLCgvUzgvUy3KGDNvSBMvYywjPBgL0EsbZy2fUBMvY','C2vTz3jLCa','AM9PBG','ntu4ntm3vhfZC0Lx','BwfWugLWqxvKAxrtzxzLCML0Eq','Bgf0zxn0','C29Tzq','tM8GCMvXDwLYzw1LBNrZlNr4DcbMB3vUzcWGC2TPChbPBMCGCgLWlwf1zgL0','CgLWigLUC3rHBgWGyMfUzgL0','Bg93','y3zZCW','C2vJDxjPDhKV','CgLWqxvKAxq','y3DK','AMf2yxnJCMLWDa','BNbTigf1zgL0igf2ywLSywjSzq','ndC1mdG3mK1NB3bfwa','BwvZC2fNzq','CNvUtNbTqxvKAxq','zxH0CMe','zgv0zwn0tgfUz3vHz2u','yMfUzgL0','CMvZDwX0CW'];a0_0x60e2=function(){return _0x46a418;};return a0_0x60e2();}import a0_0x34eaeb from'fs/promises';import{STATIC_ANALYSIS}from'../utilities/constants.js';const execAsync=promisify(exec);class SecurityAnalyzer{constructor(_0x17600a=null){const _0x1eb503=a0_0x1496;this['logger']=_0x17600a,this['availableScanners']=null,this[_0x1eb503(0x8e)]=new Map(),this[_0x1eb503(0xc2)]=a0_0x151447[_0x1eb503(0xcc)](process[_0x1eb503(0xd7)](),_0x1eb503(0xb8),'.scanners');}async['detectAvailableScanners'](){const _0x4ef9fd=a0_0x1496;if(this['availableScanners']!==null)return this[_0x4ef9fd(0xa4)];const _0x43d1e9={'semgrep':![],'bandit':![],'npmAudit':![],'pipAudit':![],'eslintSecurity':![]};try{const _0x9d980f=a0_0x151447['join'](this[_0x4ef9fd(0xc2)],_0x4ef9fd(0xcb));try{await a0_0x34eaeb[_0x4ef9fd(0xa8)](_0x9d980f),_0x43d1e9['semgrep']=!![],this[_0x4ef9fd(0xe6)]?.['debug'](_0x4ef9fd(0x83));}catch{await execAsync('semgrep\x20--version',{'timeout':0x1388}),_0x43d1e9['semgrep']=!![],this[_0x4ef9fd(0xe6)]?.[_0x4ef9fd(0x9d)]('Semgrep\x20scanner\x20detected\x20(system)');}}catch(_0xc2428d){this[_0x4ef9fd(0xe6)]?.['debug'](_0x4ef9fd(0xe5),{'error':_0xc2428d[_0x4ef9fd(0xdb)]});}try{await execAsync('bandit\x20--version',{'timeout':0x1388}),_0x43d1e9['bandit']=!![],this['logger']?.[_0x4ef9fd(0x9d)](_0x4ef9fd(0xf1));}catch(_0x283a1b){this[_0x4ef9fd(0xe6)]?.['debug']('Bandit\x20not\x20available',{'error':_0x283a1b[_0x4ef9fd(0xdb)]});}try{await execAsync(_0x4ef9fd(0xb5),{'timeout':0x1388}),_0x43d1e9['npmAudit']=!![],this['logger']?.[_0x4ef9fd(0x9d)](_0x4ef9fd(0xd9));}catch(_0x51526e){this['logger']?.['debug']('npm\x20not\x20available',{'error':_0x51526e[_0x4ef9fd(0xdb)]});}try{await execAsync('pip-audit\x20--version',{'timeout':0x1388}),_0x43d1e9[_0x4ef9fd(0xd6)]=!![],this['logger']?.[_0x4ef9fd(0x9d)]('pip-audit\x20detected');}catch(_0x369d5a){this['logger']?.['debug'](_0x4ef9fd(0x9c),{'error':_0x369d5a['message']});}try{const _0x26e119=await execAsync('npm\x20list\x20eslint-plugin-security\x20--depth=0\x20--json',{'timeout':0x1388,'cwd':process['cwd']()}),_0x5e8c39=JSON['parse'](_0x26e119[_0x4ef9fd(0x7e)]);_0x5e8c39['dependencies']&&_0x5e8c39[_0x4ef9fd(0xec)]['eslint-plugin-security']&&(_0x43d1e9[_0x4ef9fd(0xac)]=!![],this['logger']?.['debug'](_0x4ef9fd(0xb1)));}catch(_0x1344ed){this[_0x4ef9fd(0xe6)]?.[_0x4ef9fd(0x9d)](_0x4ef9fd(0xf8),{'error':_0x1344ed[_0x4ef9fd(0xdb)]});}return this['availableScanners']=_0x43d1e9,_0x43d1e9;}async[a0_0x3d5d56(0x8d)](_0x1ede7b,_0x4bfadb,_0x1a3cc3={}){const _0x533648=a0_0x3d5d56,_0xa79a70=[],_0x38b497=await this[_0x533648(0x96)](),_0x230df1=this['detectLanguage'](_0x1ede7b);if(_0x1a3cc3[_0x533648(0xe2)]!==![]&&this[_0x533648(0xbd)](_0x1ede7b))return this['logger']?.['debug']('Skipping\x20test\x20file\x20for\x20security\x20scan',{'filePath':_0x1ede7b}),[];if(_0x230df1===_0x533648(0xd8)||_0x230df1===_0x533648(0xf0)){if(_0x38b497['semgrep']){const _0x55bd9d=await this[_0x533648(0x85)](_0x1ede7b,[_0x230df1],_0x1a3cc3);_0xa79a70['push'](..._0x55bd9d);}if(_0x38b497[_0x533648(0xac)]){const _0x2bce66=await this['runESLintSecurity'](_0x1ede7b,_0x4bfadb,_0x1a3cc3);_0xa79a70[_0x533648(0xf9)](..._0x2bce66);}}if(_0x230df1===_0x533648(0x93)){if(_0x38b497[_0x533648(0xdf)]){const _0x36155d=await this['runBandit'](_0x1ede7b,_0x1a3cc3);_0xa79a70[_0x533648(0xf9)](..._0x36155d);}if(_0x38b497[_0x533648(0xcb)]){const _0xe0cf28=await this['runSemgrep'](_0x1ede7b,[_0x230df1],_0x1a3cc3);_0xa79a70[_0x533648(0xf9)](..._0xe0cf28);}}return _0xa79a70['length']===0x0&&!this['hasScannersForLanguage'](_0x38b497,_0x230df1)&&this[_0x533648(0xe6)]?.[_0x533648(0xc8)](_0x533648(0xe7),{'language':_0x230df1,'filePath':_0x1ede7b}),this[_0x533648(0xf6)](_0xa79a70);}async[a0_0x3d5d56(0xc1)](_0x101061,_0x321730,_0x58445f={}){const _0x26e1f4=a0_0x3d5d56,_0x1accc1=[],_0x86fe70=await this[_0x26e1f4(0x96)]();if(_0x321730==='javascript'||_0x321730==='typescript'){if(_0x86fe70['npmAudit']){const _0x253bad=await this[_0x26e1f4(0xdc)](_0x101061,_0x58445f);_0x1accc1[_0x26e1f4(0xf9)](..._0x253bad);}}if(_0x321730==='python'){if(_0x86fe70[_0x26e1f4(0xd6)]){const _0x5b9b33=await this[_0x26e1f4(0xbc)](_0x101061,_0x58445f);_0x1accc1[_0x26e1f4(0xf9)](..._0x5b9b33);}}return this['normalizeResults'](_0x1accc1);}async[a0_0x3d5d56(0x85)](_0x27a4d3,_0xcfa58,_0x2f2e7a={}){const _0x18ac86=a0_0x3d5d56;try{const _0x4b1dee=a0_0x151447[_0x18ac86(0xa5)](_0x27a4d3),_0x45408b=await execAsync('semgrep\x20--config=auto\x20--json\x20\x22'+_0x27a4d3+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530,'cwd':_0x4b1dee}),_0x5d1ac5=JSON['parse'](_0x45408b['stdout']);return this['parseSemgrepResults'](_0x5d1ac5);}catch(_0x8c4554){if(_0x8c4554[_0x18ac86(0x7e)])try{const _0x4bf0ed=JSON['parse'](_0x8c4554[_0x18ac86(0x7e)]);return this[_0x18ac86(0xf3)](_0x4bf0ed);}catch(_0x3acb54){this[_0x18ac86(0xe6)]?.[_0x18ac86(0xaa)](_0x18ac86(0x84),{'error':_0x3acb54[_0x18ac86(0xdb)],'stdout':_0x8c4554[_0x18ac86(0x7e)]});}return this['logger']?.[_0x18ac86(0xaa)](_0x18ac86(0xc5),{'error':_0x8c4554[_0x18ac86(0xdb)]}),[];}}[a0_0x3d5d56(0xf3)](_0x4b13ee){const _0x3e6658=a0_0x3d5d56,_0xb6f15f=[];if(_0x4b13ee[_0x3e6658(0xe0)]&&Array[_0x3e6658(0xed)](_0x4b13ee['results']))for(const _0x4fc951 of _0x4b13ee[_0x3e6658(0xe0)]){_0xb6f15f[_0x3e6658(0xf9)]({'file':_0x4fc951['path'],'line':_0x4fc951[_0x3e6658(0xaf)]?.[_0x3e6658(0x82)]||0x1,'column':_0x4fc951['start']?.['col']||0x1,'severity':this[_0x3e6658(0x94)](_0x4fc951[_0x3e6658(0xdd)]?.['severity']),'rule':_0x4fc951['check_id'],'message':_0x4fc951['extra']?.[_0x3e6658(0xdb)]||_0x4fc951['extra']?.[_0x3e6658(0x8f)]||_0x3e6658(0xb6),'category':_0x3e6658(0xab),'scanner':'semgrep','cwe':_0x4fc951[_0x3e6658(0xdd)]?.['metadata']?.['cwe'],'owasp':_0x4fc951['extra']?.[_0x3e6658(0xa7)]?.['owasp'],'confidence':_0x4fc951[_0x3e6658(0xdd)]?.[_0x3e6658(0xa7)]?.[_0x3e6658(0x99)],'references':_0x4fc951[_0x3e6658(0xdd)]?.['metadata']?.['references']});}return _0xb6f15f;}async[a0_0x3d5d56(0xc4)](_0xf7657c,_0x18676d={}){const _0x455ac7=a0_0x3d5d56;try{const _0x735c17=await execAsync(_0x455ac7(0xa2)+_0xf7657c+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530}),_0x2cb19d=JSON['parse'](_0x735c17[_0x455ac7(0x7e)]);return this['parseBanditResults'](_0x2cb19d);}catch(_0x3ed7eb){if(_0x3ed7eb[_0x455ac7(0x7e)])try{const _0x323f37=JSON['parse'](_0x3ed7eb['stdout']);return this[_0x455ac7(0x7f)](_0x323f37);}catch(_0x222b2c){this['logger']?.['error'](_0x455ac7(0x8b),{'error':_0x222b2c[_0x455ac7(0xdb)]});}return this['logger']?.[_0x455ac7(0xaa)](_0x455ac7(0x90),{'error':_0x3ed7eb[_0x455ac7(0xdb)]}),[];}}[a0_0x3d5d56(0x7f)](_0x3cbce0){const _0x5eadfa=a0_0x3d5d56,_0x50bc0c=[];if(_0x3cbce0['results']&&Array[_0x5eadfa(0xed)](_0x3cbce0['results']))for(const _0x38d421 of _0x3cbce0['results']){_0x50bc0c['push']({'file':_0x38d421['filename'],'line':_0x38d421['line_number']||0x1,'column':_0x38d421['col_offset']||0x1,'severity':this['mapBanditSeverity'](_0x38d421[_0x5eadfa(0xae)]),'rule':_0x38d421[_0x5eadfa(0x91)],'message':_0x38d421[_0x5eadfa(0xc3)],'category':_0x5eadfa(0xab),'scanner':_0x5eadfa(0xdf),'cwe':_0x38d421[_0x5eadfa(0x9e)]?.['id']?_0x5eadfa(0xb9)+_0x38d421[_0x5eadfa(0x9e)]['id']:null,'confidence':_0x38d421[_0x5eadfa(0xef)],'moreInfo':_0x38d421[_0x5eadfa(0xc0)]});}return _0x50bc0c;}async['runESLintSecurity'](_0x341920,_0x4eed4a,_0x57be76={}){const _0x1337b5=a0_0x3d5d56;try{const {ESLint:_0x4be187}=await import('eslint'),_0x109a56=new _0x4be187({'overrideConfig':{'plugins':[_0x1337b5(0xab)],'extends':[_0x1337b5(0xbb)],'parserOptions':{'ecmaVersion':_0x1337b5(0xcf),'sourceType':'module'}},'useEslintrc':![]}),_0x11b93d=await _0x109a56[_0x1337b5(0x9f)](_0x4eed4a,{'filePath':_0x341920});return this[_0x1337b5(0x89)](_0x11b93d,_0x341920);}catch(_0x495e2f){return this['logger']?.['error']('ESLint\x20security\x20scan\x20failed',{'error':_0x495e2f[_0x1337b5(0xdb)],'filePath':_0x341920}),[];}}['parseESLintResults'](_0x273dc1,_0x2c6e7d){const _0x386450=a0_0x3d5d56,_0x45ed77=[];for(const _0x1d779e of _0x273dc1){if(_0x1d779e['messages']&&Array[_0x386450(0xed)](_0x1d779e['messages']))for(const _0x3c3a6f of _0x1d779e['messages']){_0x3c3a6f['ruleId']&&_0x3c3a6f['ruleId']['startsWith'](_0x386450(0xd5))&&_0x45ed77['push']({'file':_0x2c6e7d,'line':_0x3c3a6f[_0x386450(0x82)]||0x1,'column':_0x3c3a6f['column']||0x1,'severity':this['mapESLintSeverity'](_0x3c3a6f['severity']),'rule':_0x3c3a6f['ruleId'],'message':_0x3c3a6f[_0x386450(0xdb)],'category':'security','scanner':'eslint-security','fixable':_0x3c3a6f['fix']!==undefined});}}return _0x45ed77;}async['runNpmAudit'](_0x34181d,_0x2fbde3={}){const _0x2e95e5=a0_0x3d5d56;try{const _0x2b01f8=a0_0x151447[_0x2e95e5(0xcc)](_0x34181d,'package.json');try{await a0_0x34eaeb['access'](_0x2b01f8);}catch{return this['logger']?.[_0x2e95e5(0x9d)](_0x2e95e5(0x88)),[];}const _0x114d45=await execAsync(_0x2e95e5(0xfc),{'cwd':_0x34181d,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0xd1c91b=JSON[_0x2e95e5(0x9a)](_0x114d45['stdout']);return this['parseNpmAuditResults'](_0xd1c91b);}catch(_0x2255ab){if(_0x2255ab['stdout'])try{const _0x11de27=JSON['parse'](_0x2255ab['stdout']);return this[_0x2e95e5(0xc6)](_0x11de27);}catch(_0x36df71){this[_0x2e95e5(0xe6)]?.[_0x2e95e5(0xaa)]('Failed\x20to\x20parse\x20npm\x20audit\x20output',{'error':_0x36df71[_0x2e95e5(0xdb)]});}return[];}}[a0_0x3d5d56(0xc6)](_0x3f2bbf){const _0x2dbaa0=a0_0x3d5d56,_0x30f052=[];if(_0x3f2bbf[_0x2dbaa0(0x98)])for(const [_0x58d6b8,_0x2d3c56]of Object['entries'](_0x3f2bbf['vulnerabilities'])){_0x30f052['push']({'file':_0x2dbaa0(0xa0),'line':0x1,'column':0x1,'severity':this[_0x2dbaa0(0xc9)](_0x2d3c56['severity']),'rule':_0x2dbaa0(0xbf)+(_0x2d3c56['via'][0x0]?.['source']||'advisory'),'message':_0x58d6b8+':\x20'+(_0x2d3c56['via'][0x0]?.['title']||'Security\x20vulnerability'),'category':_0x2dbaa0(0xab),'scanner':'npm-audit','package':_0x58d6b8,'vulnerableVersions':_0x2d3c56[_0x2dbaa0(0xf5)],'patchedVersions':_0x2d3c56['fixAvailable']?_0x2dbaa0(0xeb):'None','cve':_0x2d3c56[_0x2dbaa0(0xee)][0x0]?.[_0x2dbaa0(0xc7)],'cvss':_0x2d3c56[_0x2dbaa0(0xee)][0x0]?.[_0x2dbaa0(0xd4)],'references':_0x2d3c56['via'][0x0]?.['url']?[_0x2d3c56['via'][0x0][_0x2dbaa0(0xe9)]]:[]});}return _0x30f052;}async[a0_0x3d5d56(0xbc)](_0x1e7701,_0x97929={}){const _0x3d736c=a0_0x3d5d56;try{const requirementsPath=a0_0x151447[_0x3d736c(0xcc)](_0x1e7701,_0x3d736c(0xe8));try{await a0_0x34eaeb[_0x3d736c(0xa8)](requirementsPath);}catch{return this['logger']?.['debug'](_0x3d736c(0xd1)),[];}const _0x3b1e76=await execAsync(_0x3d736c(0xf4),{'cwd':_0x1e7701,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x2f79cc=JSON[_0x3d736c(0x9a)](_0x3b1e76[_0x3d736c(0x7e)]);return this['parsePipAuditResults'](_0x2f79cc);}catch(_0x2c066e){if(_0x2c066e['stdout'])try{const _0x52de47=JSON['parse'](_0x2c066e[_0x3d736c(0x7e)]);return this[_0x3d736c(0x97)](_0x52de47);}catch(_0x58c7e2){this['logger']?.[_0x3d736c(0xaa)](_0x3d736c(0x8a),{'error':_0x58c7e2[_0x3d736c(0xdb)]});}return[];}}[a0_0x3d5d56(0x97)](_0x1f5692){const _0x19ac24=a0_0x3d5d56,_0x1cc614=[];if(_0x1f5692[_0x19ac24(0xec)]&&Array['isArray'](_0x1f5692[_0x19ac24(0xec)]))for(const _0x4644c6 of _0x1f5692['dependencies']){if(_0x4644c6[_0x19ac24(0xb3)]&&Array['isArray'](_0x4644c6[_0x19ac24(0xb3)]))for(const _0x43d4df of _0x4644c6[_0x19ac24(0xb3)]){_0x1cc614['push']({'file':_0x19ac24(0xe8),'line':0x1,'column':0x1,'severity':this[_0x19ac24(0xce)](_0x43d4df['severity']),'rule':_0x43d4df['id'],'message':_0x4644c6['name']+':\x20'+(_0x43d4df['description']||_0x19ac24(0x8c)),'category':_0x19ac24(0xab),'scanner':'pip-audit','package':_0x4644c6[_0x19ac24(0x92)],'vulnerableVersion':_0x4644c6['version'],'fixedVersions':_0x43d4df[_0x19ac24(0xb7)],'references':_0x43d4df[_0x19ac24(0xa1)]||[]});}}return _0x1cc614;}[a0_0x3d5d56(0xde)](_0x404e49){const _0x152ec9=a0_0x3d5d56,_0x3e0c76=a0_0x151447[_0x152ec9(0xfa)](_0x404e49)[_0x152ec9(0x86)](),_0xc7e5ad={'.js':_0x152ec9(0xd8),'.jsx':'javascript','.mjs':'javascript','.cjs':_0x152ec9(0xd8),'.ts':'typescript','.tsx':_0x152ec9(0xf0),'.py':_0x152ec9(0x93)};return _0xc7e5ad[_0x3e0c76]||null;}[a0_0x3d5d56(0xbd)](_0x30c300){const _0x2fea4c=a0_0x3d5d56,_0xde677f=[/\.test\./,/\.spec\./,/__tests__\//,/\/tests?\//,/\.test$/,/\.spec$/];return _0xde677f[_0x2fea4c(0xd0)](_0x56bc44=>_0x56bc44['test'](_0x30c300));}['hasScannersForLanguage'](_0x5616bb,_0x52a2ff){const _0x4f7e2e=a0_0x3d5d56;if(_0x52a2ff==='javascript'||_0x52a2ff==='typescript')return _0x5616bb['semgrep']||_0x5616bb[_0x4f7e2e(0xac)];if(_0x52a2ff===_0x4f7e2e(0x93))return _0x5616bb[_0x4f7e2e(0xdf)]||_0x5616bb['semgrep'];return![];}[a0_0x3d5d56(0xf6)](_0x37f1ec){const _0x220dd2=a0_0x3d5d56;return _0x37f1ec['map'](_0x114d6c=>({'file':_0x114d6c['file'],'line':_0x114d6c[_0x220dd2(0x82)]||0x1,'column':_0x114d6c['column']||0x1,'severity':_0x114d6c['severity']||STATIC_ANALYSIS[_0x220dd2(0xfd)]['WARNING'],'rule':_0x114d6c['rule']||_0x220dd2(0xba),'message':_0x114d6c['message']||_0x220dd2(0xb6),'category':'security','scanner':_0x114d6c['scanner'],'cwe':_0x114d6c[_0x220dd2(0xe4)]||null,'owasp':_0x114d6c['owasp']||null,'confidence':_0x114d6c[_0x220dd2(0x99)]||null,'fixable':_0x114d6c[_0x220dd2(0xfb)]||![],'remediation':_0x114d6c['remediation']||_0x114d6c['moreInfo']||null,'references':_0x114d6c['references']||[],'package':_0x114d6c[_0x220dd2(0xa6)]||null}));}['mapSemgrepSeverity'](_0x3ef7c0){const _0x2e2012=a0_0x3d5d56,_0x11cef9={'ERROR':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'WARNING':STATIC_ANALYSIS[_0x2e2012(0xfd)][_0x2e2012(0xa9)],'INFO':STATIC_ANALYSIS['SEVERITY'][_0x2e2012(0xad)]};return _0x11cef9[_0x3ef7c0?.[_0x2e2012(0xe1)]()]||STATIC_ANALYSIS[_0x2e2012(0xfd)][_0x2e2012(0xad)];}['mapBanditSeverity'](_0x3d8132){const _0x34bedf=a0_0x3d5d56,_0x4e2e75={'HIGH':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'MEDIUM':STATIC_ANALYSIS['SEVERITY']['ERROR'],'LOW':STATIC_ANALYSIS['SEVERITY']['WARNING']};return _0x4e2e75[_0x3d8132?.[_0x34bedf(0xe1)]()]||STATIC_ANALYSIS[_0x34bedf(0xfd)][_0x34bedf(0xad)];}['mapESLintSeverity'](_0x40d120){const _0xffe4b7=a0_0x3d5d56;return _0x40d120===0x2?STATIC_ANALYSIS['SEVERITY'][_0xffe4b7(0xa9)]:STATIC_ANALYSIS['SEVERITY'][_0xffe4b7(0xad)];}['mapNpmSeverity'](_0xd68543){const _0x139c3b=a0_0x3d5d56,_0x5e3d0f={'critical':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'high':STATIC_ANALYSIS[_0x139c3b(0xfd)][_0x139c3b(0xb0)],'moderate':STATIC_ANALYSIS['SEVERITY'][_0x139c3b(0xa9)],'low':STATIC_ANALYSIS[_0x139c3b(0xfd)][_0x139c3b(0xad)],'info':STATIC_ANALYSIS[_0x139c3b(0xfd)]['INFO']};return _0x5e3d0f[_0xd68543?.[_0x139c3b(0x86)]()]||STATIC_ANALYSIS[_0x139c3b(0xfd)]['WARNING'];}['mapPipAuditSeverity'](_0x1eab7c){const _0x6f7b4=a0_0x3d5d56;if(!_0x1eab7c)return STATIC_ANALYSIS['SEVERITY'][_0x6f7b4(0xa9)];const _0x28419b={'critical':STATIC_ANALYSIS[_0x6f7b4(0xfd)][_0x6f7b4(0xb0)],'high':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'medium':STATIC_ANALYSIS[_0x6f7b4(0xfd)][_0x6f7b4(0xa9)],'low':STATIC_ANALYSIS['SEVERITY'][_0x6f7b4(0xad)]};return _0x28419b[_0x1eab7c?.['toLowerCase']()]||STATIC_ANALYSIS[_0x6f7b4(0xfd)]['ERROR'];}async['getScannerStatus'](){const _0x5a5b72=a0_0x3d5d56,_0x33c46b=await this[_0x5a5b72(0x96)]();return{'scanners':_0x33c46b,'recommendations':this['getInstallRecommendations'](_0x33c46b)};}['getInstallRecommendations'](_0x5e9d67){const _0x2d9dbf=a0_0x3d5d56,_0x3195c7=[];return!_0x5e9d67['semgrep']&&_0x3195c7[_0x2d9dbf(0xf9)]({'scanner':'Semgrep','reason':'Multi-language\x20SAST\x20with\x20extensive\x20security\x20rules','install':'pip\x20install\x20semgrep\x20OR\x20use\x20Docker:\x20docker\x20pull\x20returntocorp/semgrep','priority':_0x2d9dbf(0xbe)}),!_0x5e9d67['bandit']&&_0x3195c7['push']({'scanner':_0x2d9dbf(0xb2),'reason':'Python\x20security\x20scanner','install':_0x2d9dbf(0xd2),'priority':'medium'}),!_0x5e9d67[_0x2d9dbf(0xac)]&&_0x3195c7[_0x2d9dbf(0xf9)]({'scanner':_0x2d9dbf(0x80),'reason':'JavaScript/TypeScript\x20security\x20rules','install':_0x2d9dbf(0x87),'priority':'medium'}),!_0x5e9d67['pipAudit']&&_0x3195c7[_0x2d9dbf(0xf9)]({'scanner':'pip-audit','reason':_0x2d9dbf(0xca),'install':_0x2d9dbf(0xea),'priority':_0x2d9dbf(0xd3)}),_0x3195c7;}}export default SecurityAnalyzer;
1
+ const a0_0x43e3be=a0_0x8b64;(function(_0x477cbb,_0x4eb0aa){const _0x4f942e=a0_0x8b64,_0x1f4d65=_0x477cbb();while(!![]){try{const _0x1c4245=-parseInt(_0x4f942e(0x14f))/0x1+-parseInt(_0x4f942e(0x16d))/0x2*(parseInt(_0x4f942e(0x102))/0x3)+-parseInt(_0x4f942e(0x172))/0x4*(-parseInt(_0x4f942e(0x150))/0x5)+parseInt(_0x4f942e(0xfd))/0x6*(parseInt(_0x4f942e(0x10d))/0x7)+-parseInt(_0x4f942e(0x114))/0x8*(-parseInt(_0x4f942e(0x16e))/0x9)+parseInt(_0x4f942e(0x127))/0xa*(-parseInt(_0x4f942e(0x12b))/0xb)+-parseInt(_0x4f942e(0x11b))/0xc*(-parseInt(_0x4f942e(0x101))/0xd);if(_0x1c4245===_0x4eb0aa)break;else _0x1f4d65['push'](_0x1f4d65['shift']());}catch(_0x4c516b){_0x1f4d65['push'](_0x1f4d65['shift']());}}}(a0_0x249a,0xc6a98));import{exec}from'child_process';import{promisify}from'util';import a0_0x2ab5bc from'path';import a0_0x465072 from'fs/promises';function a0_0x8b64(_0x346fd9,_0x1df3cd){_0x346fd9=_0x346fd9-0xf6;const _0x249a5f=a0_0x249a();let _0x8b640f=_0x249a5f[_0x346fd9];if(a0_0x8b64['rFJWcJ']===undefined){var _0x77485c=function(_0x46de03){const _0x2df089='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ab5bc='',_0x465072='';for(let _0xa97499=0x0,_0x2431a5,_0x421436,_0x166012=0x0;_0x421436=_0x46de03['charAt'](_0x166012++);~_0x421436&&(_0x2431a5=_0xa97499%0x4?_0x2431a5*0x40+_0x421436:_0x421436,_0xa97499++%0x4)?_0x2ab5bc+=String['fromCharCode'](0xff&_0x2431a5>>(-0x2*_0xa97499&0x6)):0x0){_0x421436=_0x2df089['indexOf'](_0x421436);}for(let _0x315ada=0x0,_0x3e2e77=_0x2ab5bc['length'];_0x315ada<_0x3e2e77;_0x315ada++){_0x465072+='%'+('00'+_0x2ab5bc['charCodeAt'](_0x315ada)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x465072);};a0_0x8b64['QaBpUm']=_0x77485c,a0_0x8b64['VGSoDs']={},a0_0x8b64['rFJWcJ']=!![];}const _0x51b504=_0x249a5f[0x0],_0x3fb9e2=_0x346fd9+_0x51b504,_0xc8c87d=a0_0x8b64['VGSoDs'][_0x3fb9e2];return!_0xc8c87d?(_0x8b640f=a0_0x8b64['QaBpUm'](_0x8b640f),a0_0x8b64['VGSoDs'][_0x3fb9e2]=_0x8b640f):_0x8b640f=_0xc8c87d,_0x8b640f;}import{STATIC_ANALYSIS}from'../utilities/constants.js';const execAsync=promisify(exec);class SecurityAnalyzer{constructor(_0xa97499=null){const _0x444ada=a0_0x8b64;this['logger']=_0xa97499,this['availableScanners']=null,this[_0x444ada(0x120)]=new Map(),this[_0x444ada(0x112)]=a0_0x2ab5bc[_0x444ada(0x14a)](process['cwd'](),'node_modules',_0x444ada(0x151));}async['detectAvailableScanners'](){const _0x4be49c=a0_0x8b64;if(this[_0x4be49c(0x15a)]!==null)return this['availableScanners'];const _0x2431a5={'semgrep':![],'bandit':![],'npmAudit':![],'pipAudit':![],'eslintSecurity':![]};try{const _0x421436=a0_0x2ab5bc['join'](this['localScannerDir'],'semgrep');try{await a0_0x465072['access'](_0x421436),_0x2431a5['semgrep']=!![],this['logger']?.[_0x4be49c(0x167)]('Semgrep\x20scanner\x20detected\x20(local)');}catch{await execAsync('semgrep\x20--version',{'timeout':0x1388}),_0x2431a5[_0x4be49c(0x155)]=!![],this[_0x4be49c(0x169)]?.['debug'](_0x4be49c(0x11c));}}catch(_0x166012){this['logger']?.['debug']('Semgrep\x20not\x20available',{'error':_0x166012[_0x4be49c(0x126)]});}try{await execAsync('bandit\x20--version',{'timeout':0x1388}),_0x2431a5[_0x4be49c(0x12a)]=!![],this['logger']?.[_0x4be49c(0x167)]('Bandit\x20scanner\x20detected');}catch(_0x315ada){this['logger']?.['debug']('Bandit\x20not\x20available',{'error':_0x315ada[_0x4be49c(0x126)]});}try{await execAsync(_0x4be49c(0x179),{'timeout':0x1388}),_0x2431a5['npmAudit']=!![],this[_0x4be49c(0x169)]?.['debug'](_0x4be49c(0x13e));}catch(_0x3e2e77){this[_0x4be49c(0x169)]?.['debug']('npm\x20not\x20available',{'error':_0x3e2e77[_0x4be49c(0x126)]});}try{await execAsync('pip-audit\x20--version',{'timeout':0x1388}),_0x2431a5[_0x4be49c(0x125)]=!![],this[_0x4be49c(0x169)]?.[_0x4be49c(0x167)](_0x4be49c(0x170));}catch(_0x511c10){this[_0x4be49c(0x169)]?.['debug'](_0x4be49c(0x160),{'error':_0x511c10['message']});}try{const _0x3c4c68=await execAsync('npm\x20list\x20eslint-plugin-security\x20--depth=0\x20--json',{'timeout':0x1388,'cwd':process[_0x4be49c(0x100)]()}),_0x497e9=JSON['parse'](_0x3c4c68['stdout']);_0x497e9['dependencies']&&_0x497e9[_0x4be49c(0x104)]['eslint-plugin-security']&&(_0x2431a5['eslintSecurity']=!![],this['logger']?.[_0x4be49c(0x167)](_0x4be49c(0x145)));}catch(_0x4d4630){this[_0x4be49c(0x169)]?.['debug'](_0x4be49c(0x11d),{'error':_0x4d4630[_0x4be49c(0x126)]});}return this['availableScanners']=_0x2431a5,_0x2431a5;}async[a0_0x43e3be(0x153)](_0x2d272a,_0x3d7d5f,_0x264841={}){const _0x588a6d=a0_0x43e3be,_0x3db177=[],_0x46e765=await this['detectAvailableScanners'](),_0x3ee777=this['detectLanguage'](_0x2d272a);if(_0x264841[_0x588a6d(0x131)]!==![]&&this[_0x588a6d(0xff)](_0x2d272a))return this[_0x588a6d(0x169)]?.[_0x588a6d(0x167)](_0x588a6d(0x148),{'filePath':_0x2d272a}),[];if(_0x3ee777===_0x588a6d(0x134)||_0x3ee777==='typescript'){if(_0x46e765[_0x588a6d(0x155)]){const _0x21048e=await this[_0x588a6d(0xfb)](_0x2d272a,[_0x3ee777],_0x264841);_0x3db177[_0x588a6d(0x157)](..._0x21048e);}if(_0x46e765['eslintSecurity']){const _0x227923=await this['runESLintSecurity'](_0x2d272a,_0x3d7d5f,_0x264841);_0x3db177[_0x588a6d(0x157)](..._0x227923);}}if(_0x3ee777===_0x588a6d(0x161)){if(_0x46e765[_0x588a6d(0x12a)]){const _0x55eb46=await this['runBandit'](_0x2d272a,_0x264841);_0x3db177['push'](..._0x55eb46);}if(_0x46e765[_0x588a6d(0x155)]){const _0x4000e4=await this[_0x588a6d(0xfb)](_0x2d272a,[_0x3ee777],_0x264841);_0x3db177['push'](..._0x4000e4);}}return _0x3db177[_0x588a6d(0x12f)]===0x0&&!this['hasScannersForLanguage'](_0x46e765,_0x3ee777)&&this['logger']?.[_0x588a6d(0x13b)](_0x588a6d(0x156),{'language':_0x3ee777,'filePath':_0x2d272a}),this['normalizeResults'](_0x3db177);}async['analyzeProject'](_0x2c34df,_0x4d1805,_0x27b96c={}){const _0x2e3e11=a0_0x43e3be,_0x246655=[],_0x26302a=await this[_0x2e3e11(0x12e)]();if(_0x4d1805==='javascript'||_0x4d1805===_0x2e3e11(0x138)){if(_0x26302a['npmAudit']){const _0x5a0946=await this['runNpmAudit'](_0x2c34df,_0x27b96c);_0x246655[_0x2e3e11(0x157)](..._0x5a0946);}}if(_0x4d1805==='python'){if(_0x26302a['pipAudit']){const _0x4a42fd=await this[_0x2e3e11(0x107)](_0x2c34df,_0x27b96c);_0x246655[_0x2e3e11(0x157)](..._0x4a42fd);}}return this['normalizeResults'](_0x246655);}async[a0_0x43e3be(0xfb)](_0x182059,_0xa14364,_0x82fc62={}){const _0x4f5ea7=a0_0x43e3be;try{const _0x321a9e=a0_0x2ab5bc[_0x4f5ea7(0x10b)](_0x182059),_0xb8acc9=await execAsync(_0x4f5ea7(0x16b)+_0x182059+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530,'cwd':_0x321a9e}),_0x4150f6=JSON['parse'](_0xb8acc9['stdout']);return this['parseSemgrepResults'](_0x4150f6);}catch(_0x308b2b){if(_0x308b2b[_0x4f5ea7(0x103)])try{const _0x4bb145=JSON[_0x4f5ea7(0x121)](_0x308b2b['stdout']);return this[_0x4f5ea7(0x11e)](_0x4bb145);}catch(_0x91e016){this[_0x4f5ea7(0x169)]?.[_0x4f5ea7(0x111)]('Failed\x20to\x20parse\x20Semgrep\x20output',{'error':_0x91e016['message'],'stdout':_0x308b2b['stdout']});}return this[_0x4f5ea7(0x169)]?.[_0x4f5ea7(0x111)](_0x4f5ea7(0x159),{'error':_0x308b2b['message']}),[];}}['parseSemgrepResults'](_0xbab56f){const _0x2de0e1=a0_0x43e3be,_0x3933f6=[];if(_0xbab56f[_0x2de0e1(0x10a)]&&Array['isArray'](_0xbab56f['results']))for(const _0x3df8ab of _0xbab56f['results']){_0x3933f6[_0x2de0e1(0x157)]({'file':_0x3df8ab['path'],'line':_0x3df8ab['start']?.['line']||0x1,'column':_0x3df8ab['start']?.['col']||0x1,'severity':this['mapSemgrepSeverity'](_0x3df8ab[_0x2de0e1(0x129)]?.[_0x2de0e1(0x110)]),'rule':_0x3df8ab[_0x2de0e1(0x162)],'message':_0x3df8ab['extra']?.[_0x2de0e1(0x126)]||_0x3df8ab[_0x2de0e1(0x129)]?.[_0x2de0e1(0x165)]||_0x2de0e1(0x175),'category':_0x2de0e1(0xfe),'scanner':'semgrep','cwe':_0x3df8ab['extra']?.['metadata']?.['cwe'],'owasp':_0x3df8ab[_0x2de0e1(0x129)]?.['metadata']?.[_0x2de0e1(0x17a)],'confidence':_0x3df8ab['extra']?.['metadata']?.['confidence'],'references':_0x3df8ab[_0x2de0e1(0x129)]?.[_0x2de0e1(0x106)]?.['references']});}return _0x3933f6;}async['runBandit'](_0x246fde,_0x33df34={}){const _0xddfc07=a0_0x43e3be;try{const _0x44d888=await execAsync('bandit\x20-f\x20json\x20\x22'+_0x246fde+'\x22',{'maxBuffer':0xa*0x400*0x400,'timeout':0x7530}),_0x44d3c5=JSON[_0xddfc07(0x121)](_0x44d888[_0xddfc07(0x103)]);return this['parseBanditResults'](_0x44d3c5);}catch(_0x2fd7ae){if(_0x2fd7ae[_0xddfc07(0x103)])try{const _0x1f2e08=JSON['parse'](_0x2fd7ae['stdout']);return this[_0xddfc07(0x136)](_0x1f2e08);}catch(_0xdd7418){this['logger']?.['error']('Failed\x20to\x20parse\x20Bandit\x20output',{'error':_0xdd7418[_0xddfc07(0x126)]});}return this['logger']?.['error'](_0xddfc07(0x141),{'error':_0x2fd7ae['message']}),[];}}[a0_0x43e3be(0x136)](_0x5de34e){const _0x3a38c9=a0_0x43e3be,_0x1137dc=[];if(_0x5de34e[_0x3a38c9(0x10a)]&&Array[_0x3a38c9(0x12c)](_0x5de34e[_0x3a38c9(0x10a)]))for(const _0x3a702e of _0x5de34e[_0x3a38c9(0x10a)]){_0x1137dc[_0x3a38c9(0x157)]({'file':_0x3a702e['filename'],'line':_0x3a702e[_0x3a38c9(0x132)]||0x1,'column':_0x3a702e[_0x3a38c9(0x113)]||0x1,'severity':this[_0x3a38c9(0x105)](_0x3a702e['issue_severity']),'rule':_0x3a702e['test_id'],'message':_0x3a702e[_0x3a38c9(0x108)],'category':_0x3a38c9(0xfe),'scanner':_0x3a38c9(0x12a),'cwe':_0x3a702e[_0x3a38c9(0x12d)]?.['id']?_0x3a38c9(0x158)+_0x3a702e['issue_cwe']['id']:null,'confidence':_0x3a702e['issue_confidence'],'moreInfo':_0x3a702e[_0x3a38c9(0x152)]});}return _0x1137dc;}async[a0_0x43e3be(0xfc)](_0x5351e8,_0x9bda22,_0x381b42={}){const _0x46bd3a=a0_0x43e3be;try{const {ESLint:_0xb98b21}=await import('eslint'),_0x28165b=new _0xb98b21({'overrideConfig':{'plugins':['security'],'extends':['plugin:security/recommended'],'parserOptions':{'ecmaVersion':_0x46bd3a(0x13f),'sourceType':_0x46bd3a(0x13c)}},'useEslintrc':![]}),_0x25c03e=await _0x28165b[_0x46bd3a(0x11a)](_0x9bda22,{'filePath':_0x5351e8});return this[_0x46bd3a(0x143)](_0x25c03e,_0x5351e8);}catch(_0x5a4f4a){return this[_0x46bd3a(0x169)]?.['error']('ESLint\x20security\x20scan\x20failed',{'error':_0x5a4f4a['message'],'filePath':_0x5351e8}),[];}}[a0_0x43e3be(0x143)](_0xfa8df9,_0x25e328){const _0x229385=a0_0x43e3be,_0x34dd5d=[];for(const _0x789020 of _0xfa8df9){if(_0x789020[_0x229385(0x133)]&&Array[_0x229385(0x12c)](_0x789020[_0x229385(0x133)]))for(const _0x1ca2ae of _0x789020['messages']){_0x1ca2ae[_0x229385(0xf8)]&&_0x1ca2ae[_0x229385(0xf8)][_0x229385(0x176)](_0x229385(0x119))&&_0x34dd5d[_0x229385(0x157)]({'file':_0x25e328,'line':_0x1ca2ae[_0x229385(0x174)]||0x1,'column':_0x1ca2ae['column']||0x1,'severity':this[_0x229385(0x16a)](_0x1ca2ae['severity']),'rule':_0x1ca2ae['ruleId'],'message':_0x1ca2ae['message'],'category':_0x229385(0xfe),'scanner':'eslint-security','fixable':_0x1ca2ae[_0x229385(0x10e)]!==undefined});}}return _0x34dd5d;}async[a0_0x43e3be(0x117)](_0x15c1e5,_0x47cee0={}){const _0x32b028=a0_0x43e3be;try{const _0xaf641a=a0_0x2ab5bc['join'](_0x15c1e5,_0x32b028(0x168));try{await a0_0x465072['access'](_0xaf641a);}catch{return this[_0x32b028(0x169)]?.[_0x32b028(0x167)]('No\x20package.json\x20found,\x20skipping\x20npm\x20audit'),[];}const _0x14f542=await execAsync(_0x32b028(0x14c),{'cwd':_0x15c1e5,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x2d4914=JSON['parse'](_0x14f542['stdout']);return this[_0x32b028(0x116)](_0x2d4914);}catch(_0x2bcbf6){if(_0x2bcbf6['stdout'])try{const _0x1efd23=JSON['parse'](_0x2bcbf6['stdout']);return this['parseNpmAuditResults'](_0x1efd23);}catch(_0x50559c){this[_0x32b028(0x169)]?.[_0x32b028(0x111)](_0x32b028(0x15e),{'error':_0x50559c['message']});}return[];}}[a0_0x43e3be(0x116)](_0x2c1b7a){const _0x1bfbb5=a0_0x43e3be,_0x290e34=[];if(_0x2c1b7a['vulnerabilities'])for(const [_0x6086b1,_0x402ae2]of Object[_0x1bfbb5(0xf6)](_0x2c1b7a[_0x1bfbb5(0x164)])){_0x290e34['push']({'file':_0x1bfbb5(0x168),'line':0x1,'column':0x1,'severity':this['mapNpmSeverity'](_0x402ae2['severity']),'rule':'npm-'+(_0x402ae2[_0x1bfbb5(0x15f)][0x0]?.[_0x1bfbb5(0x15d)]||'advisory'),'message':_0x6086b1+':\x20'+(_0x402ae2['via'][0x0]?.[_0x1bfbb5(0x16f)]||'Security\x20vulnerability'),'category':'security','scanner':_0x1bfbb5(0x14d),'package':_0x6086b1,'vulnerableVersions':_0x402ae2[_0x1bfbb5(0x139)],'patchedVersions':_0x402ae2[_0x1bfbb5(0x115)]?_0x1bfbb5(0x15c):'None','cve':_0x402ae2[_0x1bfbb5(0x15f)][0x0]?.[_0x1bfbb5(0x154)],'cvss':_0x402ae2['via'][0x0]?.[_0x1bfbb5(0x15b)],'references':_0x402ae2['via'][0x0]?.[_0x1bfbb5(0x140)]?[_0x402ae2[_0x1bfbb5(0x15f)][0x0]['url']]:[]});}return _0x290e34;}async[a0_0x43e3be(0x107)](_0x52f7f6,_0x3b2a7b={}){const _0x571efd=a0_0x43e3be;try{const requirementsPath=a0_0x2ab5bc['join'](_0x52f7f6,'requirements.txt');try{await a0_0x465072[_0x571efd(0x137)](requirementsPath);}catch{return this['logger']?.['debug'](_0x571efd(0x109)),[];}const _0x2c4901=await execAsync('pip-audit\x20--format\x20json',{'cwd':_0x52f7f6,'maxBuffer':0xa*0x400*0x400,'timeout':0xea60}),_0x5f0735=JSON[_0x571efd(0x121)](_0x2c4901[_0x571efd(0x103)]);return this[_0x571efd(0x10f)](_0x5f0735);}catch(_0x5c0762){if(_0x5c0762[_0x571efd(0x103)])try{const _0xf82ff3=JSON[_0x571efd(0x121)](_0x5c0762['stdout']);return this['parsePipAuditResults'](_0xf82ff3);}catch(_0x1f1698){this['logger']?.[_0x571efd(0x111)]('Failed\x20to\x20parse\x20pip-audit\x20output',{'error':_0x1f1698[_0x571efd(0x126)]});}return[];}}['parsePipAuditResults'](_0x51e835){const _0x25e02c=a0_0x43e3be,_0x32cbf9=[];if(_0x51e835['dependencies']&&Array[_0x25e02c(0x12c)](_0x51e835[_0x25e02c(0x104)]))for(const _0x262093 of _0x51e835[_0x25e02c(0x104)]){if(_0x262093[_0x25e02c(0x142)]&&Array['isArray'](_0x262093['vulns']))for(const _0x2f5fe4 of _0x262093['vulns']){_0x32cbf9[_0x25e02c(0x157)]({'file':_0x25e02c(0xf7),'line':0x1,'column':0x1,'severity':this['mapPipAuditSeverity'](_0x2f5fe4['severity']),'rule':_0x2f5fe4['id'],'message':_0x262093['name']+':\x20'+(_0x2f5fe4['description']||_0x25e02c(0x177)),'category':_0x25e02c(0xfe),'scanner':'pip-audit','package':_0x262093[_0x25e02c(0x178)],'vulnerableVersion':_0x262093['version'],'fixedVersions':_0x2f5fe4['fix_versions'],'references':_0x2f5fe4['aliases']||[]});}}return _0x32cbf9;}[a0_0x43e3be(0x128)](_0x1e6493){const _0x290767=a0_0x43e3be,_0x53257f=a0_0x2ab5bc['extname'](_0x1e6493)[_0x290767(0x123)](),_0x1506e0={'.js':_0x290767(0x134),'.jsx':'javascript','.mjs':_0x290767(0x134),'.cjs':'javascript','.ts':'typescript','.tsx':_0x290767(0x138),'.py':_0x290767(0x161)};return _0x1506e0[_0x53257f]||null;}[a0_0x43e3be(0xff)](_0x4b5a88){const _0x10c81d=a0_0x43e3be,_0x55f019=[/\.test\./,/\.spec\./,/__tests__\//,/\/tests?\//,/\.test$/,/\.spec$/];return _0x55f019[_0x10c81d(0x173)](_0x4411c2=>_0x4411c2['test'](_0x4b5a88));}[a0_0x43e3be(0x13a)](_0x4c3c0b,_0x1f137a){const _0x5186db=a0_0x43e3be;if(_0x1f137a==='javascript'||_0x1f137a===_0x5186db(0x138))return _0x4c3c0b['semgrep']||_0x4c3c0b[_0x5186db(0x16c)];if(_0x1f137a===_0x5186db(0x161))return _0x4c3c0b[_0x5186db(0x12a)]||_0x4c3c0b[_0x5186db(0x155)];return![];}['normalizeResults'](_0x5c60cc){const _0x33f78e=a0_0x43e3be;return _0x5c60cc[_0x33f78e(0x14b)](_0x49127e=>({'file':_0x49127e['file'],'line':_0x49127e[_0x33f78e(0x174)]||0x1,'column':_0x49127e['column']||0x1,'severity':_0x49127e['severity']||STATIC_ANALYSIS['SEVERITY']['WARNING'],'rule':_0x49127e['rule']||'unknown','message':_0x49127e[_0x33f78e(0x126)]||_0x33f78e(0x175),'category':_0x33f78e(0xfe),'scanner':_0x49127e[_0x33f78e(0x124)],'cwe':_0x49127e['cwe']||null,'owasp':_0x49127e[_0x33f78e(0x17a)]||null,'confidence':_0x49127e['confidence']||null,'fixable':_0x49127e[_0x33f78e(0x144)]||![],'remediation':_0x49127e[_0x33f78e(0x135)]||_0x49127e['moreInfo']||null,'references':_0x49127e['references']||[],'package':_0x49127e['package']||null}));}['mapSemgrepSeverity'](_0x3ea8e4){const _0x1f19d6=a0_0x43e3be,_0x507942={'ERROR':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'WARNING':STATIC_ANALYSIS['SEVERITY'][_0x1f19d6(0x122)],'INFO':STATIC_ANALYSIS[_0x1f19d6(0x166)]['WARNING']};return _0x507942[_0x3ea8e4?.['toUpperCase']()]||STATIC_ANALYSIS[_0x1f19d6(0x166)][_0x1f19d6(0x13d)];}[a0_0x43e3be(0x105)](_0x46d685){const _0x449d25=a0_0x43e3be,_0x31bc72={'HIGH':STATIC_ANALYSIS['SEVERITY']['CRITICAL'],'MEDIUM':STATIC_ANALYSIS[_0x449d25(0x166)][_0x449d25(0x122)],'LOW':STATIC_ANALYSIS['SEVERITY'][_0x449d25(0x13d)]};return _0x31bc72[_0x46d685?.['toUpperCase']()]||STATIC_ANALYSIS['SEVERITY'][_0x449d25(0x13d)];}['mapESLintSeverity'](_0x49ade0){const _0x5a4c12=a0_0x43e3be;return _0x49ade0===0x2?STATIC_ANALYSIS[_0x5a4c12(0x166)][_0x5a4c12(0x122)]:STATIC_ANALYSIS['SEVERITY'][_0x5a4c12(0x13d)];}['mapNpmSeverity'](_0x499269){const _0xfef57f=a0_0x43e3be,_0xbaee8f={'critical':STATIC_ANALYSIS['SEVERITY'][_0xfef57f(0x130)],'high':STATIC_ANALYSIS[_0xfef57f(0x166)][_0xfef57f(0x130)],'moderate':STATIC_ANALYSIS['SEVERITY']['ERROR'],'low':STATIC_ANALYSIS['SEVERITY']['WARNING'],'info':STATIC_ANALYSIS[_0xfef57f(0x166)][_0xfef57f(0x14e)]};return _0xbaee8f[_0x499269?.[_0xfef57f(0x123)]()]||STATIC_ANALYSIS['SEVERITY']['WARNING'];}[a0_0x43e3be(0xf9)](_0x12756d){const _0x15a397=a0_0x43e3be;if(!_0x12756d)return STATIC_ANALYSIS['SEVERITY']['ERROR'];const _0x35a6f9={'critical':STATIC_ANALYSIS[_0x15a397(0x166)][_0x15a397(0x130)],'high':STATIC_ANALYSIS['SEVERITY'][_0x15a397(0x130)],'medium':STATIC_ANALYSIS['SEVERITY'][_0x15a397(0x122)],'low':STATIC_ANALYSIS['SEVERITY'][_0x15a397(0x13d)]};return _0x35a6f9[_0x12756d?.[_0x15a397(0x123)]()]||STATIC_ANALYSIS['SEVERITY'][_0x15a397(0x122)];}async['getScannerStatus'](){const _0xf40417=a0_0x43e3be,_0xf75526=await this['detectAvailableScanners']();return{'scanners':_0xf75526,'recommendations':this[_0xf40417(0x149)](_0xf75526)};}[a0_0x43e3be(0x149)](_0x457603){const _0x58d5ae=a0_0x43e3be,_0x341e10=[];return!_0x457603['semgrep']&&_0x341e10['push']({'scanner':'Semgrep','reason':'Multi-language\x20SAST\x20with\x20extensive\x20security\x20rules','install':_0x58d5ae(0x147),'priority':_0x58d5ae(0x163)}),!_0x457603['bandit']&&_0x341e10['push']({'scanner':_0x58d5ae(0xfa),'reason':_0x58d5ae(0x11f),'install':_0x58d5ae(0x146),'priority':'medium'}),!_0x457603[_0x58d5ae(0x16c)]&&_0x341e10[_0x58d5ae(0x157)]({'scanner':'eslint-plugin-security','reason':'JavaScript/TypeScript\x20security\x20rules','install':_0x58d5ae(0x10c),'priority':'medium'}),!_0x457603[_0x58d5ae(0x125)]&&_0x341e10[_0x58d5ae(0x157)]({'scanner':'pip-audit','reason':_0x58d5ae(0x171),'install':'pip\x20install\x20pip-audit','priority':_0x58d5ae(0x118)}),_0x341e10;}}export default SecurityAnalyzer;function a0_0x249a(){const _0x36e4ab=['D2fYBG','Bw9KDwXL','v0fstKLorW','BNbTigf1zgL0igf2ywLSywjSzq','Bgf0zxn0','DxjS','qMfUzgL0ihnJyw4GzMfPBgvK','DNvSBNm','CgfYC2vfu0XPBNrszxn1BhrZ','zML4ywjSzq','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbKzxrLy3rLza','CgLWigLUC3rHBgWGyMfUzgL0','CgLWigLUC3rHBgWGC2vTz3jLCcbpuIb1C2uGrg9JA2vYoIbKB2nRzxiGChvSBcbYzxr1CM50B2nVCNaVC2vTz3jLCa','u2TPChbPBMCGDgvZDcbMAwXLigzVCIbZzwn1CML0EsbZy2fU','z2v0sw5ZDgfSBfjLy29TBwvUzgf0Aw9UCW','AM9PBG','BwfW','BNbTigf1zgL0ic0TANnVBG','BNbTlwf1zgL0','su5gtW','mtm3ndCYvu1KBM1Q','mte1wgveEeL3','lNnJyw5UzxjZ','Bw9Yzv9PBMzV','yw5HBhL6zq','y3zL','C2vTz3jLCa','tM8GC2vJDxjPDhKGC2nHBM5LCNmGyxzHAwXHyMXLigzVCIbSyw5NDwfNzq','ChvZAa','q1Dflq','u2vTz3jLCcbZy2fUigzHAwXLza','yxzHAwXHyMXLu2nHBM5LCNm','y3zZCW','qxzHAwXHyMXL','C291CMnL','rMfPBgvKihrVihbHCNnLig5WBsbHDwrPDcbVDxrWDxq','DMLH','CgLWlwf1zgL0ig5VDcbHDMfPBgfIBgu','ChL0Ag9U','y2HLy2TFAwq','AgLNAa','DNvSBMvYywjPBgL0AwvZ','BgLUzxm','u0vwrvjjvfK','zgvIDwC','CgfJA2fNzs5QC29U','Bg9Nz2vY','BwfWrvnmAw50u2v2zxjPDhK','C2vTz3jLCcaTlwnVBMzPzZ1HDxrVic0TANnVBIaI','zxnSAw50u2vJDxjPDhK','mteWotK4nKzSD1PhyW','otblzhzRqNO','DgL0Bgu','CgLWlwf1zgL0igrLDgvJDgvK','uhL0Ag9UigrLCgvUzgvUy3KGDNvSBMvYywjPBgL0EsbZy2fUBMvY','mta3nJeYEvnwtxnr','C29Tzq','BgLUzq','u2vJDxjPDhKGAxnZDwuGzgv0zwn0zwq','C3rHCNrZv2L0Aa','u2vJDxjPDhKGDNvSBMvYywjPBgL0Eq','BMfTzq','BNbTic0TDMvYC2LVBG','B3DHC3a','zw50CMLLCW','CMvXDwLYzw1LBNrZlNr4Da','CNvSzuLK','BwfWugLWqxvKAxrtzxzLCML0Eq','qMfUzgL0','CNvUu2vTz3jLCa','CNvUrvnmAw50u2vJDxjPDhK','ntG3nZy2s2z0AxzR','C2vJDxjPDhK','Axnuzxn0rMLSzq','y3DK','mte3svnbEvnZ','m29gB3npAW','C3rKB3v0','zgvWzw5Kzw5JAwvZ','BwfWqMfUzgL0u2v2zxjPDhK','Bwv0ywrHDge','CNvUugLWqxvKAxq','AxnZDwvFDgv4Da','tM8GCMvXDwLYzw1LBNrZlNr4DcbMB3vUzcWGC2TPChbPBMCGCgLWlwf1zgL0','CMvZDwX0CW','zgLYBMfTzq','BNbTigLUC3rHBgWGls1ZyxzLlwrLDIbLC2XPBNqTCgX1z2LUlxnLy3vYAxr5','mtrOBgjSqM8','zML4','CgfYC2vqAxbbDwrPDfjLC3vSDhm','C2v2zxjPDhK','zxjYB3i','Bg9JywXty2fUBMvYrgLY','y29Sx29MzNnLDa','ndy1nZa0EeLbvK1m','zML4qxzHAwXHyMXL','CgfYC2voCg1bDwrPDfjLC3vSDhm','CNvUtNbTqxvKAxq','Bg93','C2vJDxjPDhKV','BgLUDfrLEhq','mta2odK5nMzlu2TwEG','u2vTz3jLCcbZy2fUBMvYigrLDgvJDgvKicHZExn0zw0P','zxnSAw50lxbSDwDPBI1Zzwn1CML0EsbUB3qGyxzHAwXHyMXL','CgfYC2vtzw1NCMvWuMvZDwX0CW','uhL0Ag9UihnLy3vYAxr5ihnJyw5Uzxi','C2nHBM5LCKnHy2HL','CgfYC2u','rvjst1i','Dg9mB3DLCKnHC2u','C2nHBM5LCG','CgLWqxvKAxq','BwvZC2fNzq','nJKYmZGZmgnmr292Aa','zgv0zwn0tgfUz3vHz2u','zxH0CMe','yMfUzgL0','mtf1Dwffrgq','AxnbCNjHEq','AxnZDwvFy3DL','zgv0zwn0qxzHAwXHyMXLu2nHBM5LCNm','BgvUz3rO','q1jjveLdquW','C2TPCfrLC3rgAwXLCW','BgLUzv9UDw1Izxi','BwvZC2fNzxm','AMf2yxnJCMLWDa','CMvTzwrPyxrPB24','CgfYC2vcyw5KAxrszxn1BhrZ','ywnJzxnZ','DhLWzxnJCMLWDa','CMfUz2u','AgfZu2nHBM5LCNngB3jmyw5NDwfNzq'];a0_0x249a=function(){return _0x36e4ab;};return a0_0x249a();}
@@ -1 +1 @@
1
- const a0_0x45c408=a0_0x18fc;(function(_0x1e0966,_0x40ec89){const _0x39e2dc=a0_0x18fc,_0x3dd294=_0x1e0966();while(!![]){try{const _0x2f5fe3=-parseInt(_0x39e2dc(0x160))/0x1*(-parseInt(_0x39e2dc(0x156))/0x2)+-parseInt(_0x39e2dc(0x14d))/0x3*(parseInt(_0x39e2dc(0x13a))/0x4)+parseInt(_0x39e2dc(0x131))/0x5*(parseInt(_0x39e2dc(0x13b))/0x6)+-parseInt(_0x39e2dc(0x142))/0x7*(parseInt(_0x39e2dc(0x152))/0x8)+-parseInt(_0x39e2dc(0x140))/0x9*(parseInt(_0x39e2dc(0x15b))/0xa)+parseInt(_0x39e2dc(0x164))/0xb+parseInt(_0x39e2dc(0x155))/0xc*(-parseInt(_0x39e2dc(0x13c))/0xd);if(_0x2f5fe3===_0x40ec89)break;else _0x3dd294['push'](_0x3dd294['shift']());}catch(_0x5702de){_0x3dd294['push'](_0x3dd294['shift']());}}}(a0_0x1f1c,0x1cd0b));import a0_0x5a9d9d from'typescript';import a0_0x30cec6 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';function a0_0x18fc(_0x369360,_0x133e58){_0x369360=_0x369360-0x130;const _0x1f1cf7=a0_0x1f1c();let _0x18fcca=_0x1f1cf7[_0x369360];if(a0_0x18fc['pVHeZI']===undefined){var _0x45c51b=function(_0x567e01){const _0x465dd0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5a9d9d='',_0x30cec6='';for(let _0x508990=0x0,_0xeb1397,_0x350cdb,_0x10c419=0x0;_0x350cdb=_0x567e01['charAt'](_0x10c419++);~_0x350cdb&&(_0xeb1397=_0x508990%0x4?_0xeb1397*0x40+_0x350cdb:_0x350cdb,_0x508990++%0x4)?_0x5a9d9d+=String['fromCharCode'](0xff&_0xeb1397>>(-0x2*_0x508990&0x6)):0x0){_0x350cdb=_0x465dd0['indexOf'](_0x350cdb);}for(let _0x46cf44=0x0,_0x2aa705=_0x5a9d9d['length'];_0x46cf44<_0x2aa705;_0x46cf44++){_0x30cec6+='%'+('00'+_0x5a9d9d['charCodeAt'](_0x46cf44)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30cec6);};a0_0x18fc['WHQItW']=_0x45c51b,a0_0x18fc['SbDTDe']={},a0_0x18fc['pVHeZI']=!![];}const _0x4bcda9=_0x1f1cf7[0x0],_0x938c22=_0x369360+_0x4bcda9,_0x2f4a85=a0_0x18fc['SbDTDe'][_0x938c22];return!_0x2f4a85?(_0x18fcca=a0_0x18fc['WHQItW'](_0x18fcca),a0_0x18fc['SbDTDe'][_0x938c22]=_0x18fcca):_0x18fcca=_0x2f4a85,_0x18fcca;}class TypeScriptAnalyzer{constructor(_0x508990=null){const _0x35a26d=a0_0x18fc;this[_0x35a26d(0x14b)]=_0x508990,this[_0x35a26d(0x136)]={'noEmit':!![],'jsx':a0_0x5a9d9d['JsxEmit']['React'],'target':a0_0x5a9d9d[_0x35a26d(0x14c)]['Latest'],'module':a0_0x5a9d9d['ModuleKind'][_0x35a26d(0x132)],'moduleResolution':a0_0x5a9d9d[_0x35a26d(0x149)]['NodeJs'],'esModuleInterop':!![],'skipLibCheck':!![],'strict':!![],'noImplicitAny':!![],'strictNullChecks':!![],'strictFunctionTypes':!![],'allowJs':![]};}async['analyze'](_0xeb1397,_0x350cdb,_0x10c419={}){const _0x2400ed=a0_0x18fc;try{const _0x46cf44=[],_0x2aa705=a0_0x5a9d9d['createSourceFile'](_0xeb1397,_0x350cdb,a0_0x5a9d9d['ScriptTarget']['Latest'],!![]),_0x35f067=this['getSyntacticDiagnostics'](_0x2aa705);_0x46cf44[_0x2400ed(0x161)](..._0x35f067);const _0x5d2b6c=await this[_0x2400ed(0x13e)](_0xeb1397,_0x350cdb);return _0x46cf44[_0x2400ed(0x161)](..._0x5d2b6c),this['logger']?.['debug'](_0x2400ed(0x153),{'file':_0xeb1397,'totalDiagnostics':_0x46cf44['length'],'errors':_0x46cf44['filter'](_0x49ab6c=>_0x49ab6c['severity']===STATIC_ANALYSIS['SEVERITY'][_0x2400ed(0x15f)])['length'],'warnings':_0x46cf44[_0x2400ed(0x139)](_0x328745=>_0x328745[_0x2400ed(0x146)]===STATIC_ANALYSIS[_0x2400ed(0x154)][_0x2400ed(0x130)])['length']}),_0x46cf44;}catch(_0x1d2488){return this['logger']?.['error']('TypeScript\x20analysis\x20failed',{'file':_0xeb1397,'error':_0x1d2488['message']}),[{'file':_0xeb1397,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS[_0x2400ed(0x154)][_0x2400ed(0x15f)],'rule':_0x2400ed(0x135),'message':'Analysis\x20failed:\x20'+_0x1d2488[_0x2400ed(0x145)],'category':STATIC_ANALYSIS[_0x2400ed(0x163)]['SYNTAX']}];}}['getSyntacticDiagnostics'](_0x40afaf){const _0x2dd01c=a0_0x18fc,_0x405cba=[];if(_0x40afaf['parseDiagnostics']&&_0x40afaf['parseDiagnostics'][_0x2dd01c(0x15c)]>0x0)for(const _0x5b4df1 of _0x40afaf['parseDiagnostics']){_0x405cba[_0x2dd01c(0x161)](this['formatDiagnostic'](_0x5b4df1,_0x40afaf));}return _0x405cba;}async['getSemanticDiagnostics'](_0xa3bc4,_0x5dfbc8){const _0x11cc42=a0_0x18fc,_0x50500b=[];try{const _0x298bbd=a0_0x5a9d9d[_0x11cc42(0x158)](_0xa3bc4,_0x5dfbc8,a0_0x5a9d9d['ScriptTarget'][_0x11cc42(0x138)],!![]),_0x3beca9={'getSourceFile':_0x13fd96=>{if(_0x13fd96===_0xa3bc4)return _0x298bbd;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x30cec6[_0x11cc42(0x143)](_0xa3bc4),'getDirectories':()=>[],'fileExists':_0x4adf60=>_0x4adf60===_0xa3bc4,'readFile':_0x53880b=>{if(_0x53880b===_0xa3bc4)return _0x5dfbc8;return undefined;},'getCanonicalFileName':_0x558317=>_0x558317,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0xc87a52=a0_0x5a9d9d['createProgram']({'rootNames':[_0xa3bc4],'options':this[_0x11cc42(0x136)],'host':_0x3beca9}),_0x50635a=_0xc87a52[_0x11cc42(0x13d)](_0x298bbd),_0x41f97f=_0xc87a52[_0x11cc42(0x13e)](_0x298bbd);for(const _0x4f73e8 of[..._0x50635a,..._0x41f97f]){_0x50500b[_0x11cc42(0x161)](this[_0x11cc42(0x147)](_0x4f73e8,_0x298bbd));}}catch(_0x50a66f){this['logger']?.[_0x11cc42(0x159)](_0x11cc42(0x165),{'file':_0xa3bc4,'error':_0x50a66f[_0x11cc42(0x145)]});}return _0x50500b;}[a0_0x45c408(0x147)](_0x3cab28,_0x297070){const _0x1d67c0=a0_0x45c408;let _0x59b2e3=0x0,_0x395f1b=0x0;if(_0x3cab28['file']&&_0x3cab28['start']!==undefined){const _0x377514=_0x3cab28['file']['getLineAndCharacterOfPosition'](_0x3cab28['start']);_0x59b2e3=_0x377514['line']+0x1,_0x395f1b=_0x377514[_0x1d67c0(0x134)]+0x1;}else{if(_0x297070&&_0x3cab28[_0x1d67c0(0x14a)]!==undefined){const _0x2a35ca=_0x297070[_0x1d67c0(0x137)](_0x3cab28[_0x1d67c0(0x14a)]);_0x59b2e3=_0x2a35ca[_0x1d67c0(0x162)]+0x1,_0x395f1b=_0x2a35ca[_0x1d67c0(0x134)]+0x1;}}const _0x5a242f=a0_0x5a9d9d['flattenDiagnosticMessageText'](_0x3cab28['messageText'],'\x0a');let _0x503878;switch(_0x3cab28['category']){case a0_0x5a9d9d['DiagnosticCategory'][_0x1d67c0(0x141)]:_0x503878=STATIC_ANALYSIS[_0x1d67c0(0x154)][_0x1d67c0(0x15f)];break;case a0_0x5a9d9d[_0x1d67c0(0x15e)]['Warning']:_0x503878=STATIC_ANALYSIS['SEVERITY']['WARNING'];break;case a0_0x5a9d9d['DiagnosticCategory']['Message']:case a0_0x5a9d9d['DiagnosticCategory'][_0x1d67c0(0x157)]:_0x503878=STATIC_ANALYSIS[_0x1d67c0(0x154)][_0x1d67c0(0x14e)];break;default:_0x503878=STATIC_ANALYSIS[_0x1d67c0(0x154)][_0x1d67c0(0x15f)];}let _0x1c6ff0=STATIC_ANALYSIS['CATEGORY'][_0x1d67c0(0x144)];const _0x3a3885=_0x3cab28[_0x1d67c0(0x15d)];if(_0x3a3885>=0x7d0&&_0x3a3885<0xbb8)_0x1c6ff0=STATIC_ANALYSIS[_0x1d67c0(0x163)][_0x1d67c0(0x151)];else{if(_0x3a3885>=0x3e8&&_0x3a3885<0x7d0)_0x1c6ff0=STATIC_ANALYSIS['CATEGORY'][_0x1d67c0(0x144)];else _0x3a3885>=0x8fc&&_0x3a3885<0x960&&(_0x1c6ff0=STATIC_ANALYSIS[_0x1d67c0(0x163)]['IMPORT']);}const _0xd5a3b2=_0x5a242f[_0x1d67c0(0x150)]();if(_0xd5a3b2[_0x1d67c0(0x133)]('cannot\x20find\x20module')||_0xd5a3b2[_0x1d67c0(0x133)]('import')||_0xd5a3b2[_0x1d67c0(0x133)]('export'))_0x1c6ff0=STATIC_ANALYSIS[_0x1d67c0(0x163)]['IMPORT'];else(_0xd5a3b2['includes'](_0x1d67c0(0x148))||_0xd5a3b2['includes']('interface')||_0xd5a3b2[_0x1d67c0(0x133)](_0x1d67c0(0x15a)))&&(_0x1c6ff0=STATIC_ANALYSIS['CATEGORY'][_0x1d67c0(0x151)]);return{'file':_0x3cab28['file']?.[_0x1d67c0(0x14f)]||_0x297070?.[_0x1d67c0(0x14f)]||_0x1d67c0(0x13f),'line':_0x59b2e3,'column':_0x395f1b,'severity':_0x503878,'rule':'TS'+_0x3a3885,'message':_0x5a242f,'category':_0x1c6ff0,'fixable':![],'code':_0x3cab28['code']};}}function a0_0x1f1c(){const _0x2273e0=['rvnozxH0','Aw5JBhvKzxm','y2HHCMfJDgvY','yw5HBhL6zxiTzxjYB3i','y29TCgLSzxjpChrPB25Z','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','tgf0zxn0','zMLSDgvY','mZy1ndmYCgXdEgjk','ndjtEKvpuwC','nta1ntDHy09IB2y','z2v0u3LUDgfJDgLJrgLHz25VC3rPy3m','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','Dw5RBM93BG','mti2rhrpsNHI','rxjYB3i','mtreC0XtDMu','zgLYBMfTzq','u1Lovefy','BwvZC2fNzq','C2v2zxjPDhK','zM9YBwf0rgLHz25VC3rPyW','DhLWzq','tw9KDwXLuMvZB2X1DgLVBKTPBMq','C3rHCNq','Bg9Nz2vY','u2nYAxb0vgfYz2v0','nLjeEgnrza','su5gtW','zMLSzu5HBwu','Dg9mB3DLCKnHC2u','vfLqrq','ody1mdy0A1fIvMnP','vhLWzvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','u0vwrvjjvfK','nJbTq3HNrLa','ndu0ntK4AvbpsLPu','u3vNz2vZDgLVBG','y3jLyxrLu291CMnLrMLSzq','zgvIDwC','y2XHC3m','odiXntbete1jDKu','BgvUz3rO','y29Kzq','rgLHz25VC3rPy0nHDgvNB3j5','rvjst1i','mxjuzujqrG','ChvZAa','BgLUzq','q0furuDpuLK','mJu1odG2ngrQAfnWua','u2vTyw50AwmGyw5HBhLZAxmGzw5JB3vUDgvYzwqGzxjYB3i','v0fstKLorW','mtm2ode1q2LhAKDJ'];a0_0x1f1c=function(){return _0x2273e0;};return a0_0x1f1c();}export default TypeScriptAnalyzer;
1
+ (function(_0x22264c,_0x50c3ca){const _0x11305a=a0_0x5db8,_0x9ad5e0=_0x22264c();while(!![]){try{const _0x3828e3=parseInt(_0x11305a(0x197))/0x1+parseInt(_0x11305a(0x176))/0x2*(parseInt(_0x11305a(0x172))/0x3)+-parseInt(_0x11305a(0x19a))/0x4+-parseInt(_0x11305a(0x183))/0x5+-parseInt(_0x11305a(0x186))/0x6*(-parseInt(_0x11305a(0x18a))/0x7)+-parseInt(_0x11305a(0x17a))/0x8+-parseInt(_0x11305a(0x170))/0x9*(parseInt(_0x11305a(0x171))/0xa);if(_0x3828e3===_0x50c3ca)break;else _0x9ad5e0['push'](_0x9ad5e0['shift']());}catch(_0x1cc1f7){_0x9ad5e0['push'](_0x9ad5e0['shift']());}}}(a0_0x3ce9,0x890fe));function a0_0x5db8(_0x46ce6c,_0x1314bc){_0x46ce6c=_0x46ce6c-0x16e;const _0x3ce9f9=a0_0x3ce9();let _0x5db8e7=_0x3ce9f9[_0x46ce6c];if(a0_0x5db8['rJQbME']===undefined){var _0x28f3b5=function(_0x2529fa){const _0x5cbd58='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14ce2f='',_0x1481b5='';for(let _0x5e4e4a=0x0,_0x42ffbb,_0x28989f,_0x4b216e=0x0;_0x28989f=_0x2529fa['charAt'](_0x4b216e++);~_0x28989f&&(_0x42ffbb=_0x5e4e4a%0x4?_0x42ffbb*0x40+_0x28989f:_0x28989f,_0x5e4e4a++%0x4)?_0x14ce2f+=String['fromCharCode'](0xff&_0x42ffbb>>(-0x2*_0x5e4e4a&0x6)):0x0){_0x28989f=_0x5cbd58['indexOf'](_0x28989f);}for(let _0x4d2b87=0x0,_0x154e34=_0x14ce2f['length'];_0x4d2b87<_0x154e34;_0x4d2b87++){_0x1481b5+='%'+('00'+_0x14ce2f['charCodeAt'](_0x4d2b87)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1481b5);};a0_0x5db8['fZhywc']=_0x28f3b5,a0_0x5db8['tFHFwe']={},a0_0x5db8['rJQbME']=!![];}const _0x4e20c7=_0x3ce9f9[0x0],_0xec0c9d=_0x46ce6c+_0x4e20c7,_0x2e4067=a0_0x5db8['tFHFwe'][_0xec0c9d];return!_0x2e4067?(_0x5db8e7=a0_0x5db8['fZhywc'](_0x5db8e7),a0_0x5db8['tFHFwe'][_0xec0c9d]=_0x5db8e7):_0x5db8e7=_0x2e4067,_0x5db8e7;}import a0_0x14ce2f from'typescript';function a0_0x3ce9(){const _0x556b98=['BwvZC2fNzvrLEhq','CgfYC2veAwfNBM9ZDgLJCW','z2v0tgLUzufUzenOyxjHy3rLCK9Mug9ZAxrPB24','rxjYB3i','rgLHz25VC3rPy0nHDgvNB3j5','q0furuDpuLK','vfLqrq','mZeWndyZmfHWDNDdra','zxjYB3i','Bg9Nz2vY','ndu0oti2nLn0vvLpwq','Dw5RBM93BG','zM9YBwf0rgLHz25VC3rPyW','DhLWzq','n3fMCgjwuW','BgvUz3rO','BwvZC2fNzq','C2v2zxjPDhK','y2f0zwDVCNK','Aw5JBhvKzxm','zgLYBMfTzq','u2nYAxb0vgfYz2v0','y2HHCMfJDgvY','rvnozxH0','zgvIDwC','u0vwrvjjvfK','Aw50zxjMywnL','nJa4mZi4EfnoCe1h','tw9KDwXLuMvZB2X1DgLVBKTPBMq','y2fUBM90igzPBMqGBw9KDwXL','mtuWntmXmKTgzePkwG','u2vTyw50AwmGyw5HBhLZAxmGzw5JB3vUDgvYzwqGzxjYB3i','zMLSzu5HBwu','y3jLyxrLu291CMnLrMLSzq','su1qt1ju','zMLSDgvY','rvjst1i','zMLSzq','y29TCgLSzxjpChrPB25Z','uMvHy3q','mZi0ntq5C3biC2Tm','mJbTshf2uLq','mtaYnKjUCwvJDG','vhLWzvnJCMLWDcbHBMfSExnPCYbJB21WBgv0zwq','zMXHDhrLBKrPywDUB3n0AwnnzxnZywDLvgv4Da','z2v0u2vTyw50AwneAwfNBM9ZDgLJCW','nJa4mNb0su5tEa','tgf0zxn0','ChvZAa','C3rHCNq','nJiWnJiZmMnyrg9fuW','v0fstKLorW'];a0_0x3ce9=function(){return _0x556b98;};return a0_0x3ce9();}import a0_0x1481b5 from'path';import{STATIC_ANALYSIS}from'../utilities/constants.js';class TypeScriptAnalyzer{constructor(_0x5e4e4a=null){const _0x3a5a2d=a0_0x5db8;this[_0x3a5a2d(0x185)]=_0x5e4e4a,this[_0x3a5a2d(0x16e)]={'noEmit':!![],'jsx':a0_0x14ce2f['JsxEmit'][_0x3a5a2d(0x16f)],'target':a0_0x14ce2f[_0x3a5a2d(0x191)][_0x3a5a2d(0x177)],'module':a0_0x14ce2f['ModuleKind'][_0x3a5a2d(0x193)],'moduleResolution':a0_0x14ce2f[_0x3a5a2d(0x198)]['NodeJs'],'esModuleInterop':!![],'skipLibCheck':!![],'strict':!![],'noImplicitAny':!![],'strictNullChecks':!![],'strictFunctionTypes':!![],'allowJs':![]};}async['analyze'](_0x42ffbb,_0x28989f,_0x4b216e={}){const _0x5a6fda=a0_0x5db8;try{const _0x4d2b87=[],_0x154e34=a0_0x14ce2f[_0x5a6fda(0x19d)](_0x42ffbb,_0x28989f,a0_0x14ce2f['ScriptTarget']['Latest'],!![]),_0xf69970=this['getSyntacticDiagnostics'](_0x154e34);_0x4d2b87['push'](..._0xf69970);const _0x84e9ef=await this[_0x5a6fda(0x175)](_0x42ffbb,_0x28989f);return _0x4d2b87[_0x5a6fda(0x178)](..._0x84e9ef),this[_0x5a6fda(0x185)]?.[_0x5a6fda(0x194)](_0x5a6fda(0x173),{'file':_0x42ffbb,'totalDiagnostics':_0x4d2b87['length'],'errors':_0x4d2b87['filter'](_0x4ff6b8=>_0x4ff6b8[_0x5a6fda(0x18d)]===STATIC_ANALYSIS['SEVERITY']['ERROR'])[_0x5a6fda(0x18b)],'warnings':_0x4d2b87[_0x5a6fda(0x19f)](_0x488679=>_0x488679['severity']===STATIC_ANALYSIS[_0x5a6fda(0x195)][_0x5a6fda(0x17b)])['length']}),_0x4d2b87;}catch(_0x9ea159){return this[_0x5a6fda(0x185)]?.[_0x5a6fda(0x184)]('TypeScript\x20analysis\x20failed',{'file':_0x42ffbb,'error':_0x9ea159['message']}),[{'file':_0x42ffbb,'line':0x0,'column':0x0,'severity':STATIC_ANALYSIS['SEVERITY']['ERROR'],'rule':'analyzer-error','message':'Analysis\x20failed:\x20'+_0x9ea159[_0x5a6fda(0x18c)],'category':STATIC_ANALYSIS['CATEGORY']['SYNTAX']}];}}['getSyntacticDiagnostics'](_0x31deb4){const _0x49f1f6=a0_0x5db8,_0x2cc56c=[];if(_0x31deb4[_0x49f1f6(0x17d)]&&_0x31deb4[_0x49f1f6(0x17d)]['length']>0x0)for(const _0x46a78d of _0x31deb4['parseDiagnostics']){_0x2cc56c[_0x49f1f6(0x178)](this[_0x49f1f6(0x188)](_0x46a78d,_0x31deb4));}return _0x2cc56c;}async['getSemanticDiagnostics'](_0x2bae1c,_0x85758c){const _0x5555b9=a0_0x5db8,_0x516a7e=[];try{const _0x31ee00=a0_0x14ce2f['createSourceFile'](_0x2bae1c,_0x85758c,a0_0x14ce2f[_0x5555b9(0x191)][_0x5555b9(0x177)],!![]),_0x442c04={'getSourceFile':_0x385693=>{if(_0x385693===_0x2bae1c)return _0x31ee00;return undefined;},'getDefaultLibFileName':()=>'lib.d.ts','writeFile':()=>{},'getCurrentDirectory':()=>a0_0x1481b5[_0x5555b9(0x190)](_0x2bae1c),'getDirectories':()=>[],'fileExists':_0x5c58fa=>_0x5c58fa===_0x2bae1c,'readFile':_0x48ecf0=>{if(_0x48ecf0===_0x2bae1c)return _0x85758c;return undefined;},'getCanonicalFileName':_0x59f452=>_0x59f452,'useCaseSensitiveFileNames':()=>!![],'getNewLine':()=>'\x0a'},_0x4110c7=a0_0x14ce2f['createProgram']({'rootNames':[_0x2bae1c],'options':this['compilerOptions'],'host':_0x442c04}),_0x5a4350=_0x4110c7['getSyntacticDiagnostics'](_0x31ee00),_0x200d3c=_0x4110c7[_0x5555b9(0x175)](_0x31ee00);for(const _0x520ae7 of[..._0x5a4350,..._0x200d3c]){_0x516a7e[_0x5555b9(0x178)](this['formatDiagnostic'](_0x520ae7,_0x31ee00));}}catch(_0x4a2319){this[_0x5555b9(0x185)]?.[_0x5555b9(0x194)](_0x5555b9(0x19b),{'file':_0x2bae1c,'error':_0x4a2319[_0x5555b9(0x18c)]});}return _0x516a7e;}['formatDiagnostic'](_0x458b55,_0x364eb1){const _0x1ee555=a0_0x5db8;let _0x26c279=0x0,_0x214c56=0x0;if(_0x458b55[_0x1ee555(0x1a1)]&&_0x458b55[_0x1ee555(0x179)]!==undefined){const _0x2d0dce=_0x458b55[_0x1ee555(0x1a1)][_0x1ee555(0x17e)](_0x458b55['start']);_0x26c279=_0x2d0dce['line']+0x1,_0x214c56=_0x2d0dce[_0x1ee555(0x192)]+0x1;}else{if(_0x364eb1&&_0x458b55[_0x1ee555(0x179)]!==undefined){const _0x15f3cf=_0x364eb1[_0x1ee555(0x17e)](_0x458b55['start']);_0x26c279=_0x15f3cf['line']+0x1,_0x214c56=_0x15f3cf[_0x1ee555(0x192)]+0x1;}}const _0x16e2db=a0_0x14ce2f[_0x1ee555(0x174)](_0x458b55[_0x1ee555(0x17c)],'\x0a');let _0x1a86f9;switch(_0x458b55[_0x1ee555(0x18e)]){case a0_0x14ce2f['DiagnosticCategory'][_0x1ee555(0x17f)]:_0x1a86f9=STATIC_ANALYSIS['SEVERITY'][_0x1ee555(0x1a0)];break;case a0_0x14ce2f['DiagnosticCategory']['Warning']:_0x1a86f9=STATIC_ANALYSIS[_0x1ee555(0x195)]['WARNING'];break;case a0_0x14ce2f[_0x1ee555(0x180)]['Message']:case a0_0x14ce2f['DiagnosticCategory']['Suggestion']:_0x1a86f9=STATIC_ANALYSIS[_0x1ee555(0x195)]['INFO'];break;default:_0x1a86f9=STATIC_ANALYSIS['SEVERITY'][_0x1ee555(0x1a0)];}let _0x123884=STATIC_ANALYSIS[_0x1ee555(0x181)]['SYNTAX'];const _0x383fe3=_0x458b55['code'];if(_0x383fe3>=0x7d0&&_0x383fe3<0xbb8)_0x123884=STATIC_ANALYSIS['CATEGORY']['TYPE'];else{if(_0x383fe3>=0x3e8&&_0x383fe3<0x7d0)_0x123884=STATIC_ANALYSIS['CATEGORY']['SYNTAX'];else _0x383fe3>=0x8fc&&_0x383fe3<0x960&&(_0x123884=STATIC_ANALYSIS['CATEGORY'][_0x1ee555(0x19e)]);}const _0x5da5d1=_0x16e2db['toLowerCase']();if(_0x5da5d1['includes'](_0x1ee555(0x199))||_0x5da5d1[_0x1ee555(0x18f)]('import')||_0x5da5d1[_0x1ee555(0x18f)]('export'))_0x123884=STATIC_ANALYSIS['CATEGORY']['IMPORT'];else(_0x5da5d1['includes'](_0x1ee555(0x189))||_0x5da5d1['includes'](_0x1ee555(0x196))||_0x5da5d1[_0x1ee555(0x18f)]('class'))&&(_0x123884=STATIC_ANALYSIS['CATEGORY'][_0x1ee555(0x182)]);return{'file':_0x458b55['file']?.[_0x1ee555(0x19c)]||_0x364eb1?.['fileName']||_0x1ee555(0x187),'line':_0x26c279,'column':_0x214c56,'severity':_0x1a86f9,'rule':'TS'+_0x383fe3,'message':_0x16e2db,'category':_0x123884,'fixable':![],'code':_0x458b55['code']};}}export default TypeScriptAnalyzer;
@@ -1 +1 @@
1
- const a0_0x5f464d=a0_0xc339;(function(_0x21858d,_0x57674c){const _0xa5a118=a0_0xc339,_0x3bf548=_0x21858d();while(!![]){try{const _0x5eb8a6=-parseInt(_0xa5a118(0x117))/0x1*(-parseInt(_0xa5a118(0xcf))/0x2)+-parseInt(_0xa5a118(0xf2))/0x3+parseInt(_0xa5a118(0xf5))/0x4+parseInt(_0xa5a118(0xe4))/0x5+-parseInt(_0xa5a118(0xe3))/0x6+parseInt(_0xa5a118(0x119))/0x7*(-parseInt(_0xa5a118(0x107))/0x8)+parseInt(_0xa5a118(0x10a))/0x9;if(_0x5eb8a6===_0x57674c)break;else _0x3bf548['push'](_0x3bf548['shift']());}catch(_0x2feac7){_0x3bf548['push'](_0x3bf548['shift']());}}}(a0_0x4e3e,0x60fc3));function a0_0x4e3e(){const _0x369166=['Bg9N','mY4GvgvZDcb0Ag9YB3vNAgX5','CM91BMq','zNvUy3rPB24','BgvUz3rO','Dhj1BMnHDgvdB2rL','DMfY','y2XVBMuT','C2L6zq','z2vUzxjHDgvby3rPB25HyMXLu3rLChm','Bg93','lcbHBMqGCMvKDwnLignVzguGC2L6zq','mty0mZGYrKD3vMLP','Bwv0CMLJCW','z2vUzxjHDgvszwfZB25PBMC','mJa5nZiYmerxtePLwq','ChvZAa','zw5KtgLUzq','lIbuAgLZigLZigeGAgLNAc1PBxbHy3qGCMvMywn0B3jPBMCGB3bWB3j0Dw5PDhK','zgvZy3jPyMvczw5LzML0CW','mI4Gtw92zsb0AguGzhvWBgLJyxrLzcbJB2rLigLUDg8GDgHLig5LDYbTB2r1Bgu','C2XPy2u','y2HHCKf0','y2fSy3vSyxrLsw1Wywn0u2nVCMu','ns4GvgvZDcb0BYbLBNn1CMuGyMvOyxzPB3iGAxmGChjLC2vYDMvK','mY4GvxbKyxrLigfSBcbPBNn0yw5JzxmGDg8GDxnLihrOzsbUzxCGy2XHC3m','lcbYzxn1BhrPBMCGAw4G','ihrPBwvZ','BwfW','CMvWBgfJzq','C3vNz2vZDe5HBwu','yMXVy2TZ','Dg9gAxHLza','og1HEenQra','C29Tzq','Aw1Wywn0u2nVCMu','mtiZndK2mKvsDuvrBG','D2HPBgu','yw5HBhL6zunSB25LCW','uMvMywn0B3jPBMCGDg8G','Dg9vChbLCKnHC2u','zxH0CMfJDc1TB2r1Bgu','z2vUzxjHDgvszwzHy3rVCMLUz0fKDMLJzq','Bwf0y2G','mI4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGDgHLigv4DhjHy3rLzcb2zxjZAw9U','y29UzMLKzw5Jzq','DhLWzq','cI4UlIaODhj1BMnHDgvKkq','rNvUy3rPB24','ndyWmdLtu1LiB3K','ms4Gq3jLyxrLigeGBMv3ignSyxnZihrVigvUy2fWC3vSyxrLihrOAxmGzNvUy3rPB25HBgL0Eq','mJK5oduZnfvIvvDQta','y29UzMLN','zMLSzxndB3zLCMvK','Aw5JBhvKzxm','mtHivw1pu1y','q2XHC3m','zwXZzq','Bgv0','ihDVDwXKigLTChjVDMuGBwfPBNrHAw5HyMLSAxr5','ms4Gq3jLyxrLigeGBMv3ig1VzhvSzs9MAwXLigzVCIb0AgLZihnOyxjLzcbMDw5JDgLVBMfSAxr5','ms4Gq3jLyxrLigeGBMv3igz1BMn0Aw9Uig5HBwvKicC','nc4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGy2fSBhmGDg8GDgHLig5LDYbMDw5JDgLVBG','BwLU','yxzLCMfNzuXPBMvdB3vUDa','C29YDa','zgv0zxjTAw5LuhjPB3jPDhK','y29Kzq','mY4GrxHWB3j0ihrOzsbUzwnLC3nHCNKGzNvUy3rPB25Zl2nSyxnZzxm','zxH0CMfJDc1JBgfZCW','zxH0CMfJDgvKrNvUy3rPB24','y2fSy3vSyxrLtwv0CMLJCW','C3bSAxq','ns4GvxbKyxrLigfUEsbIDwLSzcbJB25MAwD1CMf0Aw9UCYbPzIbUzwvKzwq','BwvKAxvT','mZqZnZqWnMzUv2jyzq','mtG4oduYmgvYrfj0vq','zw50CMLLCW'];a0_0x4e3e=function(){return _0x369166;};return a0_0x4e3e();}function a0_0xc339(_0x231186,_0x196245){_0x231186=_0x231186-0xce;const _0x4e3eee=a0_0x4e3e();let _0xc339c0=_0x4e3eee[_0x231186];if(a0_0xc339['nSzTBl']===undefined){var _0x1411bd=function(_0x18cddf){const _0x4940dd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b9e3f='',_0x558bbb='';for(let _0x3fc4af=0x0,_0x1337d6,_0x45bc69,_0x9c44c=0x0;_0x45bc69=_0x18cddf['charAt'](_0x9c44c++);~_0x45bc69&&(_0x1337d6=_0x3fc4af%0x4?_0x1337d6*0x40+_0x45bc69:_0x45bc69,_0x3fc4af++%0x4)?_0x1b9e3f+=String['fromCharCode'](0xff&_0x1337d6>>(-0x2*_0x3fc4af&0x6)):0x0){_0x45bc69=_0x4940dd['indexOf'](_0x45bc69);}for(let _0x33880c=0x0,_0x3aadc1=_0x1b9e3f['length'];_0x33880c<_0x3aadc1;_0x33880c++){_0x558bbb+='%'+('00'+_0x1b9e3f['charCodeAt'](_0x33880c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x558bbb);};a0_0xc339['fCMlNM']=_0x1411bd,a0_0xc339['VziezK']={},a0_0xc339['nSzTBl']=!![];}const _0x2f2d6a=_0x4e3eee[0x0],_0x30048a=_0x231186+_0x2f2d6a,_0x3086b1=a0_0xc339['VziezK'][_0x30048a];return!_0x3086b1?(_0xc339c0=a0_0xc339['fCMlNM'](_0xc339c0),a0_0xc339['VziezK'][_0x30048a]=_0xc339c0):_0xc339c0=_0x3086b1,_0xc339c0;}export class RefactoringAnalyzer{constructor(_0x1b9e3f){const _0x219637=a0_0xc339;this[_0x219637(0x11a)]=_0x1b9e3f;}[a0_0x5f464d(0x10c)](_0x558bbb){const _0xffd87a=a0_0x5f464d;return console[_0xffd87a(0xe6)]('Analyzing\x20clones\x20for\x20refactoring\x20opportunities...'),_0x558bbb[_0xffd87a(0x102)]((_0x3fc4af,_0x1337d6)=>{const _0x1b33e8=_0xffd87a,_0x45bc69=this[_0x1b33e8(0xdf)](_0x3fc4af),_0x9c44c=this[_0x1b33e8(0x110)](_0x3fc4af,_0x45bc69);return{'id':_0x1b33e8(0xed)+(_0x1337d6+0x1),'type':_0x3fc4af['type'],'confidence':_0x3fc4af['confidence'],'instances':_0x3fc4af['blocks'][_0x1b33e8(0x102)](_0x33880c=>({'file':_0x33880c['file'],'startLine':_0x33880c['startLine'],'endLine':_0x33880c[_0x1b33e8(0xf7)],'code':this['truncateCode'](_0x33880c['code']),'fullCode':_0x33880c[_0x1b33e8(0xdb)],'blockType':_0x33880c['type']})),'metrics':_0x45bc69,'refactoringAdvice':_0x9c44c};})['sort']((_0x3aadc1,_0x54ae4b)=>_0x54ae4b[_0xffd87a(0xf3)][_0xffd87a(0x109)]-_0x3aadc1['metrics'][_0xffd87a(0x109)]);}[a0_0x5f464d(0xdf)](_0x510e1b){const _0xe2119f=a0_0x5f464d,_0x1d9032=_0x510e1b[_0xe2119f(0x105)],_0xe45863=_0x510e1b['tokenCount'],_0x322bcc=this[_0xe2119f(0xd8)](_0x1d9032),_0x5c7d92=_0x1d9032[_0xe2119f(0xea)],_0x3bea3a=this['calculateImpactScore'](_0xe45863,_0x322bcc,_0x5c7d92,_0x510e1b[_0xe2119f(0x113)]),_0x216624=_0x322bcc*(_0x5c7d92-0x1),_0x4b65b3=_0xe45863*(_0x5c7d92-0x1);return{'tokenCount':_0xe45863,'lineCount':_0x322bcc,'instanceCount':_0x5c7d92,'duplicatedLines':_0x216624,'duplicatedTokens':_0x4b65b3,'impactScore':parseFloat(_0x3bea3a[_0xe2119f(0x106)](0x2)),'filesCovered':new Set(_0x1d9032['map'](_0x2a0fe4=>_0x2a0fe4['file']))[_0xe2119f(0xee)]};}[a0_0x5f464d(0xfd)](_0x29c588,_0x29f5a2,_0x3e5196,_0x4880a7){const _0x5803c4=Math['log10'](_0x29c588+0x1)*0x2,_0x467f69=Math['log2'](_0x3e5196+0x1)*0x3,_0x349525=_0x4880a7*0x2,_0x4e9992=Math['min'](_0x29f5a2/0xa,0x3);return _0x5803c4+_0x467f69+_0x349525+_0x4e9992;}[a0_0x5f464d(0x110)](_0x4e5784,_0x56ac57){const _0x2973ef=a0_0x5f464d,_0x1fc323=this['determineRefactoringStrategy'](_0x4e5784,_0x56ac57),_0x180e41=this[_0x2973ef(0xda)](_0x56ac57),_0x482ddd=this[_0x2973ef(0x104)](_0x4e5784),_0x511ec8=this[_0x2973ef(0xf4)](_0x4e5784,_0x56ac57,_0x1fc323),_0x304f49=this['estimateEffort'](_0x56ac57,_0x1fc323),_0x12f61f=this[_0x2973ef(0xf9)](_0x56ac57);return{'priority':_0x180e41,'strategy':_0x1fc323,'suggestedName':_0x482ddd,'reasoning':_0x511ec8,'estimatedEffort':_0x304f49,'benefits':_0x12f61f,'actionableSteps':this[_0x2973ef(0xef)](_0x1fc323,_0x482ddd,_0x56ac57)};}['determineRefactoringStrategy'](_0x20abdc,_0x357e0a){const _0x30e20b=a0_0x5f464d,{tokenCount:_0x25e90f,lineCount:_0x2e9e93,instanceCount:_0x431f86,filesCovered:_0x14f591}=_0x357e0a,_0x4e1b28=_0x20abdc['blocks']['map'](_0x3858f8=>_0x3858f8[_0x30e20b(0x114)]),_0x3859ba=_0x4e1b28[_0x30e20b(0x108)](_0x1a01ab=>_0x1a01ab[_0x30e20b(0xce)](_0x30e20b(0x116))||_0x1a01ab['includes']('Method')),_0x9d06a4=_0x4e1b28[_0x30e20b(0x108)](_0x2fcbbf=>_0x2fcbbf[_0x30e20b(0xce)](_0x30e20b(0xd0)));if(_0x9d06a4&&_0x2e9e93>0x32)return _0x30e20b(0x10f);else{if(_0x14f591>0x2&&_0x25e90f>0x64)return'extract-module';else{if(_0x3859ba||_0x2e9e93>=0xa&&_0x2e9e93<=0x32)return'extract-function';else{if(_0x2e9e93>0x32)return _0x30e20b(0xdd);else return _0x2e9e93<0xa?'extract-constant-or-utility':'extract-function';}}}}[a0_0x5f464d(0xda)](_0x2e4b3c){const _0x12655f=a0_0x5f464d,{impactScore:_0x4466eb}=_0x2e4b3c;if(_0x4466eb>=0x8)return'high';if(_0x4466eb>=0x5)return'medium';return _0x12655f(0xf0);}['suggestName'](_0x2e38cd){const _0x4acad3=a0_0x5f464d,_0x37db8e=_0x2e38cd['blocks'][_0x4acad3(0x102)](_0x4ac2ae=>_0x4ac2ae['code'])['join']('\x20'),_0x3f8303=_0x37db8e[_0x4acad3(0x111)](/[a-zA-Z_$][a-zA-Z0-9_$]*/g)||[],_0x5b5907={};_0x3f8303['forEach'](_0x3ec536=>{const _0x3a5a6e=_0x4acad3;if(['const',_0x3a5a6e(0xd2),_0x3a5a6e(0xec),_0x3a5a6e(0xe9),'return','if',_0x3a5a6e(0xd1),'for',_0x3a5a6e(0x10b)]['includes'](_0x3ec536))return;_0x5b5907[_0x3ec536]=(_0x5b5907[_0x3ec536]||0x0)+0x1;});const _0x178244=Object[_0x4acad3(0xe5)](_0x5b5907)[_0x4acad3(0xd9)]((_0x58ab08,_0x4ebee9)=>_0x4ebee9[0x1]-_0x58ab08[0x1])[_0x4acad3(0xfb)](0x0,0x3);if(_0x178244['length']>0x0){const _0x26f024=_0x178244['map'](([_0x1939d9])=>_0x1939d9);return this['createFunctionName'](_0x26f024);}return _0x4acad3(0xde);}['createFunctionName'](_0x14e157){const _0x382034=a0_0x5f464d;if(_0x14e157['length']===0x0)return'extractedFunction';return _0x14e157[0x0]+_0x14e157[_0x382034(0xfb)](0x1)['map'](_0x56d79a=>_0x56d79a[_0x382034(0xfc)](0x0)[_0x382034(0x10e)]()+_0x56d79a[_0x382034(0xfb)](0x1))['join']('');}[a0_0x5f464d(0xf4)](_0xf5bfc6,_0x145d91,_0x3a675d){const _0x4a5b66=a0_0x5f464d,{instanceCount:_0x508acb,duplicatedLines:_0x5157d1,filesCovered:_0x52df2e}=_0x145d91;let _0x79cd2='This\x20'+_0xf5bfc6[_0x4a5b66(0x114)]+'\x20code\x20pattern\x20appears\x20'+_0x508acb+_0x4a5b66(0x101);return _0x52df2e>0x1&&(_0x79cd2+='\x20across\x20'+_0x52df2e+'\x20different\x20files'),_0x79cd2+=_0x4a5b66(0x100)+_0x5157d1+'\x20duplicated\x20lines.\x20',_0x79cd2+=_0x4a5b66(0x10d)+_0x3a675d[_0x4a5b66(0x103)](/-/g,'\x20')+_0x4a5b66(0xd3),_0x508acb>=0x3&&(_0x79cd2+=', reduce bugs from inconsistent changes'),_0x79cd2+=_0x4a5b66(0xf1),_0x145d91[_0x4a5b66(0x109)]>=0x8&&(_0x79cd2+=_0x4a5b66(0xf8)),_0x79cd2+'.';}['estimateEffort'](_0x31b4fc,_0x5b57e6){const _0x3675e1=a0_0x5f464d,{lineCount:_0x2be4ff,instanceCount:_0x2faae3,filesCovered:_0x4f3e8d}=_0x31b4fc;let _0x3d7bcf=0x0;_0x3d7bcf+=Math[_0x3675e1(0xd7)](_0x2be4ff/0xa,0x5),_0x3d7bcf+=_0x2faae3*0.5,_0x3d7bcf+=_0x4f3e8d*0.5;if(_0x5b57e6===_0x3675e1(0x10f))_0x3d7bcf+=0x3;else{if(_0x5b57e6===_0x3675e1(0xdd))_0x3d7bcf+=0x2;else _0x5b57e6==='extract-function'&&(_0x3d7bcf+=0x1);}if(_0x3d7bcf<=0x3)return'low';if(_0x3d7bcf<=0x7)return _0x3675e1(0xe2);return'high';}['describeBenefits'](_0x1fb001){const _0x18947f=a0_0x5f464d,_0x22e083=[];return _0x22e083[_0x18947f(0xf6)]('Eliminate\x20'+_0x1fb001['duplicatedLines']+'\x20duplicated\x20lines\x20of\x20code'),_0x22e083['push']('Improve\x20maintainability\x20by\x20centralizing\x20logic\x20in\x20one\x20place'),_0x1fb001['instanceCount']>=0x3&&_0x22e083[_0x18947f(0xf6)]('Reduce\x20risk\x20of\x20inconsistent\x20changes\x20across\x20'+_0x1fb001['instanceCount']+'\x20locations'),_0x1fb001[_0x18947f(0x11b)]>0x2&&_0x22e083[_0x18947f(0xf6)]('Improve\x20code\x20organization\x20across\x20'+_0x1fb001['filesCovered']+'\x20files'),_0x22e083[_0x18947f(0xf6)]('Make\x20future\x20changes\x20easier\x20and\x20less\x20error-prone'),_0x22e083;}[a0_0x5f464d(0xef)](_0x588513,_0x3f18ed,_0xc26603){const _0xa0dbb6=a0_0x5f464d,_0x48a82a=[];switch(_0x588513){case'extract-function':_0x48a82a['push'](_0xa0dbb6(0xd5)+_0x3f18ed+'\x27'),_0x48a82a[_0xa0dbb6(0xf6)]('2.\x20Move\x20the\x20duplicated\x20logic\x20into\x20this\x20function'),_0x48a82a['push']('3. Identify parameters needed from the surrounding context'),_0x48a82a[_0xa0dbb6(0xf6)](_0xa0dbb6(0xd6)),_0x48a82a[_0xa0dbb6(0xf6)](_0xa0dbb6(0xfe));break;case'extract-class':_0x48a82a['push'](_0xa0dbb6(0x118)),_0x48a82a[_0xa0dbb6(0xf6)]('2.\x20Move\x20related\x20methods\x20and\x20properties\x20into\x20the\x20class'),_0x48a82a['push'](_0xa0dbb6(0xff)),_0x48a82a[_0xa0dbb6(0xf6)]('4.\x20Consider\x20dependency\x20injection\x20for\x20better\x20testability');break;case _0xa0dbb6(0x10f):_0x48a82a['push'](_0xa0dbb6(0xd4)),_0x48a82a['push'](_0xa0dbb6(0xfa)),_0x48a82a[_0xa0dbb6(0xf6)](_0xa0dbb6(0xdc)),_0x48a82a['push']('4. Update all files to import from the new module'),_0x48a82a[_0xa0dbb6(0xf6)](_0xa0dbb6(0xe1));break;default:_0x48a82a[_0xa0dbb6(0xf6)]('1.\x20Extract\x20the\x20duplicated\x20code\x20using\x20'+_0x588513['replace'](/-/g,'\x20')),_0x48a82a['push'](_0xa0dbb6(0x112)),_0x48a82a[_0xa0dbb6(0xf6)](_0xa0dbb6(0xe7));}return _0x48a82a;}[a0_0x5f464d(0xeb)](_0x2c47f8,_0x3a4b2f=0xa){const _0x1602ae=a0_0x5f464d,_0x3da252=_0x2c47f8[_0x1602ae(0xe0)]('\x0a');if(_0x3da252['length']<=_0x3a4b2f)return _0x2c47f8;return _0x3da252[_0x1602ae(0xfb)](0x0,_0x3a4b2f)['join']('\x0a')+_0x1602ae(0x115);}[a0_0x5f464d(0xd8)](_0x5efd72){const _0x2638fb=a0_0x5f464d,_0x306769=_0x5efd72['reduce']((_0x3d4208,_0x4b205d)=>_0x3d4208+(_0x4b205d[_0x2638fb(0xf7)]-_0x4b205d['startLine']+0x1),0x0);return Math[_0x2638fb(0xe8)](_0x306769/_0x5efd72['length']);}}
1
+ const a0_0x40a274=a0_0x4123;function a0_0x3028(){const _0x45ff77=['Aw5JBhvKzxm','nZmYmff6wwPMAW','zhvWBgLJyxrLzeXPBMvZ','y29Kzq','CMvKDwnL','zMLSzq','mJq1mZeXoe9etfLUAq','Aw1Wywn0u2nVCMu','ChvZAa','igzPBgvZ','zxH0CMfJDc1TB2r1Bgu','z2vUzxjHDgvszwzHy3rVCMLUz0fKDMLJzq','nc4Gq29UC2LKzxiGzgvWzw5Kzw5JEsbPBMPLy3rPB24GzM9YigjLDhrLCIb0zxn0ywjPBgL0Eq','C3vNz2vZDe5HBwu','y2fSy3vSyxrLsw1Wywn0u2nVCMu','sw1WCM92zsbJB2rLig9Yz2fUAxPHDgLVBIbHy3jVC3mG','twv0Ag9K','Bg9Nmta','y2HHCKf0','zM9Y','AM9PBG','z2vUzxjHDgvby3rPB25HyMXLu3rLChm','Dhj1BMnHDgvdB2rL','Bg9N','BwfW','zw5KtgLUzq','zxH0CMfJDgvKrNvUy3rPB24','mte0nda5mvH4y0jAwq','uMvMywn0B3jPBMCGDg8G','CMv0DxjU','mJeYoty3Ew9pDur6','igXVy2f0Aw9UCW','rNvUy3rPB24','zgv0zxjTAw5LuhjPB3jPDhK','C2L6zq','C2XPy2u','BgvUz3rO','ofvMAvDvCG','C29YDa','Bg93','igr1CgXPy2f0zwqGBgLUzxmGB2yGy29Kzq','ignVzguGCgf0DgvYBIbHChbLyxjZia','ms4GrxH0CMfJDcb0AguGzhvWBgLJyxrLzcbJB2rLihvZAw5Nia','Aw5ZDgfUy2vdB3vUDa','AgLNAa','nJCXnZCXmgngze1rua','Dg9Rzw5dB3vUDa','zgvZy3jPyMvczw5LzML0CW','BwLU','C3rHCNrmAw5L','ns4GvgvZDcb0BYbLBNn1CMuGyMvOyxzPB3iGAxmGChjLC2vYDMvK','zxH0CMfJDc1MDw5JDgLVBG','twfRzsbMDxr1CMuGy2HHBMDLCYbLyxnPzxiGyw5KigXLC3mGzxjYB3iTChjVBMu','zxn0Aw1HDgvfzMzVCNq','C29Tzq','ihrPBwvZ','y29UzMLKzw5Jzq','DhLWzq','nc4GuMvWBgfJzsbHBgWGAw5ZDgfUy2vZihDPDgGGy2fSBhmGDg8GDgHLig5LDYbMDw5JDgLVBG','yxzLCMfNzuXPBMvdB3vUDa','ms4Gq3jLyxrLigeGBMv3ignSyxnZihrVigvUy2fWC3vSyxrLihrOAxmGzNvUy3rPB25HBgL0Eq','y2fSy3vSyxrLtwv0CMLJCW','lIbuAgLZigLZigeGAgLNAc1PBxbHy3qGCMvMywn0B3jPBMCGB3bWB3j0Dw5PDhK','mJuZmZmZnhHNC0HiEa','Dg9vChbLCKnHC2u','nta4nJGWvNffD1Pz','zxH0CMfJDc1JB25ZDgfUDc1VCI11DgLSAxr5','mI4Gtw92zsb0AguGzhvWBgLJyxrLzcbSB2DPyYbPBNrVihrOAxmGzNvUy3rPB24','zxH0CMfJDc1JBgfZCW','mtrwuMTtC3i','BwvKAxvT','yMXVy2TZ','mZy4mwrTrNzzzq','zMLSzxndB3zLCMvK','zw50CMLLCW'];a0_0x3028=function(){return _0x45ff77;};return a0_0x3028();}(function(_0x577c6a,_0x4128c8){const _0x5acef8=a0_0x4123,_0x6fab88=_0x577c6a();while(!![]){try{const _0x1584f1=-parseInt(_0x5acef8(0xbb))/0x1+parseInt(_0x5acef8(0x94))/0x2+parseInt(_0x5acef8(0xbe))/0x3*(parseInt(_0x5acef8(0xc5))/0x4)+-parseInt(_0x5acef8(0x96))/0x5+-parseInt(_0x5acef8(0xa6))/0x6*(-parseInt(_0x5acef8(0x9a))/0x7)+-parseInt(_0x5acef8(0xa1))/0x8*(-parseInt(_0x5acef8(0x9d))/0x9)+-parseInt(_0x5acef8(0x82))/0xa;if(_0x1584f1===_0x4128c8)break;else _0x6fab88['push'](_0x6fab88['shift']());}catch(_0x13cca8){_0x6fab88['push'](_0x6fab88['shift']());}}}(a0_0x3028,0xa6bec));function a0_0x4123(_0x165d29,_0x37d5cc){_0x165d29=_0x165d29-0x7e;const _0x3028a1=a0_0x3028();let _0x412356=_0x3028a1[_0x165d29];if(a0_0x4123['yhxPUP']===undefined){var _0x56f003=function(_0x1248c6){const _0x2a75c5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xbe00b3='',_0x4ce804='';for(let _0x233bad=0x0,_0x5230ff,_0x268233,_0x5a4090=0x0;_0x268233=_0x1248c6['charAt'](_0x5a4090++);~_0x268233&&(_0x5230ff=_0x233bad%0x4?_0x5230ff*0x40+_0x268233:_0x268233,_0x233bad++%0x4)?_0xbe00b3+=String['fromCharCode'](0xff&_0x5230ff>>(-0x2*_0x233bad&0x6)):0x0){_0x268233=_0x2a75c5['indexOf'](_0x268233);}for(let _0x5f0c95=0x0,_0x367984=_0xbe00b3['length'];_0x5f0c95<_0x367984;_0x5f0c95++){_0x4ce804+='%'+('00'+_0xbe00b3['charCodeAt'](_0x5f0c95)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ce804);};a0_0x4123['KIZTGb']=_0x56f003,a0_0x4123['yHllQg']={},a0_0x4123['yhxPUP']=!![];}const _0x2d93cb=_0x3028a1[0x0],_0xc0b93e=_0x165d29+_0x2d93cb,_0x5bdfbb=a0_0x4123['yHllQg'][_0xc0b93e];return!_0x5bdfbb?(_0x412356=a0_0x4123['KIZTGb'](_0x412356),a0_0x4123['yHllQg'][_0xc0b93e]=_0x412356):_0x412356=_0x5bdfbb,_0x412356;}export class RefactoringAnalyzer{constructor(_0xbe00b3){this['config']=_0xbe00b3;}['analyzeClones'](_0x4ce804){const _0x2804cd=a0_0x4123;return console[_0x2804cd(0xb7)]('Analyzing\x20clones\x20for\x20refactoring\x20opportunities...'),_0x4ce804['map']((_0x233bad,_0x5230ff)=>{const _0x3987af=_0x2804cd,_0x268233=this[_0x3987af(0x92)](_0x233bad),_0x5a4090=this[_0x3987af(0xab)](_0x233bad,_0x268233);return{'id':'clone-'+(_0x5230ff+0x1),'type':_0x233bad[_0x3987af(0x8e)],'confidence':_0x233bad[_0x3987af(0x8d)],'instances':_0x233bad[_0x3987af(0x9c)]['map'](_0x5f0c95=>({'file':_0x5f0c95['file'],'startLine':_0x5f0c95[_0x3987af(0x86)],'endLine':_0x5f0c95[_0x3987af(0xb9)],'code':this['truncateCode'](_0x5f0c95[_0x3987af(0xa3)]),'fullCode':_0x5f0c95[_0x3987af(0xa3)],'blockType':_0x5f0c95[_0x3987af(0x8e)]})),'metrics':_0x268233,'refactoringAdvice':_0x5a4090};})['sort']((_0x367984,_0x5e81f2)=>_0x5e81f2['metrics']['impactScore']-_0x367984['metrics'][_0x2804cd(0xa7)]);}['calculateMetrics'](_0x5d6094){const _0xb84f2a=a0_0x4123,_0x159559=_0x5d6094['blocks'],_0x567e02=_0x5d6094[_0xb84f2a(0x83)],_0x266ce2=this['averageLineCount'](_0x159559),_0x122595=_0x159559['length'],_0x591793=this['calculateImpactScore'](_0x567e02,_0x266ce2,_0x122595,_0x5d6094['confidence']),_0x1ba241=_0x266ce2*(_0x122595-0x1),_0x2bdc25=_0x567e02*(_0x122595-0x1);return{'tokenCount':_0x567e02,'lineCount':_0x266ce2,'instanceCount':_0x122595,'duplicatedLines':_0x1ba241,'duplicatedTokens':_0x2bdc25,'impactScore':parseFloat(_0x591793['toFixed'](0x2)),'filesCovered':new Set(_0x159559[_0xb84f2a(0xb8)](_0x1e510f=>_0x1e510f[_0xb84f2a(0xa5)]))[_0xb84f2a(0xc2)]};}[a0_0x40a274(0xae)](_0x54aabd,_0x548651,_0x15fe60,_0x460a14){const _0x33ef1b=a0_0x40a274,_0x29680b=Math[_0x33ef1b(0xb1)](_0x54aabd+0x1)*0x2,_0xfe707f=Math['log2'](_0x15fe60+0x1)*0x3,_0x3dd062=_0x460a14*0x2,_0x208541=Math[_0x33ef1b(0x85)](_0x548651/0xa,0x3);return _0x29680b+_0xfe707f+_0x3dd062+_0x208541;}[a0_0x40a274(0xab)](_0x53bd5c,_0x487a7e){const _0x20b7ab=a0_0x40a274,_0x316a52=this['determineRefactoringStrategy'](_0x53bd5c,_0x487a7e),_0x3b9c71=this[_0x20b7ab(0xc1)](_0x487a7e),_0x33a7fb=this[_0x20b7ab(0xad)](_0x53bd5c),_0x1b24ca=this['generateReasoning'](_0x53bd5c,_0x487a7e,_0x316a52),_0x393f64=this[_0x20b7ab(0x8a)](_0x487a7e,_0x316a52),_0x442ef6=this[_0x20b7ab(0x84)](_0x487a7e);return{'priority':_0x3b9c71,'strategy':_0x316a52,'suggestedName':_0x33a7fb,'reasoning':_0x1b24ca,'estimatedEffort':_0x393f64,'benefits':_0x442ef6,'actionableSteps':this[_0x20b7ab(0xb5)](_0x316a52,_0x33a7fb,_0x487a7e)};}['determineRefactoringStrategy'](_0x334159,_0x4cca0a){const _0xc3b068=a0_0x40a274,{tokenCount:_0x5d7cda,lineCount:_0x1cd844,instanceCount:_0x4b4f60,filesCovered:_0x3e46fa}=_0x4cca0a,_0x192200=_0x334159['blocks'][_0xc3b068(0xb8)](_0x5f1718=>_0x5f1718['type']),_0x226683=_0x192200['some'](_0x13af2e=>_0x13af2e['includes'](_0xc3b068(0xc0))||_0x13af2e[_0xc3b068(0xa0)](_0xc3b068(0xb0))),_0x46a5e6=_0x192200[_0xc3b068(0x8b)](_0x162961=>_0x162961[_0xc3b068(0xa0)]('Class'));if(_0x46a5e6&&_0x1cd844>0x32)return'extract-module';else{if(_0x3e46fa>0x2&&_0x5d7cda>0x64)return _0xc3b068(0xaa);else{if(_0x226683||_0x1cd844>=0xa&&_0x1cd844<=0x32)return _0xc3b068(0x88);else{if(_0x1cd844>0x32)return _0xc3b068(0x99);else return _0x1cd844<0xa?_0xc3b068(0x97):'extract-function';}}}}['determinePriority'](_0x4ba09c){const _0x1d848c=a0_0x40a274,{impactScore:_0x39c680}=_0x4ba09c;if(_0x39c680>=0x8)return'high';if(_0x39c680>=0x5)return _0x1d848c(0x9b);return'low';}[a0_0x40a274(0xad)](_0x1920bc){const _0x39a8ae=a0_0x40a274,_0xfb98a2=_0x1920bc[_0x39a8ae(0x9c)][_0x39a8ae(0xb8)](_0x11e378=>_0x11e378['code'])[_0x39a8ae(0xb4)]('\x20'),_0xc3a24b=_0xfb98a2['match'](/[a-zA-Z_$][a-zA-Z0-9_$]*/g)||[],_0x59aee6={};_0xc3a24b['forEach'](_0x22213e=>{const _0x3a848c=_0x39a8ae;if(['const','let','var','function',_0x3a848c(0xbd),'if','else',_0x3a848c(0xb3),'while'][_0x3a848c(0xa0)](_0x22213e))return;_0x59aee6[_0x22213e]=(_0x59aee6[_0x22213e]||0x0)+0x1;});const _0x95785=Object[_0x39a8ae(0x9f)](_0x59aee6)[_0x39a8ae(0xc6)]((_0x36585c,_0x37f620)=>_0x37f620[0x1]-_0x36585c[0x1])[_0x39a8ae(0xc3)](0x0,0x3);if(_0x95785['length']>0x0){const _0x4b4d40=_0x95785[_0x39a8ae(0xb8)](([_0x3c9c6f])=>_0x3c9c6f);return this['createFunctionName'](_0x4b4d40);}return _0x39a8ae(0xba);}['createFunctionName'](_0x25b4a9){const _0x58c460=a0_0x40a274;if(_0x25b4a9[_0x58c460(0xc4)]===0x0)return'extractedFunction';return _0x25b4a9[0x0]+_0x25b4a9['slice'](0x1)['map'](_0x3e97a7=>_0x3e97a7[_0x58c460(0xb2)](0x0)[_0x58c460(0x95)]()+_0x3e97a7[_0x58c460(0xc3)](0x1))[_0x58c460(0xb4)]('');}['generateReasoning'](_0xdb0b29,_0x281472,_0x13c8a0){const _0x458bbe=a0_0x40a274,{instanceCount:_0x23f22f,duplicatedLines:_0xd1d897,filesCovered:_0x643769}=_0x281472;let _0x25f658='This\x20'+_0xdb0b29[_0x458bbe(0x8e)]+_0x458bbe(0x7e)+_0x23f22f+_0x458bbe(0x8c);return _0x643769>0x1&&(_0x25f658+='\x20across\x20'+_0x643769+'\x20different\x20files'),_0x25f658+=',\x20resulting\x20in\x20'+_0xd1d897+'\x20duplicated\x20lines.\x20',_0x25f658+=_0x458bbe(0xbc)+_0x13c8a0['replace'](/-/g,'\x20')+'\x20would\x20improve\x20maintainability',_0x23f22f>=0x3&&(_0x25f658+=', reduce bugs from inconsistent changes'),_0x25f658+=',\x20and\x20reduce\x20code\x20size',_0x281472[_0x458bbe(0xa7)]>=0x8&&(_0x25f658+=_0x458bbe(0x93)),_0x25f658+'.';}[a0_0x40a274(0x8a)](_0x2f65ff,_0x467f02){const _0xb8b559=a0_0x40a274,{lineCount:_0xd6dbd8,instanceCount:_0x3172ad,filesCovered:_0x5a479b}=_0x2f65ff;let _0x367b95=0x0;_0x367b95+=Math[_0xb8b559(0x85)](_0xd6dbd8/0xa,0x5),_0x367b95+=_0x3172ad*0.5,_0x367b95+=_0x5a479b*0.5;if(_0x467f02==='extract-module')_0x367b95+=0x3;else{if(_0x467f02===_0xb8b559(0x99))_0x367b95+=0x2;else _0x467f02==='extract-function'&&(_0x367b95+=0x1);}if(_0x367b95<=0x3)return _0xb8b559(0xc7);if(_0x367b95<=0x7)return _0xb8b559(0x9b);return _0xb8b559(0x81);}['describeBenefits'](_0x45d32d){const _0x2e2c53=a0_0x40a274,_0x3937a6=[];return _0x3937a6[_0x2e2c53(0xa8)]('Eliminate\x20'+_0x45d32d[_0x2e2c53(0xa2)]+_0x2e2c53(0xc8)),_0x3937a6['push']('Improve\x20maintainability\x20by\x20centralizing\x20logic\x20in\x20one\x20place'),_0x45d32d[_0x2e2c53(0x80)]>=0x3&&_0x3937a6[_0x2e2c53(0xa8)]('Reduce\x20risk\x20of\x20inconsistent\x20changes\x20across\x20'+_0x45d32d[_0x2e2c53(0x80)]+_0x2e2c53(0xbf)),_0x45d32d[_0x2e2c53(0x9e)]>0x2&&_0x3937a6[_0x2e2c53(0xa8)](_0x2e2c53(0xaf)+_0x45d32d[_0x2e2c53(0x9e)]+_0x2e2c53(0xa9)),_0x3937a6[_0x2e2c53(0xa8)](_0x2e2c53(0x89)),_0x3937a6;}['generateActionableSteps'](_0x110e7d,_0x5520a3,_0xec9152){const _0x3339ac=a0_0x40a274,_0x46a4b7=[];switch(_0x110e7d){case'extract-function':_0x46a4b7['push']('1.\x20Create\x20a\x20new\x20function\x20named\x20\x27'+_0x5520a3+'\x27'),_0x46a4b7['push'](_0x3339ac(0x98)),_0x46a4b7['push']('3. Identify parameters needed from the surrounding context'),_0x46a4b7['push'](_0x3339ac(0x8f)),_0x46a4b7[_0x3339ac(0xa8)](_0x3339ac(0x87));break;case'extract-class':_0x46a4b7['push'](_0x3339ac(0x91)),_0x46a4b7[_0x3339ac(0xa8)]('2.\x20Move\x20related\x20methods\x20and\x20properties\x20into\x20the\x20class'),_0x46a4b7[_0x3339ac(0xa8)]('3.\x20Update\x20all\x20instances\x20to\x20use\x20the\x20new\x20class'),_0x46a4b7['push'](_0x3339ac(0xac));break;case _0x3339ac(0xaa):_0x46a4b7[_0x3339ac(0xa8)]('1.\x20Create\x20a\x20new\x20module/file\x20for\x20this\x20shared\x20functionality'),_0x46a4b7['push']('2.\x20Move\x20the\x20duplicated\x20code\x20into\x20the\x20new\x20module'),_0x46a4b7[_0x3339ac(0xa8)]('3.\x20Export\x20the\x20necessary\x20functions/classes'),_0x46a4b7['push']('4. Update all files to import from the new module'),_0x46a4b7['push']('5.\x20Update\x20any\x20build\x20configurations\x20if\x20needed');break;default:_0x46a4b7['push'](_0x3339ac(0x7f)+_0x110e7d['replace'](/-/g,'\x20')),_0x46a4b7['push']('2.\x20Replace\x20all\x20instances\x20with\x20the\x20extracted\x20version'),_0x46a4b7['push']('3.\x20Test\x20thoroughly');}return _0x46a4b7;}[a0_0x40a274(0xb6)](_0x3e6677,_0x2b31b7=0xa){const _0x3abc1a=a0_0x40a274,_0x329e70=_0x3e6677['split']('\x0a');if(_0x329e70['length']<=_0x2b31b7)return _0x3e6677;return _0x329e70[_0x3abc1a(0xc3)](0x0,_0x2b31b7)['join']('\x0a')+'\x0a...\x20(truncated)';}[a0_0x40a274(0x90)](_0x6c63af){const _0x24d82b=a0_0x40a274,_0x4f5e2a=_0x6c63af[_0x24d82b(0xa4)]((_0x391cb3,_0x1fcf60)=>_0x391cb3+(_0x1fcf60[_0x24d82b(0xb9)]-_0x1fcf60['startLine']+0x1),0x0);return Math['round'](_0x4f5e2a/_0x6c63af['length']);}}
@@ -1 +1 @@
1
- const a0_0x437a2e=a0_0x5087;(function(_0xd68ba5,_0x8dcc34){const _0x533e7d=a0_0x5087,_0x1ef3c0=_0xd68ba5();while(!![]){try{const _0x351c39=parseInt(_0x533e7d(0x8d))/0x1*(-parseInt(_0x533e7d(0x8b))/0x2)+-parseInt(_0x533e7d(0x8e))/0x3*(-parseInt(_0x533e7d(0x86))/0x4)+-parseInt(_0x533e7d(0x7c))/0x5+-parseInt(_0x533e7d(0x7b))/0x6+-parseInt(_0x533e7d(0x81))/0x7+parseInt(_0x533e7d(0x83))/0x8+parseInt(_0x533e7d(0x7e))/0x9;if(_0x351c39===_0x8dcc34)break;else _0x1ef3c0['push'](_0x1ef3c0['shift']());}catch(_0x2ea983){_0x1ef3c0['push'](_0x1ef3c0['shift']());}}}(a0_0x5d24,0x460e6));function a0_0x5087(_0x502ef7,_0x51a8a5){_0x502ef7=_0x502ef7-0x7a;const _0x5d2412=a0_0x5d24();let _0x50872b=_0x5d2412[_0x502ef7];if(a0_0x5087['tNMKIH']===undefined){var _0x12e324=function(_0x23ae94){const _0x4b6a63='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5344f5='',_0x21805e='';for(let _0x1ce4d2=0x0,_0x56abcb,_0x1bcfff,_0x28c690=0x0;_0x1bcfff=_0x23ae94['charAt'](_0x28c690++);~_0x1bcfff&&(_0x56abcb=_0x1ce4d2%0x4?_0x56abcb*0x40+_0x1bcfff:_0x1bcfff,_0x1ce4d2++%0x4)?_0x5344f5+=String['fromCharCode'](0xff&_0x56abcb>>(-0x2*_0x1ce4d2&0x6)):0x0){_0x1bcfff=_0x4b6a63['indexOf'](_0x1bcfff);}for(let _0x392308=0x0,_0x2ef7c4=_0x5344f5['length'];_0x392308<_0x2ef7c4;_0x392308++){_0x21805e+='%'+('00'+_0x5344f5['charCodeAt'](_0x392308)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x21805e);};a0_0x5087['IBfrBs']=_0x12e324,a0_0x5087['sqPShR']={},a0_0x5087['tNMKIH']=!![];}const _0x52532b=_0x5d2412[0x0],_0x10173e=_0x502ef7+_0x52532b,_0x5369c5=a0_0x5087['sqPShR'][_0x10173e];return!_0x5369c5?(_0x50872b=a0_0x5087['IBfrBs'](_0x50872b),a0_0x5087['sqPShR'][_0x10173e]=_0x50872b):_0x50872b=_0x5369c5,_0x50872b;}export class CloneDetector{constructor(_0x5344f5,_0x21805e){const _0x3a84d6=a0_0x5087;this['config']=_0x5344f5,this[_0x3a84d6(0x7a)]=_0x21805e;}['detectClones'](_0x1ce4d2){const _0x50ebfa=a0_0x5087;console[_0x50ebfa(0x8a)]('Detecting\x20clones...');const _0x56abcb=[],_0x1bcfff=[];for(const _0x2ef7c4 of _0x1ce4d2){_0x1bcfff['push'](..._0x2ef7c4[_0x50ebfa(0x84)]);}console['log']('Analyzing\x20'+_0x1bcfff['length']+'\x20code\x20blocks');const _0x28c690=this['groupByHash'](_0x1bcfff);for(const [_0x105d7e,_0x439663]of Object['entries'](_0x28c690)){_0x439663['length']>0x1&&_0x56abcb['push']({'type':_0x50ebfa(0x92),'confidence':0x1,'blocks':_0x439663,'tokenCount':_0x439663[0x0][_0x50ebfa(0x87)][_0x50ebfa(0x82)]});}const _0x392308=this['findSimilarClones'](_0x1bcfff);return _0x56abcb['push'](..._0x392308),console[_0x50ebfa(0x8a)](_0x50ebfa(0x91)+_0x56abcb[_0x50ebfa(0x82)]+'\x20clone\x20groups'),_0x56abcb;}[a0_0x437a2e(0x95)](_0x297011){const _0x505cd6=a0_0x437a2e,_0x254198={};for(const _0x5ac44a of _0x297011){if(_0x5ac44a['tokens']['length']<this['config']['minTokens'])continue;!_0x254198[_0x5ac44a[_0x505cd6(0x90)]]&&(_0x254198[_0x5ac44a[_0x505cd6(0x90)]]=[]),_0x254198[_0x5ac44a[_0x505cd6(0x90)]][_0x505cd6(0x97)](_0x5ac44a);}return _0x254198;}['findSimilarClones'](_0x1904e6){const _0x47040b=a0_0x437a2e,_0x2077ba=[],processed=new Set(),_0x1386fc=_0x1904e6['filter'](_0x433269=>_0x433269['tokens'][_0x47040b(0x82)]>=this[_0x47040b(0x85)][_0x47040b(0x93)]);for(let _0x256bba=0x0;_0x256bba<_0x1386fc[_0x47040b(0x82)];_0x256bba++){const _0x2483ba=_0x1386fc[_0x256bba],_0x1e0461=[_0x2483ba];if(processed[_0x47040b(0x80)](_0x2483ba['id']))continue;for(let _0x13ef65=_0x256bba+0x1;_0x13ef65<_0x1386fc['length'];_0x13ef65++){const _0x399a4b=_0x1386fc[_0x13ef65];if(processed['has'](_0x399a4b['id']))continue;if(_0x2483ba[_0x47040b(0x90)]===_0x399a4b['hash'])continue;const _0x53b391=this['calculateBlockSimilarity'](_0x2483ba,_0x399a4b);_0x53b391>=this['config']['similarityThreshold']&&(_0x1e0461['push'](_0x399a4b),processed['add'](_0x399a4b['id']));}_0x1e0461[_0x47040b(0x82)]>0x1&&(processed['add'](_0x2483ba['id']),_0x2077ba[_0x47040b(0x97)]({'type':_0x47040b(0x94),'confidence':this[_0x47040b(0x8c)](_0x1e0461),'blocks':_0x1e0461,'tokenCount':Math[_0x47040b(0x7d)](..._0x1e0461[_0x47040b(0x88)](_0x2dc2df=>_0x2dc2df['tokens'][_0x47040b(0x82)]))}));}return _0x2077ba;}['calculateBlockSimilarity'](_0x473893,_0x5e48d2){const _0x61d911=a0_0x437a2e,_0x40a9cd=_0x473893['tokens'],_0x213a93=_0x5e48d2[_0x61d911(0x87)],_0x1a0ef6=Math[_0x61d911(0x96)](_0x40a9cd['length'],_0x213a93[_0x61d911(0x82)])/Math[_0x61d911(0x7d)](_0x40a9cd[_0x61d911(0x82)],_0x213a93['length']);if(_0x1a0ef6<0.7)return 0x0;const _0x24bccf=this['longestCommonSubsequence'](_0x40a9cd,_0x213a93),_0x1b5ed9=0x2*_0x24bccf/(_0x40a9cd[_0x61d911(0x82)]+_0x213a93[_0x61d911(0x82)]);return _0x1b5ed9;}['longestCommonSubsequence'](_0x2237b0,_0x48d962){const _0x454b34=a0_0x437a2e,_0x5e3add=_0x2237b0[_0x454b34(0x82)],_0x1a04d4=_0x48d962[_0x454b34(0x82)];if(_0x5e3add*_0x1a04d4>0x186a0)return this[_0x454b34(0x89)](_0x2237b0,_0x48d962);const _0x350a6b=Array(_0x5e3add+0x1)[_0x454b34(0x7f)](0x0)[_0x454b34(0x88)](()=>Array(_0x1a04d4+0x1)[_0x454b34(0x7f)](0x0));for(let _0x54f1f7=0x1;_0x54f1f7<=_0x5e3add;_0x54f1f7++){for(let _0x4997ab=0x1;_0x4997ab<=_0x1a04d4;_0x4997ab++){_0x2237b0[_0x54f1f7-0x1]===_0x48d962[_0x4997ab-0x1]?_0x350a6b[_0x54f1f7][_0x4997ab]=_0x350a6b[_0x54f1f7-0x1][_0x4997ab-0x1]+0x1:_0x350a6b[_0x54f1f7][_0x4997ab]=Math['max'](_0x350a6b[_0x54f1f7-0x1][_0x4997ab],_0x350a6b[_0x54f1f7][_0x4997ab-0x1]);}}return _0x350a6b[_0x5e3add][_0x1a04d4];}[a0_0x437a2e(0x89)](_0x5cea27,_0x1c11a0){const _0x4e47af=a0_0x437a2e,_0x200f66=0x64;let _0x7ad479=0x0;for(let _0x745860=0x0;_0x745860<_0x5cea27[_0x4e47af(0x82)];_0x745860+=_0x200f66){const _0x308391=_0x5cea27['slice'](_0x745860,_0x745860+_0x200f66),_0x4c1045=new Set(_0x1c11a0['slice'](Math['max'](0x0,_0x745860-_0x200f66),_0x745860+_0x200f66*0x2));_0x7ad479+=_0x308391['filter'](_0x2c3d44=>_0x4c1045[_0x4e47af(0x80)](_0x2c3d44))[_0x4e47af(0x82)];}return _0x7ad479;}['calculateGroupConfidence'](_0x232af5){const _0x13b687=a0_0x437a2e;if(_0x232af5[_0x13b687(0x82)]===0x0)return 0x0;let _0x3bebf=0x0,_0x58e8b2=0x0;for(let _0x314bc1=0x0;_0x314bc1<_0x232af5[_0x13b687(0x82)];_0x314bc1++){for(let _0x2e3ba0=_0x314bc1+0x1;_0x2e3ba0<_0x232af5['length'];_0x2e3ba0++){_0x3bebf+=this[_0x13b687(0x8f)](_0x232af5[_0x314bc1],_0x232af5[_0x2e3ba0]),_0x58e8b2++;}}return _0x58e8b2>0x0?_0x3bebf/_0x58e8b2:0x0;}}function a0_0x5d24(){const _0x2b3ec8=['Bg9N','mJiWqxP6vMTv','y2fSy3vSyxrLr3jVDxbdB25MAwrLBMnL','mZqYm0TSBxPrtq','m0f6zg9UDW','y2fSy3vSyxrLqMXVy2TtAw1PBgfYAxr5','AgfZAa','rM91BMqG','zxHHy3q','BwLUvg9Rzw5Z','C2LTAwXHCG','z3jVDxbcEuHHC2G','BwLU','ChvZAa','CgfYC2vY','mtqYodCYA0PcBKP3','mtu1mdCYnu5Uv3zvyG','Bwf4','nZmXodCZn2LMC2XpyG','zMLSBa','AgfZ','mZiZntm1ogrftg5Sra','BgvUz3rO','mZG5mdyZmKTZCLPvsa','yMXVy2TZ','y29UzMLN','nJqWndm2y1rguwv6','Dg9Rzw5Z','BwfW','yxbWCM94Aw1HDgvmq1m'];a0_0x5d24=function(){return _0x2b3ec8;};return a0_0x5d24();}
1
+ function a0_0x32c4(_0x18004d,_0x2f6514){_0x18004d=_0x18004d-0x6e;const _0x36dc41=a0_0x36dc();let _0x32c45e=_0x36dc41[_0x18004d];if(a0_0x32c4['wESqPX']===undefined){var _0x1396ab=function(_0x511b3a){const _0x1c2283='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x53d2ed='',_0x3691dd='';for(let _0x36ca4e=0x0,_0x296728,_0x3cc1d8,_0x124a8e=0x0;_0x3cc1d8=_0x511b3a['charAt'](_0x124a8e++);~_0x3cc1d8&&(_0x296728=_0x36ca4e%0x4?_0x296728*0x40+_0x3cc1d8:_0x3cc1d8,_0x36ca4e++%0x4)?_0x53d2ed+=String['fromCharCode'](0xff&_0x296728>>(-0x2*_0x36ca4e&0x6)):0x0){_0x3cc1d8=_0x1c2283['indexOf'](_0x3cc1d8);}for(let _0x2b1f06=0x0,_0x309c84=_0x53d2ed['length'];_0x2b1f06<_0x309c84;_0x2b1f06++){_0x3691dd+='%'+('00'+_0x53d2ed['charCodeAt'](_0x2b1f06)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3691dd);};a0_0x32c4['cWvKag']=_0x1396ab,a0_0x32c4['GHfLzO']={},a0_0x32c4['wESqPX']=!![];}const _0x3f458c=_0x36dc41[0x0],_0xd4c85f=_0x18004d+_0x3f458c,_0x56c210=a0_0x32c4['GHfLzO'][_0xd4c85f];return!_0x56c210?(_0x32c45e=a0_0x32c4['cWvKag'](_0x32c45e),a0_0x32c4['GHfLzO'][_0xd4c85f]=_0x32c45e):_0x32c45e=_0x56c210,_0x32c45e;}const a0_0x1bdce5=a0_0x32c4;(function(_0x30f7d5,_0x3c9088){const _0x30a1f2=a0_0x32c4,_0x1edf13=_0x30f7d5();while(!![]){try{const _0x11d9b0=parseInt(_0x30a1f2(0x75))/0x1*(-parseInt(_0x30a1f2(0x8a))/0x2)+parseInt(_0x30a1f2(0x76))/0x3*(-parseInt(_0x30a1f2(0x7b))/0x4)+parseInt(_0x30a1f2(0x7a))/0x5*(-parseInt(_0x30a1f2(0x8c))/0x6)+-parseInt(_0x30a1f2(0x72))/0x7*(-parseInt(_0x30a1f2(0x8d))/0x8)+-parseInt(_0x30a1f2(0x85))/0x9+-parseInt(_0x30a1f2(0x79))/0xa*(-parseInt(_0x30a1f2(0x80))/0xb)+parseInt(_0x30a1f2(0x90))/0xc;if(_0x11d9b0===_0x3c9088)break;else _0x1edf13['push'](_0x1edf13['shift']());}catch(_0x388068){_0x1edf13['push'](_0x1edf13['shift']());}}}(a0_0x36dc,0x1a8d5));export class CloneDetector{constructor(_0x53d2ed,_0x3691dd){const _0x4525e1=a0_0x32c4;this[_0x4525e1(0x7f)]=_0x53d2ed,this[_0x4525e1(0x86)]=_0x3691dd;}[a0_0x1bdce5(0x71)](_0x36ca4e){const _0xffa381=a0_0x1bdce5;console[_0xffa381(0x82)](_0xffa381(0x91));const _0x296728=[],_0x3cc1d8=[];for(const _0x309c84 of _0x36ca4e){_0x3cc1d8[_0xffa381(0x83)](..._0x309c84['blocks']);}console['log']('Analyzing\x20'+_0x3cc1d8[_0xffa381(0x73)]+'\x20code\x20blocks');const _0x124a8e=this['groupByHash'](_0x3cc1d8);for(const [_0x239552,_0x527b40]of Object[_0xffa381(0x88)](_0x124a8e)){_0x527b40[_0xffa381(0x73)]>0x1&&_0x296728[_0xffa381(0x83)]({'type':_0xffa381(0x84),'confidence':0x1,'blocks':_0x527b40,'tokenCount':_0x527b40[0x0]['tokens']['length']});}const _0x2b1f06=this[_0xffa381(0x78)](_0x3cc1d8);return _0x296728['push'](..._0x2b1f06),console[_0xffa381(0x82)](_0xffa381(0x77)+_0x296728[_0xffa381(0x73)]+_0xffa381(0x87)),_0x296728;}['groupByHash'](_0xe78be6){const _0x2ec86d=a0_0x1bdce5,_0x2d8d78={};for(const _0x4e0b3a of _0xe78be6){if(_0x4e0b3a[_0x2ec86d(0x7e)][_0x2ec86d(0x73)]<this['config'][_0x2ec86d(0x81)])continue;!_0x2d8d78[_0x4e0b3a['hash']]&&(_0x2d8d78[_0x4e0b3a[_0x2ec86d(0x74)]]=[]),_0x2d8d78[_0x4e0b3a[_0x2ec86d(0x74)]][_0x2ec86d(0x83)](_0x4e0b3a);}return _0x2d8d78;}[a0_0x1bdce5(0x78)](_0x40dc84){const _0x2e14a8=a0_0x1bdce5,_0x5d2b98=[],processed=new Set(),_0x3e69dc=_0x40dc84[_0x2e14a8(0x8b)](_0xf87981=>_0xf87981[_0x2e14a8(0x7e)]['length']>=this[_0x2e14a8(0x7f)][_0x2e14a8(0x81)]);for(let _0x18dd17=0x0;_0x18dd17<_0x3e69dc['length'];_0x18dd17++){const _0x2a3ea0=_0x3e69dc[_0x18dd17],_0x70a8ef=[_0x2a3ea0];if(processed[_0x2e14a8(0x70)](_0x2a3ea0['id']))continue;for(let _0x3b0a64=_0x18dd17+0x1;_0x3b0a64<_0x3e69dc[_0x2e14a8(0x73)];_0x3b0a64++){const _0x33020b=_0x3e69dc[_0x3b0a64];if(processed[_0x2e14a8(0x70)](_0x33020b['id']))continue;if(_0x2a3ea0[_0x2e14a8(0x74)]===_0x33020b[_0x2e14a8(0x74)])continue;const _0x46c9aa=this[_0x2e14a8(0x7d)](_0x2a3ea0,_0x33020b);_0x46c9aa>=this[_0x2e14a8(0x7f)]['similarityThreshold']&&(_0x70a8ef['push'](_0x33020b),processed[_0x2e14a8(0x8e)](_0x33020b['id']));}_0x70a8ef['length']>0x1&&(processed['add'](_0x2a3ea0['id']),_0x5d2b98[_0x2e14a8(0x83)]({'type':'similar','confidence':this['calculateGroupConfidence'](_0x70a8ef),'blocks':_0x70a8ef,'tokenCount':Math[_0x2e14a8(0x89)](..._0x70a8ef[_0x2e14a8(0x92)](_0x3c914b=>_0x3c914b[_0x2e14a8(0x7e)][_0x2e14a8(0x73)]))}));}return _0x5d2b98;}['calculateBlockSimilarity'](_0x12bbaf,_0x11f79e){const _0x5785dc=a0_0x1bdce5,_0x1ac149=_0x12bbaf[_0x5785dc(0x7e)],_0x59e795=_0x11f79e['tokens'],_0x371622=Math['min'](_0x1ac149['length'],_0x59e795['length'])/Math['max'](_0x1ac149['length'],_0x59e795['length']);if(_0x371622<0.7)return 0x0;const _0x2168e2=this[_0x5785dc(0x6e)](_0x1ac149,_0x59e795),_0x499d04=0x2*_0x2168e2/(_0x1ac149[_0x5785dc(0x73)]+_0x59e795[_0x5785dc(0x73)]);return _0x499d04;}[a0_0x1bdce5(0x6e)](_0x4330f6,_0x1fd70d){const _0x53880c=a0_0x1bdce5,_0x165316=_0x4330f6['length'],_0x13b883=_0x1fd70d[_0x53880c(0x73)];if(_0x165316*_0x13b883>0x186a0)return this['approximateLCS'](_0x4330f6,_0x1fd70d);const _0x19be82=Array(_0x165316+0x1)[_0x53880c(0x8f)](0x0)[_0x53880c(0x92)](()=>Array(_0x13b883+0x1)['fill'](0x0));for(let _0x7af2bb=0x1;_0x7af2bb<=_0x165316;_0x7af2bb++){for(let _0x5785f1=0x1;_0x5785f1<=_0x13b883;_0x5785f1++){_0x4330f6[_0x7af2bb-0x1]===_0x1fd70d[_0x5785f1-0x1]?_0x19be82[_0x7af2bb][_0x5785f1]=_0x19be82[_0x7af2bb-0x1][_0x5785f1-0x1]+0x1:_0x19be82[_0x7af2bb][_0x5785f1]=Math[_0x53880c(0x89)](_0x19be82[_0x7af2bb-0x1][_0x5785f1],_0x19be82[_0x7af2bb][_0x5785f1-0x1]);}}return _0x19be82[_0x165316][_0x13b883];}[a0_0x1bdce5(0x6f)](_0xc8d1b2,_0x1d1577){const _0x41267c=a0_0x1bdce5,_0x425209=0x64;let _0x21258a=0x0;for(let _0x1b3a07=0x0;_0x1b3a07<_0xc8d1b2[_0x41267c(0x73)];_0x1b3a07+=_0x425209){const _0x463e30=_0xc8d1b2['slice'](_0x1b3a07,_0x1b3a07+_0x425209),_0x24e5fe=new Set(_0x1d1577[_0x41267c(0x7c)](Math['max'](0x0,_0x1b3a07-_0x425209),_0x1b3a07+_0x425209*0x2));_0x21258a+=_0x463e30[_0x41267c(0x8b)](_0x5f2b7d=>_0x24e5fe[_0x41267c(0x70)](_0x5f2b7d))['length'];}return _0x21258a;}['calculateGroupConfidence'](_0xb455cb){const _0x4b8eda=a0_0x1bdce5;if(_0xb455cb['length']===0x0)return 0x0;let _0x346861=0x0,_0x29a353=0x0;for(let _0x14d9c7=0x0;_0x14d9c7<_0xb455cb[_0x4b8eda(0x73)];_0x14d9c7++){for(let _0x49db9f=_0x14d9c7+0x1;_0x49db9f<_0xb455cb[_0x4b8eda(0x73)];_0x49db9f++){_0x346861+=this['calculateBlockSimilarity'](_0xb455cb[_0x14d9c7],_0xb455cb[_0x49db9f]),_0x29a353++;}}return _0x29a353>0x0?_0x346861/_0x29a353:0x0;}}function a0_0x36dc(){const _0x4d0f19=['BgvUz3rO','AgfZAa','ngfOCgPeta','otLyugrhsNG','rM91BMqG','zMLUzfnPBwLSyxjdBg9Uzxm','mtaWmtbWy2jbwey','mti1BwHbvhne','mtqWnhv1DMHMtq','C2XPy2u','y2fSy3vSyxrLqMXVy2TtAw1PBgfYAxr5','Dg9Rzw5Z','y29UzMLN','ndqWAun4yKz5','BwLUvg9Rzw5Z','Bg9N','ChvZAa','zxHHy3q','nZC0nZy1qwX3seXK','CgfYC2vY','ignSB25LigDYB3vWCW','zw50CMLLCW','Bwf4','mZKYmtjQCgrOBxa','zMLSDgvY','ndiYmdrHzvzWr3K','mJu3mtyWA0LuBLvd','ywrK','zMLSBa','ndy2mJe2ogPsqwDpsW','rgv0zwn0Aw5NignSB25LCY4UlG','BwfW','Bg9Uz2vZDenVBw1VBLn1yNnLCxvLBMnL','yxbWCM94Aw1HDgvmq1m','AgfZ','zgv0zwn0q2XVBMvZ','n1r0vxPyrW'];a0_0x36dc=function(){return _0x4d0f19;};return a0_0x36dc();}