@sparrowai/sparrow-mcp 1.0.11 → 1.1.1

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 (111) hide show
  1. package/.agent/skills/README.md +67 -0
  2. package/.agent/skills/sparrow-comprehensive-security/SKILL.md +141 -0
  3. package/.agent/skills/sparrow-fix-vulnerabilities/SKILL.md +101 -0
  4. package/.agent/skills/sparrow-full-audit/SKILL.md +103 -0
  5. package/.agent/skills/sparrow-mcp-test/SKILL.md +199 -0
  6. package/.agent/skills/sparrow-quick-scan/SKILL.md +91 -0
  7. package/.agent/skills/sparrow-sca-check/SKILL.md +126 -0
  8. package/README.md +65 -0
  9. package/bin/sparrow-mcp-test.cjs +29 -0
  10. package/dist/.tsbuildinfo +1 -1
  11. package/dist/scripts/mcp-test/mcp-client.d.ts +39 -0
  12. package/dist/scripts/mcp-test/mcp-client.js +1 -0
  13. package/dist/scripts/test-runner/standalone-test.d.ts +1 -0
  14. package/dist/scripts/test-runner/standalone-test.js +1 -0
  15. package/dist/src/config/appConfig.js +1 -0
  16. package/dist/src/config/constants.d.ts +45 -0
  17. package/dist/src/config/constants.js +1 -0
  18. package/dist/src/controllers/__tests__/analysis.controller.test.d.ts +1 -0
  19. package/dist/src/controllers/__tests__/analysis.controller.test.js +1 -0
  20. package/dist/src/controllers/__tests__/sast.controller.test.d.ts +1 -0
  21. package/dist/src/controllers/__tests__/sast.controller.test.js +1 -0
  22. package/dist/src/controllers/__tests__/sca.controller.test.d.ts +1 -0
  23. package/dist/src/controllers/__tests__/sca.controller.test.js +1 -0
  24. package/dist/src/controllers/__tests__/security.controller.test.d.ts +1 -0
  25. package/dist/src/controllers/__tests__/security.controller.test.js +1 -0
  26. package/dist/src/controllers/__tests__/system.controller.test.d.ts +1 -0
  27. package/dist/src/controllers/__tests__/system.controller.test.js +1 -0
  28. package/dist/src/controllers/analysis.controller.d.ts +150 -0
  29. package/dist/src/controllers/analysis.controller.js +1 -0
  30. package/dist/src/controllers/sast.controller.d.ts +109 -0
  31. package/dist/src/controllers/sast.controller.js +1 -0
  32. package/dist/src/controllers/sca.controller.d.ts +119 -0
  33. package/dist/src/controllers/sca.controller.js +1 -0
  34. package/dist/src/controllers/security.controller.d.ts +30 -0
  35. package/dist/src/controllers/security.controller.js +1 -0
  36. package/dist/src/controllers/system.controller.d.ts +2 -0
  37. package/dist/src/controllers/system.controller.js +1 -0
  38. package/dist/src/schemas/tool.schemas.d.ts +51 -0
  39. package/dist/src/schemas/tool.schemas.js +1 -0
  40. package/dist/src/server.js +2 -0
  41. package/dist/src/services/__tests__/checker.service.test.d.ts +1 -0
  42. package/dist/src/services/__tests__/checker.service.test.js +1 -0
  43. package/dist/src/services/__tests__/llm.service.test.d.ts +1 -0
  44. package/dist/src/services/__tests__/llm.service.test.js +1 -0
  45. package/dist/src/services/__tests__/s3.service.test.d.ts +1 -0
  46. package/dist/src/services/__tests__/s3.service.test.js +1 -0
  47. package/dist/src/services/__tests__/sparrow.service.test.d.ts +1 -0
  48. package/dist/src/services/__tests__/sparrow.service.test.js +1 -0
  49. package/dist/{services → src/services}/analysis.service.d.ts +32 -10
  50. package/dist/src/services/analysis.service.js +1 -0
  51. package/dist/src/services/checker.service.d.ts +21 -0
  52. package/dist/src/services/checker.service.js +1 -0
  53. package/dist/src/services/llm/AnthropicProvider.d.ts +7 -0
  54. package/dist/src/services/llm/AnthropicProvider.js +1 -0
  55. package/dist/src/services/llm/BedrockProvider.d.ts +7 -0
  56. package/dist/src/services/llm/BedrockProvider.js +1 -0
  57. package/dist/src/services/llm/GeminiProvider.d.ts +7 -0
  58. package/dist/src/services/llm/GeminiProvider.js +1 -0
  59. package/dist/src/services/llm/LLMFactory.d.ts +4 -0
  60. package/dist/src/services/llm/LLMFactory.js +1 -0
  61. package/dist/src/services/llm/LLMProvider.d.ts +3 -0
  62. package/dist/src/services/llm/LLMProvider.js +1 -0
  63. package/dist/src/services/llm/OllamaProvider.d.ts +7 -0
  64. package/dist/src/services/llm/OllamaProvider.js +1 -0
  65. package/dist/src/services/llm/OpenAIProvider.d.ts +7 -0
  66. package/dist/src/services/llm/OpenAIProvider.js +1 -0
  67. package/dist/{services → src/services}/llm.service.d.ts +1 -2
  68. package/dist/src/services/llm.service.js +1 -0
  69. package/dist/src/services/s3.service.d.ts +33 -0
  70. package/dist/src/services/s3.service.js +1 -0
  71. package/dist/{services → src/services}/sparrow.service.d.ts +3 -15
  72. package/dist/src/services/sparrow.service.js +1 -0
  73. package/dist/src/types/types.d.ts +186 -0
  74. package/dist/src/types/types.js +1 -0
  75. package/dist/src/utils/__tests__/crypto.util.test.d.ts +1 -0
  76. package/dist/src/utils/__tests__/crypto.util.test.js +1 -0
  77. package/dist/src/utils/__tests__/diff.util.test.d.ts +1 -0
  78. package/dist/src/utils/__tests__/diff.util.test.js +1 -0
  79. package/dist/src/utils/__tests__/fileManager.test.d.ts +1 -0
  80. package/dist/src/utils/__tests__/fileManager.test.js +1 -0
  81. package/dist/src/utils/__tests__/fileManagerSecure.test.d.ts +1 -0
  82. package/dist/src/utils/__tests__/fileManagerSecure.test.js +1 -0
  83. package/dist/src/utils/__tests__/logger.test.d.ts +1 -0
  84. package/dist/src/utils/__tests__/logger.test.js +1 -0
  85. package/dist/src/utils/crypto.util.d.ts +3 -0
  86. package/dist/src/utils/crypto.util.js +1 -0
  87. package/dist/src/utils/diff.util.js +1 -0
  88. package/dist/src/utils/fileManager.d.ts +7 -0
  89. package/dist/src/utils/fileManager.js +1 -0
  90. package/dist/src/utils/fileManagerSecure.d.ts +8 -0
  91. package/dist/src/utils/fileManagerSecure.js +1 -0
  92. package/dist/src/utils/logger.js +1 -0
  93. package/package.json +28 -7
  94. package/test-cases-example.md +97 -0
  95. package/dist/config/appConfig.js +0 -1
  96. package/dist/server.js +0 -2
  97. package/dist/services/analysis.service.js +0 -1
  98. package/dist/services/llm.service.js +0 -1
  99. package/dist/services/s3.service.d.ts +0 -75
  100. package/dist/services/s3.service.js +0 -1
  101. package/dist/services/sparrow.service.js +0 -1
  102. package/dist/types/types.d.ts +0 -100
  103. package/dist/types/types.js +0 -1
  104. package/dist/utils/crypto.util.d.ts +0 -36
  105. package/dist/utils/crypto.util.js +0 -1
  106. package/dist/utils/diff.util.js +0 -1
  107. package/dist/utils/logger.js +0 -1
  108. /package/dist/{config → src/config}/appConfig.d.ts +0 -0
  109. /package/dist/{server.d.ts → src/server.d.ts} +0 -0
  110. /package/dist/{utils → src/utils}/diff.util.d.ts +0 -0
  111. /package/dist/{utils → src/utils}/logger.d.ts +0 -0
@@ -0,0 +1,109 @@
1
+ import { AnalysisService } from '../services/analysis.service.js';
2
+ export declare class SastController {
3
+ private analysisService;
4
+ constructor(analysisService: AnalysisService);
5
+ analyzeFileSast({ fileContent, fileName }: {
6
+ fileContent: string;
7
+ fileName: string;
8
+ }): Promise<{
9
+ content: {
10
+ type: "text";
11
+ text: string;
12
+ }[];
13
+ structuredContent: {
14
+ analysisId: string;
15
+ status: string;
16
+ error?: undefined;
17
+ };
18
+ } | {
19
+ content: {
20
+ type: "text";
21
+ text: string;
22
+ }[];
23
+ structuredContent: {
24
+ error: string;
25
+ analysisId?: undefined;
26
+ status?: undefined;
27
+ };
28
+ }>;
29
+ analyzeFilesSast({ filePaths, zipFileName }: {
30
+ filePaths: string[];
31
+ zipFileName?: string;
32
+ }): Promise<{
33
+ content: {
34
+ type: "text";
35
+ text: string;
36
+ }[];
37
+ structuredContent: {
38
+ error: string;
39
+ analysisId?: undefined;
40
+ status?: undefined;
41
+ filePathCount?: undefined;
42
+ };
43
+ } | {
44
+ content: {
45
+ type: "text";
46
+ text: string;
47
+ }[];
48
+ structuredContent: {
49
+ analysisId: string;
50
+ status: string;
51
+ filePathCount: number;
52
+ error?: undefined;
53
+ };
54
+ }>;
55
+ analyzeFolderSast({ folderPath, zipFileName }: {
56
+ folderPath: string;
57
+ zipFileName?: string;
58
+ }): Promise<{
59
+ content: {
60
+ type: "text";
61
+ text: string;
62
+ }[];
63
+ structuredContent: {
64
+ error: string;
65
+ analysisId?: undefined;
66
+ status?: undefined;
67
+ folderPath?: undefined;
68
+ skippedFolders?: undefined;
69
+ };
70
+ } | {
71
+ content: {
72
+ type: "text";
73
+ text: string;
74
+ }[];
75
+ structuredContent: {
76
+ analysisId: string;
77
+ status: string;
78
+ folderPath: string;
79
+ skippedFolders: string[] | undefined;
80
+ error?: undefined;
81
+ };
82
+ }>;
83
+ analyzeZipSast({ zipFilePath, zipFileName }: {
84
+ zipFilePath: string;
85
+ zipFileName?: string;
86
+ }): Promise<{
87
+ content: {
88
+ type: "text";
89
+ text: string;
90
+ }[];
91
+ structuredContent: {
92
+ error: string;
93
+ analysisId?: undefined;
94
+ status?: undefined;
95
+ zipFilePath?: undefined;
96
+ };
97
+ } | {
98
+ content: {
99
+ type: "text";
100
+ text: string;
101
+ }[];
102
+ structuredContent: {
103
+ analysisId: string;
104
+ status: string;
105
+ zipFilePath: string;
106
+ error?: undefined;
107
+ };
108
+ }>;
109
+ }
@@ -0,0 +1 @@
1
+ const a5_0x55aaf0=a5_0x38d3;(function(_0x48c14c,_0x23a96d){const _0x318199=a5_0x38d3,_0x204ced=_0x48c14c();while(!![]){try{const _0x548b43=-parseInt(_0x318199(0x1cf))/0x1*(-parseInt(_0x318199(0x1fb))/0x2)+parseInt(_0x318199(0x1a8))/0x3+parseInt(_0x318199(0x1e7))/0x4*(parseInt(_0x318199(0x1e6))/0x5)+-parseInt(_0x318199(0x1ba))/0x6*(parseInt(_0x318199(0x202))/0x7)+parseInt(_0x318199(0x1d4))/0x8+parseInt(_0x318199(0x1ca))/0x9+-parseInt(_0x318199(0x1f9))/0xa;if(_0x548b43===_0x23a96d)break;else _0x204ced['push'](_0x204ced['shift']());}catch(_0x2081eb){_0x204ced['push'](_0x204ced['shift']());}}}(a5_0x4564,0x75d4d));const a5_0x3b4b66=(function(){let _0x3ad136=!![];return function(_0x39d8df,_0x40961b){const _0x38a7a7=_0x3ad136?function(){if(_0x40961b){const _0x5bfcb2=_0x40961b['apply'](_0x39d8df,arguments);return _0x40961b=null,_0x5bfcb2;}}:function(){};return _0x3ad136=![],_0x38a7a7;};}()),a5_0x2f8612=a5_0x3b4b66(this,function(){const _0xe26782=a5_0x38d3;return a5_0x2f8612['toString']()[_0xe26782(0x1a5)](_0xe26782(0x1dd)+'+$')[_0xe26782(0x1b8)]()['constructo'+'r'](a5_0x2f8612)[_0xe26782(0x1a5)](_0xe26782(0x1dd)+'+$');});a5_0x2f8612();function a5_0x4564(){const _0x4b15eb=['\x0aZIP\x20File:','6837237SohaXd','error','s:\x20','analysisId','fileConten','5UXJjGa','length','LMXhM','urity\x20anal','der','5177360enUViw','ed:\x20','info','Folder\x20pat','ovided','File','h\x20not\x20prov','\x0aNumber\x20of','ID:\x20','(((.+)+)+)','eSecurity','Folder\x20sec','\x0a\x0aSkipped\x20','ity\x20analys','ailed:','ders','content','led:','19045ZvOmsc','652LQsgKH','at\x20least\x20o','ath\x20not\x20pr','rInxU','analyzeMul','ne\x20file\x20pa','quested:\x20','ZIP\x20file\x20p','ysis\x20faile','message','trim','\x20file\x20path','\x20security\x20','\x20not\x20provi','Multi-file','uested:\x20','analyzeFil','analyzeZip','20182920TKFkUS','alysis\x20req','63890HDrhCB','analysisSe','\x20The\x20fileP','Unknown\x20er','quest\x20fail','Sast','nalysis\x20ha','1116983nUZQhu','esSast','search','filePathCo','alysis\x20fai','1419129qlBUrq','nalysis\x20re','aths\x20array','status','\x0aAnalysis\x20','eSast','ovided.','Security\x20a','analyzeFol','skippedFol','aYZDH','text','derSast','rvice','\x0aFolder:\x20','sted:\x20','toString','join','6SKmGHE','\x0aStatus:\x20','Content','ided.','ZIP\x20file\x20s','\x20requires\x20','o\x20analyze.','s\x20started.','ysis\x20reque','type','structured','ror','analysis\x20r','folderPath','):\x20'];a5_0x4564=function(){return _0x4b15eb;};return a5_0x4564();}import{logger}from'../utils/logger.js';function a5_0x38d3(_0x40e9f3,_0x1647e3){_0x40e9f3=_0x40e9f3-0x1a5;const _0x19530b=a5_0x4564();let _0x2f8612=_0x19530b[_0x40e9f3];return _0x2f8612;}export class SastController{[a5_0x55aaf0(0x1fc)+a5_0x55aaf0(0x1b5)];constructor(_0x57be59){const _0x1194e8=a5_0x55aaf0;this[_0x1194e8(0x1fc)+_0x1194e8(0x1b5)]=_0x57be59;}async[a5_0x55aaf0(0x1f7)+a5_0x55aaf0(0x1ad)]({fileContent:_0x1c8c46,fileName:_0xe3a5f0}){const _0xf42530=a5_0x55aaf0;try{logger['info'](_0xf42530(0x1af)+_0xf42530(0x1a9)+_0xf42530(0x1ed)+_0xe3a5f0);const _0x25dc60={};_0x25dc60[_0xf42530(0x1ce)+'t']=_0x1c8c46,_0x25dc60['fileName']=_0xe3a5f0;const _0x49153d=await this[_0xf42530(0x1fc)+'rvice']['analyzeFil'+_0xf42530(0x1de)](_0x25dc60),_0x3f16e9={};_0x3f16e9[_0xf42530(0x1c3)]=_0xf42530(0x1b3),_0x3f16e9['text']=_0xf42530(0x1af)+'nalysis\x20ha'+_0xf42530(0x1c1)+_0xf42530(0x1ac)+'ID:\x20'+_0x49153d['analysisId'];const _0x5f19fc={};_0x5f19fc[_0xf42530(0x1cd)]=_0x49153d[_0xf42530(0x1cd)],_0x5f19fc['status']=_0x49153d['status'];const _0x2b43b9={};return _0x2b43b9[_0xf42530(0x1e4)]=[_0x3f16e9],_0x2b43b9['structured'+_0xf42530(0x1bc)]=_0x5f19fc,_0x2b43b9;}catch(_0x33eacb){logger['error']('File\x20secur'+_0xf42530(0x1e1)+'is\x20failed:',_0x33eacb);const _0x2a5e6b={};_0x2a5e6b[_0xf42530(0x1c3)]=_0xf42530(0x1b3),_0x2a5e6b['text']='Security\x20a'+_0xf42530(0x1a9)+_0xf42530(0x1ff)+_0xf42530(0x1d5)+(_0x33eacb instanceof Error?_0x33eacb['message']:'Unknown\x20er'+'ror');const _0x2e6fe2={};_0x2e6fe2['error']=_0x33eacb instanceof Error?_0x33eacb[_0xf42530(0x1f0)]:_0xf42530(0x1fe)+_0xf42530(0x1c5);const _0x57448a={};return _0x57448a['content']=[_0x2a5e6b],_0x57448a['structured'+'Content']=_0x2e6fe2,_0x57448a;}}async[a5_0x55aaf0(0x1f7)+a5_0x55aaf0(0x203)]({filePaths:_0x34a082,zipFileName:_0x5adf25}){const _0x53b2c8=a5_0x55aaf0,_0x5b3572={};_0x5b3572[_0x53b2c8(0x1ea)]='Multi-file'+_0x53b2c8(0x1f3)+'analysis\x20f'+_0x53b2c8(0x1e2);const _0x2c9bf6=_0x5b3572;try{if(!_0x34a082||_0x34a082['length']===0x0){const _0x150eb9={};_0x150eb9[_0x53b2c8(0x1c3)]='text',_0x150eb9['text']='No\x20files\x20t'+_0x53b2c8(0x1c0)+_0x53b2c8(0x1fd)+_0x53b2c8(0x1aa)+_0x53b2c8(0x1bf)+_0x53b2c8(0x1e8)+_0x53b2c8(0x1ec)+'th.';const _0x56e7fc={};_0x56e7fc[_0x53b2c8(0x1cb)]='File\x20paths'+_0x53b2c8(0x1f4)+'ded';const _0x64972b={};return _0x64972b['content']=[_0x150eb9],_0x64972b[_0x53b2c8(0x1c4)+_0x53b2c8(0x1bc)]=_0x56e7fc,_0x64972b;}logger[_0x53b2c8(0x1d6)](_0x53b2c8(0x1f5)+'\x20security\x20'+_0x53b2c8(0x1c6)+'equested:\x20'+_0x34a082[_0x53b2c8(0x1d0)]+(_0x53b2c8(0x1f2)+'s'));const _0x44a61d=await this[_0x53b2c8(0x1fc)+'rvice'][_0x53b2c8(0x1eb)+'tipleFiles'+'FromPaths'](_0x34a082,_0x5adf25),_0x371eed=_0x53b2c8(0x1af)+_0x53b2c8(0x201)+_0x53b2c8(0x1c1)+_0x53b2c8(0x1db)+'\x20file\x20path'+_0x53b2c8(0x1cc)+_0x34a082[_0x53b2c8(0x1d0)]+(_0x53b2c8(0x1ac)+_0x53b2c8(0x1dc))+_0x44a61d[_0x53b2c8(0x1cd)]+_0x53b2c8(0x1bb)+_0x44a61d[_0x53b2c8(0x1ab)],_0x1db977={};_0x1db977[_0x53b2c8(0x1c3)]=_0x53b2c8(0x1b3),_0x1db977['text']=_0x371eed;const _0x55844e={};_0x55844e[_0x53b2c8(0x1cd)]=_0x44a61d[_0x53b2c8(0x1cd)],_0x55844e[_0x53b2c8(0x1ab)]=_0x44a61d[_0x53b2c8(0x1ab)],_0x55844e[_0x53b2c8(0x1a6)+'unt']=_0x34a082[_0x53b2c8(0x1d0)];const _0x5811f4={};return _0x5811f4[_0x53b2c8(0x1e4)]=[_0x1db977],_0x5811f4['structured'+'Content']=_0x55844e,_0x5811f4;}catch(_0x5f504a){logger[_0x53b2c8(0x1cb)](_0x2c9bf6['rInxU'],_0x5f504a);const _0x2920e8={};_0x2920e8[_0x53b2c8(0x1c3)]=_0x53b2c8(0x1b3),_0x2920e8[_0x53b2c8(0x1b3)]=_0x53b2c8(0x1af)+_0x53b2c8(0x1a9)+_0x53b2c8(0x1ff)+_0x53b2c8(0x1d5)+(_0x5f504a instanceof Error?_0x5f504a[_0x53b2c8(0x1f0)]:_0x53b2c8(0x1fe)+'ror');const _0xc8bc92={};_0xc8bc92['error']=_0x5f504a instanceof Error?_0x5f504a[_0x53b2c8(0x1f0)]:'Unknown\x20er'+_0x53b2c8(0x1c5);const _0x4e5fa9={};return _0x4e5fa9['content']=[_0x2920e8],_0x4e5fa9['structured'+'Content']=_0xc8bc92,_0x4e5fa9;}}async[a5_0x55aaf0(0x1b0)+a5_0x55aaf0(0x1b4)]({folderPath:_0x4d2e03,zipFileName:_0x5d8b63}){const _0x40ccb6=a5_0x55aaf0,_0x5ca553={};_0x5ca553[_0x40ccb6(0x1b2)]='Unknown\x20er'+_0x40ccb6(0x1c5);const _0x2a10c2=_0x5ca553;try{if(_0x40ccb6(0x1d1)!==_0x40ccb6(0x1d1)){_0x3f3ded[_0x40ccb6(0x1cb)](_0x40ccb6(0x1df)+'urity\x20anal'+_0x40ccb6(0x1ef)+'d:',_0x512956);const _0x4d2b38={};_0x4d2b38['type']=_0x40ccb6(0x1b3),_0x4d2b38[_0x40ccb6(0x1b3)]=_0x40ccb6(0x1af)+_0x40ccb6(0x1a9)+'quest\x20fail'+_0x40ccb6(0x1d5)+(_0xf50095 instanceof _0x14a571?_0x2f6010[_0x40ccb6(0x1f0)]:'Unknown\x20er'+'ror');const _0x1e5fea={};_0x1e5fea[_0x40ccb6(0x1cb)]=_0x1f2ead instanceof _0x41eee4?_0x1e852a[_0x40ccb6(0x1f0)]:_0x40ccb6(0x1fe)+_0x40ccb6(0x1c5);const _0x58d2f2={};return _0x58d2f2[_0x40ccb6(0x1e4)]=[_0x4d2b38],_0x58d2f2[_0x40ccb6(0x1c4)+_0x40ccb6(0x1bc)]=_0x1e5fea,_0x58d2f2;}else{if(!_0x4d2e03||_0x4d2e03[_0x40ccb6(0x1f1)]()[_0x40ccb6(0x1d0)]===0x0){const _0x1eefa4={};_0x1eefa4[_0x40ccb6(0x1c3)]=_0x40ccb6(0x1b3),_0x1eefa4[_0x40ccb6(0x1b3)]=_0x40ccb6(0x1d7)+_0x40ccb6(0x1da)+_0x40ccb6(0x1bd);const _0x2bc885={};_0x2bc885[_0x40ccb6(0x1cb)]=_0x40ccb6(0x1d7)+_0x40ccb6(0x1da)+'ided';const _0x447a2c={};return _0x447a2c[_0x40ccb6(0x1e4)]=[_0x1eefa4],_0x447a2c['structured'+_0x40ccb6(0x1bc)]=_0x2bc885,_0x447a2c;}logger['info']('Folder\x20sec'+'urity\x20anal'+_0x40ccb6(0x1c2)+_0x40ccb6(0x1b7)+_0x4d2e03);const _0x416d4f=await this[_0x40ccb6(0x1fc)+_0x40ccb6(0x1b5)][_0x40ccb6(0x1b0)+_0x40ccb6(0x1d3)](_0x4d2e03,_0x5d8b63);let _0x5e14d0=_0x40ccb6(0x1af)+_0x40ccb6(0x201)+_0x40ccb6(0x1c1)+_0x40ccb6(0x1b6)+_0x4d2e03+('\x0aAnalysis\x20'+_0x40ccb6(0x1dc))+_0x416d4f['analysisId']+_0x40ccb6(0x1bb)+_0x416d4f['status'];_0x416d4f[_0x40ccb6(0x1b1)+_0x40ccb6(0x1e3)]&&_0x416d4f['skippedFol'+_0x40ccb6(0x1e3)][_0x40ccb6(0x1d0)]>0x0&&(_0x5e14d0+=_0x40ccb6(0x1e0)+'folders\x20('+_0x416d4f['skippedFol'+_0x40ccb6(0x1e3)]['length']+_0x40ccb6(0x1c8)+_0x416d4f[_0x40ccb6(0x1b1)+'ders'][_0x40ccb6(0x1b9)](',\x20'));const _0x4be231={};_0x4be231['type']=_0x40ccb6(0x1b3),_0x4be231[_0x40ccb6(0x1b3)]=_0x5e14d0;const _0x13fd7b={};_0x13fd7b[_0x40ccb6(0x1cd)]=_0x416d4f['analysisId'],_0x13fd7b['status']=_0x416d4f[_0x40ccb6(0x1ab)],_0x13fd7b[_0x40ccb6(0x1c7)]=_0x4d2e03,_0x13fd7b[_0x40ccb6(0x1b1)+_0x40ccb6(0x1e3)]=_0x416d4f[_0x40ccb6(0x1b1)+'ders'];const _0x465c8f={};return _0x465c8f[_0x40ccb6(0x1e4)]=[_0x4be231],_0x465c8f[_0x40ccb6(0x1c4)+_0x40ccb6(0x1bc)]=_0x13fd7b,_0x465c8f;}}catch(_0x580938){logger[_0x40ccb6(0x1cb)]('Folder\x20sec'+_0x40ccb6(0x1d2)+_0x40ccb6(0x1ef)+'d:',_0x580938);const _0x301535={};_0x301535[_0x40ccb6(0x1c3)]=_0x40ccb6(0x1b3),_0x301535['text']=_0x40ccb6(0x1af)+'nalysis\x20re'+'quest\x20fail'+_0x40ccb6(0x1d5)+(_0x580938 instanceof Error?_0x580938[_0x40ccb6(0x1f0)]:_0x40ccb6(0x1fe)+_0x40ccb6(0x1c5));const _0x4ce7e0={};_0x4ce7e0['error']=_0x580938 instanceof Error?_0x580938[_0x40ccb6(0x1f0)]:_0x2a10c2[_0x40ccb6(0x1b2)];const _0x25c953={};return _0x25c953[_0x40ccb6(0x1e4)]=[_0x301535],_0x25c953[_0x40ccb6(0x1c4)+_0x40ccb6(0x1bc)]=_0x4ce7e0,_0x25c953;}}async[a5_0x55aaf0(0x1f8)+a5_0x55aaf0(0x200)]({zipFilePath:_0x4e960c,zipFileName:_0x4b6e9e}){const _0x38aff5=a5_0x55aaf0;try{if(!_0x4e960c||_0x4e960c[_0x38aff5(0x1f1)]()[_0x38aff5(0x1d0)]===0x0){const _0x1be34e={};_0x1be34e[_0x38aff5(0x1c3)]='text',_0x1be34e[_0x38aff5(0x1b3)]=_0x38aff5(0x1ee)+_0x38aff5(0x1e9)+_0x38aff5(0x1ae);const _0x2ec28d={};_0x2ec28d[_0x38aff5(0x1cb)]='ZIP\x20file\x20p'+_0x38aff5(0x1e9)+_0x38aff5(0x1d8);const _0x497451={};return _0x497451['content']=[_0x1be34e],_0x497451['structured'+_0x38aff5(0x1bc)]=_0x2ec28d,_0x497451;}logger['info'](_0x38aff5(0x1be)+'ecurity\x20an'+_0x38aff5(0x1fa)+_0x38aff5(0x1f6)+_0x4e960c);const _0x356aaf=await this['analysisSe'+_0x38aff5(0x1b5)][_0x38aff5(0x1f8)+_0x38aff5(0x1d9)](_0x4e960c,_0x4b6e9e),_0x3c038f=_0x38aff5(0x1af)+_0x38aff5(0x201)+_0x38aff5(0x1c1)+_0x38aff5(0x1c9)+'\x20'+_0x4e960c+('\x0aAnalysis\x20'+'ID:\x20')+_0x356aaf[_0x38aff5(0x1cd)]+_0x38aff5(0x1bb)+_0x356aaf['status'],_0x1c3833={};_0x1c3833[_0x38aff5(0x1c3)]=_0x38aff5(0x1b3),_0x1c3833['text']=_0x3c038f;const _0x2940c2={};_0x2940c2[_0x38aff5(0x1cd)]=_0x356aaf[_0x38aff5(0x1cd)],_0x2940c2[_0x38aff5(0x1ab)]=_0x356aaf[_0x38aff5(0x1ab)],_0x2940c2['zipFilePat'+'h']=_0x4e960c;const _0x1dd22c={};return _0x1dd22c[_0x38aff5(0x1e4)]=[_0x1c3833],_0x1dd22c['structured'+_0x38aff5(0x1bc)]=_0x2940c2,_0x1dd22c;}catch(_0x23202f){logger[_0x38aff5(0x1cb)](_0x38aff5(0x1be)+'ecurity\x20an'+_0x38aff5(0x1a7)+_0x38aff5(0x1e5),_0x23202f);const _0x4bb3e2={};_0x4bb3e2[_0x38aff5(0x1c3)]=_0x38aff5(0x1b3),_0x4bb3e2[_0x38aff5(0x1b3)]=_0x38aff5(0x1af)+_0x38aff5(0x1a9)+_0x38aff5(0x1ff)+_0x38aff5(0x1d5)+(_0x23202f instanceof Error?_0x23202f[_0x38aff5(0x1f0)]:_0x38aff5(0x1fe)+_0x38aff5(0x1c5));const _0x4953a8={};_0x4953a8[_0x38aff5(0x1cb)]=_0x23202f instanceof Error?_0x23202f[_0x38aff5(0x1f0)]:_0x38aff5(0x1fe)+_0x38aff5(0x1c5);const _0x57a6e8={};return _0x57a6e8[_0x38aff5(0x1e4)]=[_0x4bb3e2],_0x57a6e8[_0x38aff5(0x1c4)+_0x38aff5(0x1bc)]=_0x4953a8,_0x57a6e8;}}}
@@ -0,0 +1,119 @@
1
+ import { AnalysisService } from '../services/analysis.service.js';
2
+ export declare class ScaController {
3
+ private analysisService;
4
+ constructor(analysisService: AnalysisService);
5
+ analyzeFileSca({ filePath, zipFileName }: {
6
+ filePath: string;
7
+ zipFileName?: string;
8
+ }): Promise<{
9
+ content: {
10
+ type: "text";
11
+ text: string;
12
+ }[];
13
+ structuredContent: {
14
+ error: string;
15
+ analysisId?: undefined;
16
+ status?: undefined;
17
+ filePath?: undefined;
18
+ analysisType?: undefined;
19
+ };
20
+ } | {
21
+ content: {
22
+ type: "text";
23
+ text: string;
24
+ }[];
25
+ structuredContent: {
26
+ analysisId: string;
27
+ status: string;
28
+ filePath: string;
29
+ analysisType: string;
30
+ error?: undefined;
31
+ };
32
+ }>;
33
+ analyzeFilesSca({ filePaths, zipFileName }: {
34
+ filePaths: string[];
35
+ zipFileName?: string;
36
+ }): Promise<{
37
+ content: {
38
+ type: "text";
39
+ text: string;
40
+ }[];
41
+ structuredContent: {
42
+ error: string;
43
+ analysisId?: undefined;
44
+ status?: undefined;
45
+ filePathCount?: undefined;
46
+ analysisType?: undefined;
47
+ };
48
+ } | {
49
+ content: {
50
+ type: "text";
51
+ text: string;
52
+ }[];
53
+ structuredContent: {
54
+ analysisId: string;
55
+ status: string;
56
+ filePathCount: number;
57
+ analysisType: string;
58
+ error?: undefined;
59
+ };
60
+ }>;
61
+ analyzeFolderSca({ folderPath, zipFileName }: {
62
+ folderPath: string;
63
+ zipFileName?: string;
64
+ }): Promise<{
65
+ content: {
66
+ type: "text";
67
+ text: string;
68
+ }[];
69
+ structuredContent: {
70
+ error: string;
71
+ analysisId?: undefined;
72
+ status?: undefined;
73
+ folderPath?: undefined;
74
+ analysisType?: undefined;
75
+ skippedFolders?: undefined;
76
+ };
77
+ } | {
78
+ content: {
79
+ type: "text";
80
+ text: string;
81
+ }[];
82
+ structuredContent: {
83
+ analysisId: string;
84
+ status: string;
85
+ folderPath: string;
86
+ analysisType: string;
87
+ skippedFolders: string[] | undefined;
88
+ error?: undefined;
89
+ };
90
+ }>;
91
+ analyzeZipSca({ zipFilePath, zipFileName }: {
92
+ zipFilePath: string;
93
+ zipFileName?: string;
94
+ }): Promise<{
95
+ content: {
96
+ type: "text";
97
+ text: string;
98
+ }[];
99
+ structuredContent: {
100
+ error: string;
101
+ analysisId?: undefined;
102
+ status?: undefined;
103
+ zipFilePath?: undefined;
104
+ analysisType?: undefined;
105
+ };
106
+ } | {
107
+ content: {
108
+ type: "text";
109
+ text: string;
110
+ }[];
111
+ structuredContent: {
112
+ analysisId: string;
113
+ status: string;
114
+ zipFilePath: string;
115
+ analysisType: string;
116
+ error?: undefined;
117
+ };
118
+ }>;
119
+ }
@@ -0,0 +1 @@
1
+ const a6_0x354016=a6_0x3a34;(function(_0x164119,_0x314d10){const _0x43f4f4=a6_0x3a34,_0x5364d9=_0x164119();while(!![]){try{const _0x422a12=parseInt(_0x43f4f4(0x1f8))/0x1+parseInt(_0x43f4f4(0x1e0))/0x2+-parseInt(_0x43f4f4(0x1da))/0x3+parseInt(_0x43f4f4(0x1a5))/0x4+parseInt(_0x43f4f4(0x19a))/0x5*(-parseInt(_0x43f4f4(0x1ba))/0x6)+parseInt(_0x43f4f4(0x1a1))/0x7*(-parseInt(_0x43f4f4(0x1a9))/0x8)+parseInt(_0x43f4f4(0x1d4))/0x9;if(_0x422a12===_0x314d10)break;else _0x5364d9['push'](_0x5364d9['shift']());}catch(_0x57afb1){_0x5364d9['push'](_0x5364d9['shift']());}}}(a6_0x2b09,0x4f614));const a6_0x2b1196=(function(){let _0x5cf499=!![];return function(_0x59374c,_0x3f5834){const _0x5e148f=_0x5cf499?function(){const _0x2e5dec=a6_0x3a34;if(_0x3f5834){const _0x2e0652=_0x3f5834[_0x2e5dec(0x1f5)](_0x59374c,arguments);return _0x3f5834=null,_0x2e0652;}}:function(){};return _0x5cf499=![],_0x5e148f;};}()),a6_0x1645a5=a6_0x2b1196(this,function(){const _0x6b0a21=a6_0x3a34;return a6_0x1645a5['toString']()['search'](_0x6b0a21(0x1ec)+'+$')[_0x6b0a21(0x1ed)]()[_0x6b0a21(0x1a7)+'r'](a6_0x1645a5)[_0x6b0a21(0x1a4)](_0x6b0a21(0x1ec)+'+$');});a6_0x1645a5();import{logger}from'../utils/logger.js';function a6_0x2b09(){const _0x17108e=['text','349458IritEa','esSca','status','ath\x20not\x20pr','\x20requires\x20','rvice','message','analyzeZip','ZIP\x20file\x20S','s\x20failed:','\x20failed:\x20','\x20SCA\x20analy','):\x20','ded','sis\x20reques','failed:','analyzeFil','sted:\x20','er:\x20','ided.','Folder\x20pat','unt','ed.','is\x20request','length','error','4331016WRKmQs','content','is\x20has\x20sta','SCA\x20analys','File\x20path\x20','ZIP\x20file\x20p','1393113NAylZk','analysisSe','ders','File\x20paths','ID:\x20','ovided','660942pRxgby','h\x20not\x20prov','File:\x20','d:\x20','derSca','o\x20analyze.','not\x20provid','skippedFol','CA\x20analysi','Content','info','ror','(((.+)+)+)','toString','\x20paths:\x20','EtZHx','trim','e\x20SCA\x20anal','DGflO','requested:','filePath','apply','aths\x20array','ted:\x20','632531GlTNKW','\x0a\x0aSkipped\x20','5MTPiVp','type','folders\x20(','rted.\x0aFold','analysisId','\x0aAnalysis\x20','at\x20least\x20o','4487203BRoCes','Sca','ysis\x20reque','search','178228HUFNzP','filePathCo','constructo','analyzeFol','8thfAZY','\x0aStatus:\x20','Folder\x20SCA','sis\x20failed','Type:\x20','structured','hnGCN','\x20The\x20fileP','No\x20files\x20t','Single\x20fil','join','\x20not\x20provi','analysisTy','zipFilePat','rted.\x0aFile','Unknown\x20er'];a6_0x2b09=function(){return _0x17108e;};return a6_0x2b09();}function a6_0x3a34(_0x407948,_0x350899){_0x407948=_0x407948-0x19a;const _0x248aad=a6_0x2b09();let _0x1645a5=_0x248aad[_0x407948];return _0x1645a5;}export class ScaController{['analysisSe'+a6_0x354016(0x1bf)];constructor(_0x3a88bc){const _0x49446b=a6_0x354016;this[_0x49446b(0x1db)+_0x49446b(0x1bf)]=_0x3a88bc;}async[a6_0x354016(0x1ca)+'eSca']({filePath:_0x5340bc,zipFileName:_0x80f8b6}){const _0x4fc167=a6_0x354016,_0x54b66b={};_0x54b66b[_0x4fc167(0x1f2)]=function(_0x3c8983,_0x3dc3ce){return _0x3c8983 instanceof _0x3dc3ce;},_0x54b66b['hnGCN']=_0x4fc167(0x1b8)+_0x4fc167(0x1eb);const _0x13dac3=_0x54b66b;try{if(!_0x5340bc||_0x5340bc[_0x4fc167(0x1f0)]()[_0x4fc167(0x1d2)]===0x0){const _0x1b524c={};_0x1b524c['type']=_0x4fc167(0x1b9),_0x1b524c[_0x4fc167(0x1b9)]=_0x4fc167(0x1d8)+_0x4fc167(0x1e6)+_0x4fc167(0x1d0);const _0x4cb4e4={};_0x4cb4e4['error']='File\x20path\x20'+_0x4fc167(0x1e6)+'ed';const _0x3627c4={};return _0x3627c4['content']=[_0x1b524c],_0x3627c4[_0x4fc167(0x1ae)+'Content']=_0x4cb4e4,_0x3627c4;}logger[_0x4fc167(0x1ea)](_0x4fc167(0x1b2)+_0x4fc167(0x1f1)+_0x4fc167(0x1a3)+_0x4fc167(0x1cb)+_0x5340bc);const _0x53b6d1=await this['analysisSe'+_0x4fc167(0x1bf)]['analyzeFil'+'eSca'](_0x5340bc,_0x80f8b6),_0x19be01='SCA\x20analys'+_0x4fc167(0x1d6)+_0x4fc167(0x1b7)+':\x20'+_0x5340bc+('\x0aAnalysis\x20'+_0x4fc167(0x1de))+_0x53b6d1[_0x4fc167(0x19e)]+'\x0aStatus:\x20'+_0x53b6d1[_0x4fc167(0x1bc)]+('\x0aAnalysis\x20'+_0x4fc167(0x1ad))+_0x53b6d1[_0x4fc167(0x1b5)+'pe'],_0x2878d6={};_0x2878d6[_0x4fc167(0x19b)]='text',_0x2878d6['text']=_0x19be01;const _0x313924={};_0x313924[_0x4fc167(0x19e)]=_0x53b6d1[_0x4fc167(0x19e)],_0x313924['status']=_0x53b6d1[_0x4fc167(0x1bc)],_0x313924[_0x4fc167(0x1f4)]=_0x5340bc,_0x313924[_0x4fc167(0x1b5)+'pe']=_0x53b6d1[_0x4fc167(0x1b5)+'pe'];const _0x2cd85c={};return _0x2cd85c[_0x4fc167(0x1d5)]=[_0x2878d6],_0x2cd85c[_0x4fc167(0x1ae)+'Content']=_0x313924,_0x2cd85c;}catch(_0x526109){return logger[_0x4fc167(0x1d3)](_0x4fc167(0x1b2)+_0x4fc167(0x1f1)+'ysis\x20faile'+'d:',_0x526109),{'content':[{'type':_0x4fc167(0x1b9),'text':_0x4fc167(0x1d7)+_0x4fc167(0x1d1)+_0x4fc167(0x1c4)+(_0x13dac3['DGflO'](_0x526109,Error)?_0x526109['message']:_0x13dac3[_0x4fc167(0x1af)])}],'structuredContent':{'error':_0x526109 instanceof Error?_0x526109[_0x4fc167(0x1c0)]:'Unknown\x20er'+_0x4fc167(0x1eb)}};}}async['analyzeFil'+a6_0x354016(0x1bb)]({filePaths:_0x1fc027,zipFileName:_0x7919eb}){const _0x131178=a6_0x354016,_0x570a61={};_0x570a61[_0x131178(0x1ef)]=_0x131178(0x1b1)+_0x131178(0x1e5)+_0x131178(0x1b0)+_0x131178(0x1f6)+_0x131178(0x1be)+_0x131178(0x1a0)+'ne\x20file\x20pa'+'th.';const _0x3c2a54=_0x570a61;try{if(!_0x1fc027||_0x1fc027[_0x131178(0x1d2)]===0x0){const _0x171a27={};_0x171a27[_0x131178(0x19b)]=_0x131178(0x1b9),_0x171a27['text']=_0x3c2a54['EtZHx'];const _0x226654={};_0x226654[_0x131178(0x1d3)]=_0x131178(0x1dd)+_0x131178(0x1b4)+_0x131178(0x1c7);const _0x35a9c3={};return _0x35a9c3['content']=[_0x171a27],_0x35a9c3['structured'+_0x131178(0x1e9)]=_0x226654,_0x35a9c3;}logger[_0x131178(0x1ea)]('Multi-file'+_0x131178(0x1c5)+_0x131178(0x1c8)+_0x131178(0x1f7)+_0x1fc027[_0x131178(0x1d2)]+('\x20file\x20path'+'s'));const _0x53fb0c=await this[_0x131178(0x1db)+_0x131178(0x1bf)][_0x131178(0x1ca)+_0x131178(0x1bb)](_0x1fc027,_0x7919eb),_0x396b76=_0x131178(0x1d7)+_0x131178(0x1d6)+'rted.\x0aNumb'+'er\x20of\x20file'+_0x131178(0x1ee)+_0x1fc027['length']+('\x0aAnalysis\x20'+_0x131178(0x1de))+_0x53fb0c[_0x131178(0x19e)]+_0x131178(0x1aa)+_0x53fb0c[_0x131178(0x1bc)]+(_0x131178(0x19f)+_0x131178(0x1ad))+_0x53fb0c['analysisTy'+'pe'],_0x8ffc6e={};_0x8ffc6e[_0x131178(0x19b)]=_0x131178(0x1b9),_0x8ffc6e['text']=_0x396b76;const _0x452f4f={};_0x452f4f['analysisId']=_0x53fb0c[_0x131178(0x19e)],_0x452f4f[_0x131178(0x1bc)]=_0x53fb0c[_0x131178(0x1bc)],_0x452f4f[_0x131178(0x1a6)+_0x131178(0x1cf)]=_0x1fc027['length'],_0x452f4f[_0x131178(0x1b5)+'pe']=_0x53fb0c[_0x131178(0x1b5)+'pe'];const _0x4d5db6={};return _0x4d5db6['content']=[_0x8ffc6e],_0x4d5db6[_0x131178(0x1ae)+_0x131178(0x1e9)]=_0x452f4f,_0x4d5db6;}catch(_0x390c19){logger[_0x131178(0x1d3)]('Multi-file'+_0x131178(0x1c5)+_0x131178(0x1ac)+':',_0x390c19);const _0x67f3d6={};_0x67f3d6[_0x131178(0x19b)]='text',_0x67f3d6[_0x131178(0x1b9)]='SCA\x20analys'+'is\x20request'+_0x131178(0x1c4)+(_0x390c19 instanceof Error?_0x390c19['message']:_0x131178(0x1b8)+_0x131178(0x1eb));const _0x1ae38b={};_0x1ae38b[_0x131178(0x1d3)]=_0x390c19 instanceof Error?_0x390c19[_0x131178(0x1c0)]:_0x131178(0x1b8)+'ror';const _0x3b7d4b={};return _0x3b7d4b['content']=[_0x67f3d6],_0x3b7d4b[_0x131178(0x1ae)+_0x131178(0x1e9)]=_0x1ae38b,_0x3b7d4b;}}async[a6_0x354016(0x1a8)+a6_0x354016(0x1e4)]({folderPath:_0xecafd7,zipFileName:_0x1acca9}){const _0x4cffe3=a6_0x354016;try{if(!_0xecafd7||_0xecafd7[_0x4cffe3(0x1f0)]()[_0x4cffe3(0x1d2)]===0x0){const _0x417212={};_0x417212[_0x4cffe3(0x19b)]='text',_0x417212[_0x4cffe3(0x1b9)]=_0x4cffe3(0x1ce)+_0x4cffe3(0x1e1)+_0x4cffe3(0x1cd);const _0x5ac158={};_0x5ac158[_0x4cffe3(0x1d3)]=_0x4cffe3(0x1ce)+_0x4cffe3(0x1e1)+'ided';const _0x1a0880={};return _0x1a0880['content']=[_0x417212],_0x1a0880[_0x4cffe3(0x1ae)+'Content']=_0x5ac158,_0x1a0880;}logger[_0x4cffe3(0x1ea)](_0x4cffe3(0x1ab)+'\x20analysis\x20'+_0x4cffe3(0x1f3)+'\x20'+_0xecafd7);const _0x4abb73=await this[_0x4cffe3(0x1db)+_0x4cffe3(0x1bf)][_0x4cffe3(0x1a8)+_0x4cffe3(0x1e4)](_0xecafd7,_0x1acca9);let _0x594d93=_0x4cffe3(0x1d7)+_0x4cffe3(0x1d6)+_0x4cffe3(0x19d)+_0x4cffe3(0x1cc)+_0xecafd7+('\x0aAnalysis\x20'+_0x4cffe3(0x1de))+_0x4abb73['analysisId']+_0x4cffe3(0x1aa)+_0x4abb73['status']+(_0x4cffe3(0x19f)+_0x4cffe3(0x1ad))+_0x4abb73['analysisTy'+'pe'];_0x4abb73[_0x4cffe3(0x1e7)+_0x4cffe3(0x1dc)]&&_0x4abb73['skippedFol'+_0x4cffe3(0x1dc)][_0x4cffe3(0x1d2)]>0x0&&(_0x594d93+=_0x4cffe3(0x1f9)+_0x4cffe3(0x19c)+_0x4abb73[_0x4cffe3(0x1e7)+_0x4cffe3(0x1dc)][_0x4cffe3(0x1d2)]+_0x4cffe3(0x1c6)+_0x4abb73['skippedFol'+_0x4cffe3(0x1dc)][_0x4cffe3(0x1b3)](',\x20'));const _0x326a3c={};_0x326a3c[_0x4cffe3(0x19b)]=_0x4cffe3(0x1b9),_0x326a3c[_0x4cffe3(0x1b9)]=_0x594d93;const _0x44d18a={};_0x44d18a[_0x4cffe3(0x19e)]=_0x4abb73[_0x4cffe3(0x19e)],_0x44d18a[_0x4cffe3(0x1bc)]=_0x4abb73['status'],_0x44d18a['folderPath']=_0xecafd7,_0x44d18a[_0x4cffe3(0x1b5)+'pe']=_0x4abb73['analysisTy'+'pe'],_0x44d18a['skippedFol'+'ders']=_0x4abb73['skippedFol'+'ders'];const _0x3a77a7={};return _0x3a77a7['content']=[_0x326a3c],_0x3a77a7[_0x4cffe3(0x1ae)+_0x4cffe3(0x1e9)]=_0x44d18a,_0x3a77a7;}catch(_0x4f6966){logger[_0x4cffe3(0x1d3)]('Folder\x20SCA'+'\x20analysis\x20'+_0x4cffe3(0x1c9),_0x4f6966);const _0x143d75={};_0x143d75[_0x4cffe3(0x19b)]='text',_0x143d75['text']=_0x4cffe3(0x1d7)+_0x4cffe3(0x1d1)+'\x20failed:\x20'+(_0x4f6966 instanceof Error?_0x4f6966['message']:_0x4cffe3(0x1b8)+'ror');const _0x2933c5={};_0x2933c5[_0x4cffe3(0x1d3)]=_0x4f6966 instanceof Error?_0x4f6966[_0x4cffe3(0x1c0)]:_0x4cffe3(0x1b8)+'ror';const _0x140d9a={};return _0x140d9a['content']=[_0x143d75],_0x140d9a[_0x4cffe3(0x1ae)+_0x4cffe3(0x1e9)]=_0x2933c5,_0x140d9a;}}async[a6_0x354016(0x1c1)+a6_0x354016(0x1a2)]({zipFilePath:_0x2d9bf4,zipFileName:_0x37e81b}){const _0x436963=a6_0x354016,_0xc0a7c={};_0xc0a7c['LcYbb']=_0x436963(0x1b8)+_0x436963(0x1eb);const _0x42002b=_0xc0a7c;try{if(!_0x2d9bf4||_0x2d9bf4['trim']()['length']===0x0){const _0x2b8311={};_0x2b8311['type']=_0x436963(0x1b9),_0x2b8311[_0x436963(0x1b9)]=_0x436963(0x1d9)+'ath\x20not\x20pr'+'ovided.';const _0x3822b2={};_0x3822b2[_0x436963(0x1d3)]='ZIP\x20file\x20p'+_0x436963(0x1bd)+_0x436963(0x1df);const _0x360c28={};return _0x360c28[_0x436963(0x1d5)]=[_0x2b8311],_0x360c28[_0x436963(0x1ae)+_0x436963(0x1e9)]=_0x3822b2,_0x360c28;}logger[_0x436963(0x1ea)](_0x436963(0x1c2)+'CA\x20analysi'+'s\x20requeste'+_0x436963(0x1e3)+_0x2d9bf4);const _0xf383c4=await this[_0x436963(0x1db)+_0x436963(0x1bf)][_0x436963(0x1c1)+_0x436963(0x1a2)](_0x2d9bf4,_0x37e81b),_0x45ba00=_0x436963(0x1d7)+_0x436963(0x1d6)+'rted.\x0aZIP\x20'+_0x436963(0x1e2)+_0x2d9bf4+(_0x436963(0x19f)+'ID:\x20')+_0xf383c4[_0x436963(0x19e)]+_0x436963(0x1aa)+_0xf383c4[_0x436963(0x1bc)]+('\x0aAnalysis\x20'+_0x436963(0x1ad))+_0xf383c4[_0x436963(0x1b5)+'pe'],_0x563515={};_0x563515[_0x436963(0x19b)]='text',_0x563515['text']=_0x45ba00;const _0x257e24={};_0x257e24['analysisId']=_0xf383c4[_0x436963(0x19e)],_0x257e24[_0x436963(0x1bc)]=_0xf383c4[_0x436963(0x1bc)],_0x257e24[_0x436963(0x1b6)+'h']=_0x2d9bf4,_0x257e24[_0x436963(0x1b5)+'pe']=_0xf383c4[_0x436963(0x1b5)+'pe'];const _0x2f0b82={};return _0x2f0b82[_0x436963(0x1d5)]=[_0x563515],_0x2f0b82[_0x436963(0x1ae)+_0x436963(0x1e9)]=_0x257e24,_0x2f0b82;}catch(_0x3b8732){logger[_0x436963(0x1d3)](_0x436963(0x1c2)+_0x436963(0x1e8)+_0x436963(0x1c3),_0x3b8732);const _0x8c820={};_0x8c820[_0x436963(0x19b)]=_0x436963(0x1b9),_0x8c820[_0x436963(0x1b9)]=_0x436963(0x1d7)+_0x436963(0x1d1)+_0x436963(0x1c4)+(_0x3b8732 instanceof Error?_0x3b8732['message']:'Unknown\x20er'+_0x436963(0x1eb));const _0x53cf9e={};_0x53cf9e['error']=_0x3b8732 instanceof Error?_0x3b8732[_0x436963(0x1c0)]:_0x42002b['LcYbb'];const _0x418be7={};return _0x418be7[_0x436963(0x1d5)]=[_0x8c820],_0x418be7[_0x436963(0x1ae)+_0x436963(0x1e9)]=_0x53cf9e,_0x418be7;}}}
@@ -0,0 +1,30 @@
1
+ import { AnalysisService } from '../services/analysis.service.js';
2
+ export declare class SecurityController {
3
+ private analysisService;
4
+ constructor(analysisService: AnalysisService);
5
+ generateSecureCode({ analysisId, fileContent }: {
6
+ analysisId: string;
7
+ fileContent: string;
8
+ }): Promise<{
9
+ content: {
10
+ type: "text";
11
+ text: string;
12
+ }[];
13
+ structuredContent: {
14
+ analysisId: string;
15
+ secureCode: string;
16
+ secureCodeBrief: string;
17
+ diff: string;
18
+ };
19
+ isError?: undefined;
20
+ } | {
21
+ content: {
22
+ type: "text";
23
+ text: string;
24
+ }[];
25
+ structuredContent: {
26
+ error: string;
27
+ };
28
+ isError: boolean;
29
+ }>;
30
+ }
@@ -0,0 +1 @@
1
+ const a7_0xf3c43a=a7_0x13e1;function a7_0x13e1(_0x569622,_0x56bc8a){_0x569622=_0x569622-0x9d;const _0x1dfaa6=a7_0x5c30();let _0x560470=_0x1dfaa6[_0x569622];return _0x560470;}function a7_0x5c30(){const _0x35918c=['159920gSmICD','apply','length','ror','Secure\x20cod','191840beyUvL','lts\x0a\x0a##\x20Se','3515697YavEKC','Unknown\x20er','Failed\x20to\x20','wing\x20','diff','secureCode','\x0a```\x0a\x20\x20\x20\x20\x20','7214430WpqjRK','ff\x0a','\x20character','info','189668eweeaq','cureCodeFr','ecure\x20code','toString','\x0a\x0a##\x20Code\x20','63YGAXvj','36fqBFIm','type','ed:\x20','599958YcihVe','content','e\x20generati','constructo','16tYQQnc','rvice','analysisSe','ation\x20Resu','omAnalysis','\x0a\x0a...\x20(Sho','\x20Briefing\x0a','Content','cure\x20Code\x0a','text','(((.+)+)+)','isError','\x0a#\x20Secure\x20','212094wkJuoi','generate\x20s','generateSe','on\x20request','Code\x20Gener','iff)\x0a```di','search','Brief','ecure\x20Code','structured','error'];a7_0x5c30=function(){return _0x35918c;};return a7_0x5c30();}(function(_0x3ca01a,_0x23c3dd){const _0x1862ba=a7_0x13e1,_0x21b4f2=_0x3ca01a();while(!![]){try{const _0x4a6b56=parseInt(_0x1862ba(0xcf))/0x1+-parseInt(_0x1862ba(0xa1))/0x2+-parseInt(_0x1862ba(0xb2))/0x3*(parseInt(_0x1862ba(0xa5))/0x4)+parseInt(_0x1862ba(0xc2))/0x5*(parseInt(_0x1862ba(0x9e))/0x6)+parseInt(_0x1862ba(0x9d))/0x7*(parseInt(_0x1862ba(0xbd))/0x8)+-parseInt(_0x1862ba(0xc4))/0x9+parseInt(_0x1862ba(0xcb))/0xa;if(_0x4a6b56===_0x23c3dd)break;else _0x21b4f2['push'](_0x21b4f2['shift']());}catch(_0x5aae3f){_0x21b4f2['push'](_0x21b4f2['shift']());}}}(a7_0x5c30,0x54eb1));const a7_0x471797=(function(){let _0x12a087=!![];return function(_0x50edf6,_0x3d7961){const _0x52179f=_0x12a087?function(){const _0x20adc8=a7_0x13e1;if(_0x3d7961){const _0xba475d=_0x3d7961[_0x20adc8(0xbe)](_0x50edf6,arguments);return _0x3d7961=null,_0xba475d;}}:function(){};return _0x12a087=![],_0x52179f;};}()),a7_0x560470=a7_0x471797(this,function(){const _0x2a1509=a7_0x13e1;return a7_0x560470['toString']()[_0x2a1509(0xb8)](_0x2a1509(0xaf)+'+$')[_0x2a1509(0xd2)]()[_0x2a1509(0xa4)+'r'](a7_0x560470)['search'](_0x2a1509(0xaf)+'+$');});a7_0x560470();import{logger}from'../utils/logger.js';export class SecurityController{[a7_0xf3c43a(0xa7)+a7_0xf3c43a(0xa6)];constructor(_0x570351){const _0x54174d=a7_0xf3c43a;this[_0x54174d(0xa7)+'rvice']=_0x570351;}async[a7_0xf3c43a(0xb4)+'cureCode']({analysisId:_0x35caad,fileContent:_0x1b3499}){const _0x3b6df3=a7_0xf3c43a,_0x6ad1b7={'Eftxa':function(_0x3c8166,_0x5bbf7d,_0x2108f6){return _0x3c8166(_0x5bbf7d,_0x2108f6);},'GdyMc':function(_0x299ecd,_0xbdc46b,_0x52bae6){return _0x299ecd(_0xbdc46b,_0x52bae6);}};try{logger[_0x3b6df3(0xce)](_0x3b6df3(0xc1)+_0x3b6df3(0xa3)+_0x3b6df3(0xb5)+_0x3b6df3(0xa0)+_0x35caad);const _0x46b6ef=await this[_0x3b6df3(0xa7)+_0x3b6df3(0xa6)][_0x3b6df3(0xb4)+_0x3b6df3(0xd0)+_0x3b6df3(0xa9)](_0x35caad,_0x1b3499),_0x572f28=0x7a120,_0x3014b0=(_0x4bb8d3,_0x3a9904)=>{const _0x2719f2=_0x3b6df3;if(_0x4bb8d3[_0x2719f2(0xbf)]<=_0x3a9904)return _0x4bb8d3;return _0x4bb8d3['substring'](0x0,_0x3a9904)+(_0x2719f2(0xaa)+_0x2719f2(0xc7)+_0x3a9904+'\x20of\x20'+_0x4bb8d3[_0x2719f2(0xbf)]+(_0x2719f2(0xcd)+'s)'));},_0x3ddda0=(_0x3b6df3(0xb1)+_0x3b6df3(0xb6)+_0x3b6df3(0xa8)+_0x3b6df3(0xc3)+_0x3b6df3(0xad)+'```java\x0a'+_0x6ad1b7['Eftxa'](_0x3014b0,_0x46b6ef[_0x3b6df3(0xc9)],_0x572f28)+('\x0a```\x0a\x0a##\x20S'+_0x3b6df3(0xba)+_0x3b6df3(0xab))+_0x3014b0(_0x46b6ef[_0x3b6df3(0xc9)+_0x3b6df3(0xb9)],_0x572f28)+(_0x3b6df3(0xd3)+'Changes\x20(D'+_0x3b6df3(0xb7)+_0x3b6df3(0xcc))+_0x3014b0(_0x46b6ef[_0x3b6df3(0xc8)],_0x572f28)+(_0x3b6df3(0xca)+'\x20'))['trim'](),_0x50b3a3={'analysisId':_0x35caad,'secureCode':_0x3014b0(_0x46b6ef[_0x3b6df3(0xc9)],_0x572f28),'secureCodeBrief':_0x6ad1b7['GdyMc'](_0x3014b0,_0x46b6ef['secureCode'+_0x3b6df3(0xb9)],_0x572f28),'diff':_0x3014b0(_0x46b6ef[_0x3b6df3(0xc8)],_0x572f28)},_0x3bd821={};_0x3bd821[_0x3b6df3(0x9f)]='text',_0x3bd821['text']=_0x3ddda0;const _0x12bdc0={};return _0x12bdc0[_0x3b6df3(0xa2)]=[_0x3bd821],_0x12bdc0[_0x3b6df3(0xbb)+_0x3b6df3(0xac)]=_0x50b3a3,_0x12bdc0;}catch(_0x2b2e49){logger[_0x3b6df3(0xbc)](_0x3b6df3(0xc6)+_0x3b6df3(0xb3)+_0x3b6df3(0xd1)+':',_0x2b2e49);const _0x119bf6=_0x2b2e49 instanceof Error?_0x2b2e49['message']:_0x3b6df3(0xc5)+_0x3b6df3(0xc0),_0x48aaeb={};_0x48aaeb['type']='text',_0x48aaeb[_0x3b6df3(0xae)]=_0x3b6df3(0xc6)+_0x3b6df3(0xb3)+_0x3b6df3(0xd1)+':\x20'+_0x119bf6;const _0x345840={};_0x345840[_0x3b6df3(0xbc)]=_0x119bf6;const _0x35d849={};return _0x35d849['content']=[_0x48aaeb],_0x35d849[_0x3b6df3(0xbb)+_0x3b6df3(0xac)]=_0x345840,_0x35d849[_0x3b6df3(0xb0)]=!![],_0x35d849;}}}
@@ -0,0 +1,2 @@
1
+ export declare class SystemController {
2
+ }
@@ -0,0 +1 @@
1
+ (function(_0x329648,_0x5db291){var _0x20b633=a8_0x5aaf,_0x4a2286=_0x329648();while(!![]){try{var _0x346313=-parseInt(_0x20b633(0x1dc))/0x1+-parseInt(_0x20b633(0x1df))/0x2+parseInt(_0x20b633(0x1e0))/0x3+-parseInt(_0x20b633(0x1db))/0x4+parseInt(_0x20b633(0x1d9))/0x5*(parseInt(_0x20b633(0x1e1))/0x6)+-parseInt(_0x20b633(0x1dd))/0x7*(parseInt(_0x20b633(0x1d8))/0x8)+parseInt(_0x20b633(0x1e3))/0x9;if(_0x346313===_0x5db291)break;else _0x4a2286['push'](_0x4a2286['shift']());}catch(_0x4326d1){_0x4a2286['push'](_0x4a2286['shift']());}}}(a8_0x3250,0xd5399));var a8_0x171436=(function(){var _0x183028=!![];return function(_0x5dfd4d,_0x56bd62){var _0x31cf91=_0x183028?function(){if(_0x56bd62){var _0x3da340=_0x56bd62['apply'](_0x5dfd4d,arguments);return _0x56bd62=null,_0x3da340;}}:function(){};return _0x183028=![],_0x31cf91;};}()),a8_0x4f2b99=a8_0x171436(this,function(){var _0x1e7a32=a8_0x5aaf;return a8_0x4f2b99[_0x1e7a32(0x1de)]()[_0x1e7a32(0x1e2)](_0x1e7a32(0x1da)+'+$')[_0x1e7a32(0x1de)]()[_0x1e7a32(0x1d7)+'r'](a8_0x4f2b99)[_0x1e7a32(0x1e2)](_0x1e7a32(0x1da)+'+$');});function a8_0x5aaf(_0x4b4368,_0x561212){_0x4b4368=_0x4b4368-0x1d7;var _0x4d3c3c=a8_0x3250();var _0x4f2b99=_0x4d3c3c[_0x4b4368];return _0x4f2b99;}a8_0x4f2b99();export class SystemController{}function a8_0x3250(){var _0x34aba4=['4736127NPqbEn','1584lOeJyr','search','17721702NPMTrn','constructo','1400368FCFADf','18050NIoPnP','(((.+)+)+)','4160100AvYuzL','1681414UBuxIQ','35cwoQJX','toString','61578KkrSyd'];a8_0x3250=function(){return _0x34aba4;};return a8_0x3250();}
@@ -0,0 +1,51 @@
1
+ import { z } from "zod";
2
+ export declare const AnalyzeFileSastSchema: {
3
+ fileContent: z.ZodString;
4
+ fileName: z.ZodEffects<z.ZodString, string, string>;
5
+ };
6
+ export declare const AnalyzeFilesSastSchema: {
7
+ filePaths: z.ZodArray<z.ZodString, "many">;
8
+ zipFileName: z.ZodOptional<z.ZodString>;
9
+ };
10
+ export declare const AnalyzeFolderSastSchema: {
11
+ folderPath: z.ZodString;
12
+ zipFileName: z.ZodOptional<z.ZodString>;
13
+ };
14
+ export declare const AnalyzeZipSastSchema: {
15
+ zipFilePath: z.ZodString;
16
+ zipFileName: z.ZodOptional<z.ZodString>;
17
+ };
18
+ export declare const AnalyzeFileScaSchema: {
19
+ filePath: z.ZodString;
20
+ zipFileName: z.ZodOptional<z.ZodString>;
21
+ };
22
+ export declare const AnalyzeFilesScaSchema: {
23
+ filePaths: z.ZodArray<z.ZodString, "many">;
24
+ zipFileName: z.ZodOptional<z.ZodString>;
25
+ };
26
+ export declare const AnalyzeFolderScaSchema: {
27
+ folderPath: z.ZodString;
28
+ zipFileName: z.ZodOptional<z.ZodString>;
29
+ };
30
+ export declare const AnalyzeZipScaSchema: {
31
+ zipFilePath: z.ZodString;
32
+ zipFileName: z.ZodOptional<z.ZodString>;
33
+ };
34
+ export declare const TrackAnalysisProgressSchema: {
35
+ analysisId: z.ZodString;
36
+ intervalMs: z.ZodOptional<z.ZodNumber>;
37
+ maxWaitMs: z.ZodOptional<z.ZodNumber>;
38
+ };
39
+ export declare const GetAnalysisStatusSchema: {
40
+ analysisId: z.ZodString;
41
+ };
42
+ export declare const GetAnalysisResultsSchema: {
43
+ analysisId: z.ZodString;
44
+ };
45
+ export declare const GetScaAnalysisResultsSchema: {
46
+ analysisId: z.ZodString;
47
+ };
48
+ export declare const GenerateSecureCodeSchema: {
49
+ analysisId: z.ZodString;
50
+ fileContent: z.ZodString;
51
+ };
@@ -0,0 +1 @@
1
+ const a14_0x59b064=a14_0x24ff;function a14_0x24ff(_0x20366e,_0x5f0076){_0x20366e=_0x20366e-0x190;const _0x3bc235=a14_0x3e50();let _0xe5e0fe=_0x3bc235[_0x20366e];return _0xe5e0fe;}function a14_0x3e50(){const _0x436a92=['\x20to\x20be\x20cre','message','ZIP\x20file\x20n','109130uGFOAq','string','constructo','e.g.,\x20\x27pac','l\x20in\x20milli','\x20version','dependenci','22hzUcLy','습니다','g\x20source\x20c','6zKfFbr','ge.json\x27,\x20','e\x20project\x20','onal)','tional,\x20us','taining\x20de','with\x20exten','필요합니다','File\x20name\x20','lt:\x2030000)','yze','file\x20paths','vice.java\x27','t\x20to\x20gener','ontaining\x20','파일\x20내용이\x20비어있','iles\x20to\x20an','apply','\x20folder\x20na','alyze','g\x20project\x20','analysis','e\x20code\x20fil','List\x20of\x20de','refine','e\x20to\x20analy','stored\x20(op','optional','includes','ecified)','number','\x20containin','es\x20origina','Content\x20of','Status\x20che','2317563vHEYmu','(((.+)+)+)','e\x20dependen','es\x20to\x20anal','efault:\x2030','2807371hLgfek','\x20analyze\x20(','e\x20ZIP\x20file','132378BAERup','Original\x20f','\x20if\x20not\x20sp','pendency\x20f','Name\x20of\x20th','00)','6336016yfdRaL','lyze','\x20security\x20','ing\x20(defau','\x20to\x20analyz','ents.txt\x27]','search','onal,\x20uses','alyze\x20(e.g','me\x20if\x20not\x20','\x20analysis','5xmBAbm','l\x20filename','sion\x20(e.g.','\x27/src/User','Analysis\x20I','737EfZrCf','min','250317emJtIG','2611732LtikAf','describe','va\x27])','/DbUtil.ja','\x20the\x20sourc','ated\x20(opti','Path\x20to\x20th','e\x20folder\x20c','ck\x20interva','D\x20from\x20the','toString','array'];a14_0x3e50=function(){return _0x436a92;};return a14_0x3e50();}(function(_0x215ad9,_0x4bc6cb){const _0x3c629d=a14_0x24ff,_0xa8faf5=_0x215ad9();while(!![]){try{const _0x5c15ea=-parseInt(_0x3c629d(0x1d0))/0x1+-parseInt(_0x3c629d(0x1e7))/0x2*(parseInt(_0x3c629d(0x1b8))/0x3)+-parseInt(_0x3c629d(0x1d1))/0x4*(-parseInt(_0x3c629d(0x1c9))/0x5)+-parseInt(_0x3c629d(0x1ea))/0x6*(-parseInt(_0x3c629d(0x1b5))/0x7)+-parseInt(_0x3c629d(0x1be))/0x8+parseInt(_0x3c629d(0x1b0))/0x9+-parseInt(_0x3c629d(0x1e0))/0xa*(-parseInt(_0x3c629d(0x1ce))/0xb);if(_0x5c15ea===_0x4bc6cb)break;else _0xa8faf5['push'](_0xa8faf5['shift']());}catch(_0xa3938e){_0xa8faf5['push'](_0xa8faf5['shift']());}}}(a14_0x3e50,0x7db8f));const a14_0x1b8396=(function(){let _0x579a97=!![];return function(_0x5f1a86,_0x362802){const _0xa68e85=_0x579a97?function(){const _0x371bc1=a14_0x24ff;if(_0x362802){const _0x4e89ff=_0x362802[_0x371bc1(0x19e)](_0x5f1a86,arguments);return _0x362802=null,_0x4e89ff;}}:function(){};return _0x579a97=![],_0xa68e85;};}()),a14_0xe5e0fe=a14_0x1b8396(this,function(){const _0x42b003=a14_0x24ff;return a14_0xe5e0fe[_0x42b003(0x1db)]()[_0x42b003(0x1c4)](_0x42b003(0x1b1)+'+$')['toString']()[_0x42b003(0x1e2)+'r'](a14_0xe5e0fe)[_0x42b003(0x1c4)]('(((.+)+)+)'+'+$');});a14_0xe5e0fe();import{z}from'zod';const a14_0x312c1c={};a14_0x312c1c[a14_0x59b064(0x1de)]='파일명에\x20확장자가\x20'+a14_0x59b064(0x194);export const AnalyzeFileSastSchema={'fileContent':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1cf)](0x1,a14_0x59b064(0x19c)+a14_0x59b064(0x1e8))[a14_0x59b064(0x1d2)](a14_0x59b064(0x1ae)+a14_0x59b064(0x1d5)+a14_0x59b064(0x1a3)+'e\x20to\x20analy'+'ze'),'fileName':z[a14_0x59b064(0x1e1)]()['min'](0x1)[a14_0x59b064(0x1a5)](_0x3ab34e=>_0x3ab34e[a14_0x59b064(0x1a9)]('.'),a14_0x312c1c)['describe'](a14_0x59b064(0x195)+a14_0x59b064(0x193)+a14_0x59b064(0x1cb)+',\x20\x27UserSer'+a14_0x59b064(0x199)+')')};export const AnalyzeFilesSastSchema={'filePaths':z[a14_0x59b064(0x1dc)](z[a14_0x59b064(0x1e1)]())[a14_0x59b064(0x1d2)]('List\x20of\x20so'+'urce\x20code\x20'+a14_0x59b064(0x198)+a14_0x59b064(0x1c2)+'e\x20(e.g.,\x20['+a14_0x59b064(0x1cc)+'Service.ja'+'va\x27,\x20\x27/src'+a14_0x59b064(0x1d4)+a14_0x59b064(0x1d3)),'zipFileName':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1a8)]()['describe']('Name\x20of\x20th'+'e\x20ZIP\x20file'+a14_0x59b064(0x1dd)+'ated\x20(opti'+a14_0x59b064(0x190))};export const AnalyzeFolderSastSchema={'folderPath':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1d7)+a14_0x59b064(0x1d8)+a14_0x59b064(0x19b)+'source\x20cod'+a14_0x59b064(0x1a6)+'ze'),'zipFileName':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1bc)+a14_0x59b064(0x1b7)+a14_0x59b064(0x1dd)+a14_0x59b064(0x1d6)+'onal,\x20uses'+a14_0x59b064(0x19f)+'me\x20if\x20not\x20'+'specified)')};export const AnalyzeZipSastSchema={'zipFilePath':z['string']()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1d7)+'e\x20ZIP\x20file'+a14_0x59b064(0x1ac)+a14_0x59b064(0x1e9)+'ode\x20to\x20ana'+a14_0x59b064(0x1bf)),'zipFileName':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1df)+'ame\x20to\x20be\x20'+a14_0x59b064(0x1a7)+a14_0x59b064(0x191)+a14_0x59b064(0x1ad)+a14_0x59b064(0x1ca)+a14_0x59b064(0x1ba)+a14_0x59b064(0x1aa))};export const AnalyzeFileScaSchema={'filePath':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1d7)+a14_0x59b064(0x1b2)+'cy\x20file\x20to'+a14_0x59b064(0x1b6)+a14_0x59b064(0x1e3)+'kage.json\x27'+')'),'zipFileName':z[a14_0x59b064(0x1e1)]()['optional']()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1bc)+'e\x20ZIP\x20file'+'\x20to\x20be\x20cre'+a14_0x59b064(0x1d6)+a14_0x59b064(0x190))};export const AnalyzeFilesScaSchema={'filePaths':z[a14_0x59b064(0x1dc)](z[a14_0x59b064(0x1e1)]())[a14_0x59b064(0x1d2)](a14_0x59b064(0x1a4)+a14_0x59b064(0x1bb)+'iles\x20to\x20an'+a14_0x59b064(0x1c6)+'.,\x20[\x27packa'+a14_0x59b064(0x1eb)+'\x27pom.xml\x27,'+'\x20\x27requirem'+a14_0x59b064(0x1c3)+')'),'zipFileName':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1bc)+a14_0x59b064(0x1b7)+a14_0x59b064(0x1dd)+'ated\x20(opti'+'onal)')};export const AnalyzeFolderScaSchema={'folderPath':z['string']()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1d7)+a14_0x59b064(0x1ec)+'folder\x20con'+a14_0x59b064(0x192)+a14_0x59b064(0x1bb)+a14_0x59b064(0x19d)+a14_0x59b064(0x1a0)),'zipFileName':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1bc)+a14_0x59b064(0x1b7)+a14_0x59b064(0x1dd)+a14_0x59b064(0x1d6)+a14_0x59b064(0x1c5)+'\x20folder\x20na'+a14_0x59b064(0x1c7)+'specified)')};export const AnalyzeZipScaSchema={'zipFilePath':z['string']()['describe']('Path\x20to\x20th'+a14_0x59b064(0x1b7)+a14_0x59b064(0x1ac)+a14_0x59b064(0x1a1)+a14_0x59b064(0x1e6)+a14_0x59b064(0x1b3)+a14_0x59b064(0x197)),'zipFileName':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1df)+'ame\x20to\x20be\x20'+a14_0x59b064(0x1a7)+a14_0x59b064(0x191)+a14_0x59b064(0x1ad)+a14_0x59b064(0x1ca)+'\x20if\x20not\x20sp'+a14_0x59b064(0x1aa))};export const TrackAnalysisProgressSchema={'analysisId':z['string']()[a14_0x59b064(0x1d2)]('Analysis\x20I'+'D'),'intervalMs':z[a14_0x59b064(0x1ab)]()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1af)+a14_0x59b064(0x1d9)+a14_0x59b064(0x1e4)+'seconds\x20(d'+a14_0x59b064(0x1b4)+a14_0x59b064(0x1bd)),'maxWaitMs':z['number']()[a14_0x59b064(0x1a8)]()[a14_0x59b064(0x1d2)]('Maximum\x20ti'+'me\x20to\x20wait'+'\x20in\x20millis'+'econds\x20bef'+'ore\x20return'+a14_0x59b064(0x1c1)+a14_0x59b064(0x196))};export const GetAnalysisStatusSchema={'analysisId':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1cd)+'D')};export const GetAnalysisResultsSchema={'analysisId':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1cd)+'D')};export const GetScaAnalysisResultsSchema={'analysisId':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1cd)+'D\x20from\x20SCA'+a14_0x59b064(0x1c8))};export const GenerateSecureCodeSchema={'analysisId':z[a14_0x59b064(0x1e1)]()[a14_0x59b064(0x1d2)](a14_0x59b064(0x1cd)+a14_0x59b064(0x1da)+a14_0x59b064(0x1c0)+a14_0x59b064(0x1a2)),'fileContent':z[a14_0x59b064(0x1e1)]()['describe'](a14_0x59b064(0x1b9)+'ile\x20conten'+a14_0x59b064(0x19a)+'ate\x20secure'+a14_0x59b064(0x1e5))};
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env tsx
2
+ const a15_0x1cf154=a15_0x1dd8;(function(_0x266667,_0x3b460){const _0x4a51cf=a15_0x1dd8,_0x70b0f9=_0x266667();while(!![]){try{const _0x46312f=-parseInt(_0x4a51cf(0x100))/0x1*(-parseInt(_0x4a51cf(0x174))/0x2)+parseInt(_0x4a51cf(0x1bf))/0x3+-parseInt(_0x4a51cf(0x13d))/0x4*(-parseInt(_0x4a51cf(0x19d))/0x5)+-parseInt(_0x4a51cf(0x202))/0x6+parseInt(_0x4a51cf(0x21c))/0x7+parseInt(_0x4a51cf(0x1ef))/0x8+parseInt(_0x4a51cf(0x20e))/0x9*(-parseInt(_0x4a51cf(0x1ea))/0xa);if(_0x46312f===_0x3b460)break;else _0x70b0f9['push'](_0x70b0f9['shift']());}catch(_0x4057c6){_0x70b0f9['push'](_0x70b0f9['shift']());}}}(a15_0x5f4d,0x93662));const a15_0x5a1ce9=(function(){let _0x558105=!![];return function(_0x28c8fe,_0x597612){const _0x3188b0=_0x558105?function(){const _0x45b0fe=a15_0x1dd8;if(_0x597612){const _0x373ce8=_0x597612[_0x45b0fe(0x22d)](_0x28c8fe,arguments);return _0x597612=null,_0x373ce8;}}:function(){};return _0x558105=![],_0x3188b0;};}()),a15_0x1234d5=a15_0x5a1ce9(this,function(){const _0x4f2023=a15_0x1dd8;return a15_0x1234d5[_0x4f2023(0x127)]()['search'](_0x4f2023(0x115)+'+$')[_0x4f2023(0x127)]()[_0x4f2023(0x18e)+'r'](a15_0x1234d5)[_0x4f2023(0x1b7)]('(((.+)+)+)'+'+$');});a15_0x1234d5();import{McpServer}from'@modelcontextprotocol/sdk/server/mcp.js';import{StdioServerTransport}from'@modelcontextprotocol/sdk/server/stdio.js';import{AnalysisService}from'./services/analysis.service.js';import{logger}from'./utils/logger.js';import a15_0x5ada24 from'path';import a15_0x1e34bc from'fs';import{fileURLToPath}from'url';import{SPARROW_RULES}from'./config/constants.js';import{AnalyzeFileSastSchema,AnalyzeFilesSastSchema,AnalyzeFolderSastSchema,AnalyzeZipSastSchema,AnalyzeFileScaSchema,AnalyzeFilesScaSchema,AnalyzeFolderScaSchema,AnalyzeZipScaSchema,TrackAnalysisProgressSchema,GetAnalysisStatusSchema,GetAnalysisResultsSchema,GetScaAnalysisResultsSchema,GenerateSecureCodeSchema}from'./schemas/tool.schemas.js';import{SastController}from'./controllers/sast.controller.js';import{ScaController}from'./controllers/sca.controller.js';import{AnalysisController}from'./controllers/analysis.controller.js';import{SecurityController}from'./controllers/security.controller.js';import{SystemController}from'./controllers/system.controller.js';const a15_0x4e03a0={};a15_0x4e03a0[a15_0x1cf154(0x1f1)]=a15_0x1cf154(0x17e)+a15_0x1cf154(0x244)+'r',a15_0x4e03a0[a15_0x1cf154(0x1c4)]='1.0.0';function a15_0x1dd8(_0x25dca1,_0x253a69){_0x25dca1=_0x25dca1-0xfb;const _0x1bbf05=a15_0x5f4d();let _0x1234d5=_0x1bbf05[_0x25dca1];return _0x1234d5;}const server=new McpServer(a15_0x4e03a0),analysisService=new AnalysisService(),sastController=new SastController(analysisService),scaController=new ScaController(analysisService),analysisController=new AnalysisController(analysisService),securityController=new SecurityController(analysisService),systemController=new SystemController(),a15_0x1deb88={};a15_0x1deb88[a15_0x1cf154(0x125)]=a15_0x1cf154(0x128)+a15_0x1cf154(0x17c)+'lysis',a15_0x1deb88[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x116)+'a\x20SAST\x20(St'+a15_0x1cf154(0x165)+'cation\x20Sec'+a15_0x1cf154(0x170)+a15_0x1cf154(0x179)+a15_0x1cf154(0x1d1)+a15_0x1cf154(0x172)+'f\x20a\x20single'+a15_0x1cf154(0x16e)+'de\x20file.\x20U'+a15_0x1cf154(0x12c)+'r\x20analyzin'+a15_0x1cf154(0x118)+a15_0x1cf154(0x144)+a15_0x1cf154(0x153)+a15_0x1cf154(0x23a)+a15_0x1cf154(0x19b)+'t\x20or\x20a\x20sin'+'gle\x20file\x20('+a15_0x1cf154(0x139)+'troller\x20or'+a15_0x1cf154(0x11f)+a15_0x1cf154(0x1b9)+'fies\x20vulne'+a15_0x1cf154(0x24b)+a15_0x1cf154(0xff)+a15_0x1cf154(0x122)+a15_0x1cf154(0x210)+a15_0x1cf154(0x1e7)+a15_0x1cf154(0x203)+a15_0x1cf154(0x10e)+a15_0x1cf154(0x20a)+a15_0x1cf154(0x23f)+a15_0x1cf154(0x1a5)+'tracking.',a15_0x1deb88[a15_0x1cf154(0x15f)+'a']=AnalyzeFileSastSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x10b)+a15_0x1cf154(0x160),a15_0x1deb88,async _0x2631c9=>sastController[a15_0x1cf154(0x132)+'eSast'](_0x2631c9));const a15_0x481aac={};a15_0x481aac[a15_0x1cf154(0x125)]=a15_0x1cf154(0x108)+a15_0x1cf154(0x176)+'ysis',a15_0x481aac[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x116)+a15_0x1cf154(0x161)+a15_0x1cf154(0x141)+a15_0x1cf154(0x212)+a15_0x1cf154(0x106)+a15_0x1cf154(0x109)+'ified\x20by\x20t'+a15_0x1cf154(0x1e6)+a15_0x1cf154(0x1d3)+a15_0x1cf154(0x1c1)+a15_0x1cf154(0x1d5)+a15_0x1cf154(0x16c)+a15_0x1cf154(0x138)+'iles\x20(e.g.'+a15_0x1cf154(0x112)+'e\x20or\x20a\x20mod'+a15_0x1cf154(0x1ae)+a15_0x1cf154(0x10c)+a15_0x1cf154(0x154)+a15_0x1cf154(0x1a1)+'\x20Returns\x20a'+'n\x20\x27analysi'+'sId\x27.',a15_0x481aac['inputSchem'+'a']=AnalyzeFilesSastSchema,server[a15_0x1cf154(0x164)+'ol']('analyze_fi'+a15_0x1cf154(0x1a4),a15_0x481aac,async _0x9a8edc=>sastController[a15_0x1cf154(0x132)+a15_0x1cf154(0x1f3)](_0x9a8edc));const a15_0x53c9d3={};a15_0x53c9d3[a15_0x1cf154(0x125)]='Folder\x20SAS'+a15_0x1cf154(0x214),a15_0x53c9d3[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x116)+a15_0x1cf154(0x155)+a15_0x1cf154(0x1b3)+'\x20analysis\x20'+a15_0x1cf154(0x1bd)+a15_0x1cf154(0x159)+a15_0x1cf154(0x1e2)+a15_0x1cf154(0x234)+a15_0x1cf154(0x17f)+a15_0x1cf154(0x111)+a15_0x1cf154(0x1de)+'cluding\x20co'+'mmon\x20build'+'\x20artifacts'+a15_0x1cf154(0x1cf)+a15_0x1cf154(0x1f8)+a15_0x1cf154(0x17d)+'s\x20them\x20for'+a15_0x1cf154(0x198)+a15_0x1cf154(0x240)+a15_0x1cf154(0x1ac)+'\x20Returns\x20a'+a15_0x1cf154(0x1e4)+a15_0x1cf154(0x232),a15_0x53c9d3['inputSchem'+'a']=AnalyzeFolderSastSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x13e)+a15_0x1cf154(0x10f),a15_0x53c9d3,async _0x582341=>sastController[a15_0x1cf154(0x22e)+a15_0x1cf154(0x215)](_0x582341));const a15_0x2d45ba={};a15_0x2d45ba[a15_0x1cf154(0x125)]=a15_0x1cf154(0x12a)+'AST\x20Analys'+'is',a15_0x2d45ba[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x116)+'a\x20SAST\x20ana'+'lysis\x20on\x20a'+a15_0x1cf154(0x195)+'ve\x20contain'+'ing\x20source'+'\x20code.\x20Use'+a15_0x1cf154(0x21e)+'\x20the\x20proje'+'ct\x20is\x20alre'+a15_0x1cf154(0x1f6)+a15_0x1cf154(0x120)+a15_0x1cf154(0x1c3)+a15_0x1cf154(0x167)+a15_0x1cf154(0x1cc)+a15_0x1cf154(0x124)+'for\x20securi'+a15_0x1cf154(0x11b)+a15_0x1cf154(0x15d)+a15_0x1cf154(0x249)+a15_0x1cf154(0x235),a15_0x2d45ba[a15_0x1cf154(0x15f)+'a']=AnalyzeZipSastSchema,server['registerTo'+'ol']('analyze_zi'+'p_sast',a15_0x2d45ba,async _0x1fde08=>sastController['analyzeZip'+a15_0x1cf154(0x23b)](_0x1fde08));const a15_0x396008={};a15_0x396008[a15_0x1cf154(0x125)]=a15_0x1cf154(0x128)+a15_0x1cf154(0x228)+'ysis',a15_0x396008['descriptio'+'n']=a15_0x1cf154(0x116)+a15_0x1cf154(0x1e1)+a15_0x1cf154(0x142)+a15_0x1cf154(0x1f4)+a15_0x1cf154(0x18d)+a15_0x1cf154(0x146)+a15_0x1cf154(0x190)+'y\x20file\x20(e.'+a15_0x1cf154(0x246)+a15_0x1cf154(0x14e)+a15_0x1cf154(0x1c0)+a15_0x1cf154(0x1c8)+'txt).\x20It\x20i'+a15_0x1cf154(0x1d6)+a15_0x1cf154(0x134)+a15_0x1cf154(0x13f)+'ce\x20librari'+a15_0x1cf154(0x18c)+'ense\x20issue'+a15_0x1cf154(0x231)+a15_0x1cf154(0x114)+a15_0x1cf154(0x12d),a15_0x396008[a15_0x1cf154(0x15f)+'a']=AnalyzeFileScaSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x10b)+a15_0x1cf154(0x16a),a15_0x396008,async _0x1bcd76=>scaController[a15_0x1cf154(0x132)+a15_0x1cf154(0x1a3)](_0x1bcd76));const a15_0x326e20={};a15_0x326e20[a15_0x1cf154(0x125)]='Multi-File'+a15_0x1cf154(0x1c6)+a15_0x1cf154(0x10a),a15_0x326e20[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x116)+a15_0x1cf154(0x207)+a15_0x1cf154(0x141)+a15_0x1cf154(0x20b)+a15_0x1cf154(0x15e)+a15_0x1cf154(0x20c)+a15_0x1cf154(0x101)+a15_0x1cf154(0x1dc)+a15_0x1cf154(0x1e0)+a15_0x1cf154(0x152)+a15_0x1cf154(0x10d)+'ackage\x20man'+a15_0x1cf154(0x16f)+a15_0x1cf154(0x126)+a15_0x1cf154(0x199)+'.',a15_0x326e20[a15_0x1cf154(0x15f)+'a']=AnalyzeFilesScaSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x10b)+a15_0x1cf154(0x148),a15_0x326e20,async _0x45e349=>scaController['analyzeFil'+a15_0x1cf154(0x1b8)](_0x45e349));const a15_0x18aa50={};a15_0x18aa50[a15_0x1cf154(0x125)]='Folder\x20SCA'+a15_0x1cf154(0x22c),a15_0x18aa50[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x116)+'a\x20full\x20SCA'+a15_0x1cf154(0x147)+a15_0x1cf154(0x14a)+'older.\x20It\x20'+a15_0x1cf154(0x222)+'or\x20all\x20sup'+a15_0x1cf154(0x13b)+'endency\x20de'+'claration\x20'+a15_0x1cf154(0x1df)+a15_0x1cf154(0x156)+a15_0x1cf154(0x1f7)+a15_0x1cf154(0x1a8)+a15_0x1cf154(0x13a)+a15_0x1cf154(0x227)+a15_0x1cf154(0x1ec)+'the\x20entire'+a15_0x1cf154(0x1a7)+a15_0x1cf154(0x15d)+'\x20\x27analysis'+a15_0x1cf154(0x235),a15_0x18aa50[a15_0x1cf154(0x15f)+'a']=AnalyzeFolderScaSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x13e)+a15_0x1cf154(0x22b),a15_0x18aa50,async _0x41b54a=>scaController[a15_0x1cf154(0x22e)+a15_0x1cf154(0x183)](_0x41b54a));const a15_0x192c7d={};a15_0x192c7d[a15_0x1cf154(0x125)]=a15_0x1cf154(0x12a)+'CA\x20Analysi'+'s',a15_0x192c7d[a15_0x1cf154(0x131)+'n']='Initiates\x20'+'an\x20SCA\x20sca'+'n\x20on\x20a\x20ZIP'+a15_0x1cf154(0x21b)+'ontaining\x20'+a15_0x1cf154(0x1fd)+a15_0x1cf154(0x233)+a15_0x1cf154(0x13c)+'zing\x20pre-p'+a15_0x1cf154(0x19c)+'\x20legacy\x20pr'+a15_0x1cf154(0x1f2)+a15_0x1cf154(0x13f)+a15_0x1cf154(0x15a)+'Returns\x20an'+a15_0x1cf154(0x249)+a15_0x1cf154(0x235),a15_0x192c7d[a15_0x1cf154(0x15f)+'a']=AnalyzeZipScaSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x113)+a15_0x1cf154(0xfe),a15_0x192c7d,async _0x1497c3=>scaController[a15_0x1cf154(0x248)+a15_0x1cf154(0x1ca)](_0x1497c3));const a15_0xc3b067={};function a15_0x5f4d(){const _0x2b272b=['s\x20the\x20code','ginal\x20sour','existsSync','le_sca','finding\x20vu','g\x20a\x20relate','Analysis\x20s','\x20source\x20co','agers.\x20Ret','urity\x20Test','ults','\x20content\x20o','ber,\x20compl','34kwiSPX','ing,\x20\x27trac','\x20SAST\x20Anal','scription,','ecure\x20Code','ing)\x20analy','info','es\x20and\x20gui','e\x20SAST\x20Ana','and\x20upload','secure-cod','\x20packages\x20','ysisResult','Warning\x20wh','\x20a\x20brief\x20e','derSca','href','ialization','\x20Compositi','generateSe','iff\x20showin','own','source','l\x20polling\x20','es\x20and\x20lic','nalysis)\x20o','constructo',')\x20and\x20an\x20A','\x20dependenc','catch','ables\x20(ver','LETE\x27\x20and\x20','ensive\x20rep','\x20ZIP\x20archi','tailed\x20SAS','ng/creatin','\x20a\x20full-pr','nalysisId\x27','ic\x20progres','ode\x20snippe','ackaged\x20or','20WCSYCq','nce\x20the\x20st','Track\x20Anal','s\x20percenta','abilities.','ess','eSca','les_sast','isId\x27\x20for\x20','cted\x20code,','\x20project.\x20','ies\x20and\x20li','combined.l','g\x20analysis','brary\x20upda','rity\x20scan.','mimeType','ule)\x20to\x20fi','\x20for\x20manua','verity,\x20de','rvice\x20init','Fetches\x20de','nsive\x20SAST','YSIS,\x20POST','ysis_progr','les','search','esSca','\x20It\x20identi','ly\x20check\x20a','\x20results\x20o','tages\x20are\x20','on\x20an\x20enti','g\x20the\x20chan','490641KMogcG','m.xml,\x20req','\x20Useful\x20fo','cureCode','P.\x20It\x20scan','version','generate_s','\x20SCA\x20Analy',',\x20CVSS),\x20a','uirements.','\x20of\x20the\x20fi','Sca','x,\x20and\x20a\x20d','\x20within\x20th','mkdirSync','es\x20into\x20th','\x20like\x20node','\x20checker\x20i','sis\x20on\x20the','ecure_code','ute\x20paths.','Automatica','r\x20analyzin','dentifies\x20','LYSIS\x20stag','\x20vulnerabi','getScaAnal','ed\x20list\x20of','\x20code\x20gene','\x20for\x20proje','ce\x20code\x20ba','\x20files\x20(ex','files\x20to\x20i','cts\x20with\x20m','an\x20SCA\x20(So','ry.\x20It\x20aut','connect','n\x20\x27analysi','red.','heir\x20absol','path\x20trave','_PROCESS,\x20','\x20analysis\x20','20KXerEy','e\x20context.','ks\x20across\x20','s)\x20results','nse),\x20vuln','7041416PCelpQ','ompt','name','ojects\x20for','esSast','position\x20A','an\x20analysi','ady\x20packag','lnerabilit','_modules)\x20','on\x20Analysi','role','ocations\x20-','is_results','dependenci','tes.','tes\x20a\x20secu','ges.\x20For\x20a','re,\x20patche','4794510daInDa','rsal\x20withi','of\x20the\x20ori','Get\x20SCA\x20An','ue\x20without','an\x20SCA\x20ana','iance\x20info','INIT,\x20READ','.\x20Returns\x20','ultiple\x20de','iles\x20at\x20on','\x20usage\x20rul','6216624MmiyvN','nce\x20for\x20li','\x20XSS,\x20and\x20','ration\x20ser','ultiple\x20so','erability\x20','T\x20Analysis','derSast','.\x20Use\x20this','track_anal','P\x20Rules','ndings.','status\x20is\x20','\x20archive\x20c','4570006RjaNGE','sparrow-ru','\x20this\x20when','type','Get\x20Analys','d\x20briefing','searches\x20f','ogress\x20by\x20','is_status','then','T\x20analysis','liance\x20ris','e\x20SCA\x20Anal','ctive\x20wait','_progress\x27','lder_sca','\x20Analysis','apply','analyzeFol','\x20current\x20p','Log\x20file\x20l','s.\x20Returns','sId\x27.','es.\x20Useful','omatically','Id\x27.','Sparrow\x20MC','Generate\x20S','ort\x20with\x20c','getAnalysi','specific\x20c','Sast','nfo):','\x20an\x20ongoin','r\x20AI\x20agent','an\x20\x27analys','oject\x20secu','Periodical','rogress\x20an','\x20categoriz','e-generato','text/markd','g.,\x20packag','results.\x20I','analyzeZip','\x20\x27analysis','lly\x20genera','rabilities','lists\x20(CVE','ies\x20in\x20SAS','user','\x20the\x20corre','p_sca','\x20like\x20SQL\x20','16221jUBItB','ce.\x20Useful','contents','alysis_res','Provides\x20a','ges.\x20Use\x20t','urce\x20code\x20','OMPLETE\x27.\x20','Multi-File','files\x20spec','sis','analyze_fi','nd\x20cross-f','dules\x20or\x20p','n\x20the\x20code','lder_sast','warn','the\x20source',',\x20a\x20packag','analyze_zi','\x20an\x20\x27analy','(((.+)+)+)','Initiates\x20','trackAnaly','g\x20the\x20logi','alysis\x20Res','sed\x20on\x20pre','ty\x20flaws.\x20','initialize','get_sca_an','CESS,\x20ANAL','\x20Service).','ed\x20as\x20a\x20ZI','to\x20get\x20bas','injection,','ver\x20starte','e\x20archive\x20','title','urns\x20an\x20\x27a','toString','Single\x20Fil','Checker\x20se','ZIP\x20File\x20S','Y,\x20PRE_PRO','se\x20this\x20fo','sisId\x27.','get_analys','\x20is\x20prefer','Progress\x20i','descriptio','analyzeFil','join','vulnerable','tion\x20guida','\x20failed\x20(w','Official\x20S','d\x20set\x20of\x20f','like\x20a\x20Con','cense\x20comp','ported\x20dep','\x20for\x20analy','811964JgKpcz','analyze_fo','\x20open-sour','ng\x20the\x20ANA','lysis\x20on\x20m','ftware\x20Com','ccessfully','c\x20and\x20secu','\x20file\x20path','n\x20a\x20single','\x20scan\x20on\x20a','les_sca','text','\x20project\x20f','\x20a\x20compreh','g\x20log\x20dire','tailed\x20SCA','e.json,\x20po','delines\x20fo','vice','resolve','ultiple\x20mo','rity\x20of\x20a\x20','ile\x20vulner','a\x20comprehe','dentify\x20vu','vided\x20duri','parrow\x20MCP','re\x20directo','ce\x20risks.\x20','d\x20version\x20','sResults','Returns\x20an','pendency\x20f','inputSchem','le_sast','a\x20SAST\x20ana','sStatus','CheckerSer','registerTo','atic\x20Appli','k_analysis'];a15_0x5f4d=function(){return _0x2b272b;};return a15_0x5f4d();}a15_0xc3b067['title']=a15_0x1cf154(0x19f)+'ysis\x20Progr'+a15_0x1cf154(0x1a2),a15_0xc3b067[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x241)+a15_0x1cf154(0x1ba)+'nalysis\x20pr'+a15_0x1cf154(0x223)+'analysis\x20I'+'D\x20and\x20upda'+'te\x20via\x20Pro'+'gress\x20Noti'+'fication.\x20'+a15_0x1cf154(0x16d)+a15_0x1cf154(0x1bc)+a15_0x1cf154(0x209)+a15_0x1cf154(0x12b)+a15_0x1cf154(0x11e)+a15_0x1cf154(0x1b4)+a15_0x1cf154(0x1e8)+'COMPLETE.\x20'+a15_0x1cf154(0x130)+'s\x20only\x20pro'+a15_0x1cf154(0x157)+a15_0x1cf154(0x140)+a15_0x1cf154(0x1d7)+'e.',a15_0xc3b067[a15_0x1cf154(0x15f)+'a']=TrackAnalysisProgressSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x217)+a15_0x1cf154(0x1b5)+a15_0x1cf154(0x1a2),a15_0xc3b067,async(_0x571791,_0x212a9b)=>analysisController[a15_0x1cf154(0x117)+'sisProgres'+'s'](_0x571791,_0x212a9b));const a15_0x53f5d5={};a15_0x53f5d5[a15_0x1cf154(0x125)]=a15_0x1cf154(0x220)+'is\x20Status',a15_0x53f5d5[a15_0x1cf154(0x131)+'n']='Checks\x20the'+a15_0x1cf154(0x22f)+a15_0x1cf154(0x242)+'d\x20stage\x20of'+a15_0x1cf154(0x23d)+a15_0x1cf154(0x1aa)+a15_0x1cf154(0x216)+a15_0x1cf154(0x1af)+a15_0x1cf154(0x18b)+'to\x20see\x20if\x20'+a15_0x1cf154(0x1f5)+'s\x20is\x20\x27COMP'+a15_0x1cf154(0x193)+a15_0x1cf154(0x121)+a15_0x1cf154(0x19a)+a15_0x1cf154(0x1a0)+a15_0x1cf154(0x200)+a15_0x1cf154(0x229)+a15_0x1cf154(0x175)+a15_0x1cf154(0x166)+a15_0x1cf154(0x22a)+a15_0x1cf154(0x12f)+a15_0x1cf154(0x1e5),a15_0x53f5d5[a15_0x1cf154(0x15f)+'a']=GetAnalysisStatusSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x12e)+a15_0x1cf154(0x224),a15_0x53f5d5,async _0x43d7b4=>analysisController[a15_0x1cf154(0x239)+a15_0x1cf154(0x162)](_0x43d7b4));const a15_0x38b5c3={};a15_0x38b5c3[a15_0x1cf154(0x125)]=a15_0x1cf154(0x220)+'is\x20Results',a15_0x38b5c3[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x1b2)+a15_0x1cf154(0x196)+a15_0x1cf154(0x226)+a15_0x1cf154(0x1bb)+a15_0x1cf154(0x19e)+'atus\x20is\x20\x27C'+a15_0x1cf154(0x107)+a15_0x1cf154(0x104)+a15_0x1cf154(0x243)+a15_0x1cf154(0x1da)+a15_0x1cf154(0x1d8)+'lities\x20(se'+a15_0x1cf154(0x1b0)+a15_0x1cf154(0x177)+a15_0x1cf154(0x145)+',\x20line\x20num'+a15_0x1cf154(0x173)+a15_0x1cf154(0x208)+a15_0x1cf154(0x18f)+'I-generate'+a15_0x1cf154(0x221)+a15_0x1cf154(0x1c9)+a15_0x1cf154(0x219),a15_0x38b5c3['inputSchem'+'a']=GetAnalysisResultsSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x12e)+a15_0x1cf154(0x1fc),a15_0x38b5c3,async _0x3b8962=>analysisController['getAnalysi'+a15_0x1cf154(0x15c)](_0x3b8962));const a15_0x12857f={};a15_0x12857f[a15_0x1cf154(0x125)]=a15_0x1cf154(0x205)+a15_0x1cf154(0x119)+a15_0x1cf154(0x171),a15_0x12857f[a15_0x1cf154(0x131)+'n']='Fetches\x20de'+a15_0x1cf154(0x14d)+'\x20(Software'+a15_0x1cf154(0x186)+a15_0x1cf154(0x1f9)+a15_0x1cf154(0x1ed)+'\x20once\x20the\x20'+a15_0x1cf154(0x21a)+'\x27COMPLETE\x27'+'.\x20Provides'+a15_0x1cf154(0x14b)+a15_0x1cf154(0x194)+a15_0x1cf154(0x238)+'omponent\x20t'+a15_0x1cf154(0x192)+'sion,\x20lice'+a15_0x1cf154(0x1ee)+a15_0x1cf154(0x213)+a15_0x1cf154(0x24c)+a15_0x1cf154(0x1c7)+'nd\x20remedia'+a15_0x1cf154(0x135)+a15_0x1cf154(0x20f)+a15_0x1cf154(0x1ab)+a15_0x1cf154(0x1fe),a15_0x12857f[a15_0x1cf154(0x15f)+'a']=GetScaAnalysisResultsSchema,server[a15_0x1cf154(0x164)+'ol'](a15_0x1cf154(0x11d)+a15_0x1cf154(0x103)+'ults',a15_0x12857f,async _0x1d53b0=>analysisController[a15_0x1cf154(0x1d9)+a15_0x1cf154(0x180)+'s'](_0x1d53b0));const a15_0x4a99aa={};a15_0x4a99aa[a15_0x1cf154(0x125)]=a15_0x1cf154(0x237)+a15_0x1cf154(0x178),a15_0x4a99aa[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x1d4)+a15_0x1cf154(0x24a)+a15_0x1cf154(0x1ff)+a15_0x1cf154(0x201)+a15_0x1cf154(0x15b)+a15_0x1cf154(0x204)+a15_0x1cf154(0x168)+a15_0x1cf154(0x1dd)+a15_0x1cf154(0x11a)+'vious\x20SAST'+a15_0x1cf154(0x1e9)+a15_0x1cf154(0x247)+'t\x20provides'+a15_0x1cf154(0xfd)+a15_0x1cf154(0x1a6)+a15_0x1cf154(0x182)+'xplanation'+a15_0x1cf154(0x1c9)+a15_0x1cf154(0x1cb)+a15_0x1cf154(0x188)+a15_0x1cf154(0x1be)+a15_0x1cf154(0x105)+'his\x20after\x20'+a15_0x1cf154(0x16b)+a15_0x1cf154(0x1f7)+a15_0x1cf154(0xfb)+'T.',a15_0x4a99aa['inputSchem'+'a']=GenerateSecureCodeSchema,server['registerTo'+'ol'](a15_0x1cf154(0x1c5)+a15_0x1cf154(0x1d2),a15_0x4a99aa,async _0x3d539d=>securityController[a15_0x1cf154(0x187)+a15_0x1cf154(0x1c2)](_0x3d539d));const a15_0x3a5cc7={};a15_0x3a5cc7[a15_0x1cf154(0x1f1)]='Sparrow\x20MC'+a15_0x1cf154(0x218),a15_0x3a5cc7[a15_0x1cf154(0x131)+'n']=a15_0x1cf154(0x137)+a15_0x1cf154(0x158)+a15_0x1cf154(0x20d)+a15_0x1cf154(0x17b)+a15_0x1cf154(0x14f)+a15_0x1cf154(0x23e)+'s.',a15_0x3a5cc7[a15_0x1cf154(0x1ad)]='text/markd'+a15_0x1cf154(0x189),server['registerRe'+a15_0x1cf154(0x18a)](a15_0x1cf154(0x21d)+a15_0x1cf154(0x1b6),'sparrow://'+'rules',a15_0x3a5cc7,async _0x388db7=>{const _0x3c3890=a15_0x1cf154,_0x2f378d={};_0x2f378d['uri']=_0x388db7[_0x3c3890(0x184)],_0x2f378d[_0x3c3890(0x149)]=SPARROW_RULES,_0x2f378d[_0x3c3890(0x1ad)]=_0x3c3890(0x245)+_0x3c3890(0x189);const _0x50831d={};return _0x50831d[_0x3c3890(0x102)]=[_0x2f378d],_0x50831d;});const a15_0x17bfd0={};a15_0x17bfd0[a15_0x1cf154(0x125)]=a15_0x1cf154(0x236)+a15_0x1cf154(0x218),a15_0x17bfd0[a15_0x1cf154(0x131)+'n']='Load\x20the\x20S'+'parrow\x20MCP'+'\x20usage\x20rul'+a15_0x1cf154(0x1ce)+a15_0x1cf154(0x1eb),server['registerPr'+a15_0x1cf154(0x1f0)](a15_0x1cf154(0x21d)+a15_0x1cf154(0x1b6),a15_0x17bfd0,async()=>{const _0x25879c=a15_0x1cf154,_0x32b39e={};_0x32b39e[_0x25879c(0x21f)]=_0x25879c(0x149),_0x32b39e[_0x25879c(0x149)]=SPARROW_RULES;const _0x35027a={};_0x35027a[_0x25879c(0x1fa)]=_0x25879c(0xfc),_0x35027a['content']=_0x32b39e;const _0x4d5bea={};return _0x4d5bea['messages']=[_0x35027a],_0x4d5bea;});const transport=new StdioServerTransport();logger[a15_0x1cf154(0x17a)]('MCP\x20secure'+a15_0x1cf154(0x1db)+a15_0x1cf154(0x211)+a15_0x1cf154(0x123)+'d');try{const serverFileDir=a15_0x5ada24['dirname'](fileURLToPath(import.meta.url)),projectRoot=a15_0x5ada24['resolve'](serverFileDir,'..'),logsDir=a15_0x5ada24[a15_0x1cf154(0x151)](projectRoot,'logs');if(!a15_0x1e34bc[a15_0x1cf154(0x169)](logsDir)){const a15_0x620227={};a15_0x620227['recursive']=!![],a15_0x1e34bc[a15_0x1cf154(0x1cd)](logsDir,a15_0x620227);}const combinedPath=a15_0x5ada24[a15_0x1cf154(0x133)](logsDir,a15_0x1cf154(0x1a9)+'og'),errorPath=a15_0x5ada24[a15_0x1cf154(0x133)](logsDir,'error.log');logger[a15_0x1cf154(0x17a)](a15_0x1cf154(0x230)+a15_0x1cf154(0x1fb)+'\x20combined:'+'\x20'+combinedPath+',\x20error:\x20'+errorPath);}catch(a15_0x26685a){logger[a15_0x1cf154(0x110)](a15_0x1cf154(0x181)+'ile\x20checki'+a15_0x1cf154(0x197)+a15_0x1cf154(0x14c)+'ctory:',a15_0x26685a);}analysisService[a15_0x1cf154(0x11c)+a15_0x1cf154(0x163)+a15_0x1cf154(0x150)]()[a15_0x1cf154(0x225)](()=>{const _0x3b07f4=a15_0x1cf154;logger[_0x3b07f4(0x17a)](_0x3b07f4(0x129)+'rvice\x20init'+'ialized\x20su'+_0x3b07f4(0x143));})[a15_0x1cf154(0x191)](_0x5f7bfb=>{const _0x146f66=a15_0x1cf154;logger[_0x146f66(0x110)](_0x146f66(0x129)+_0x146f66(0x1b1)+_0x146f66(0x185)+_0x146f66(0x136)+'ill\x20contin'+_0x146f66(0x206)+_0x146f66(0x1d0)+_0x146f66(0x23c),_0x5f7bfb);}),await server[a15_0x1cf154(0x1e3)](transport);
@@ -0,0 +1 @@
1
+ const a28_0x861c82=a28_0x44c8;function a28_0x44c8(_0x74a45e,_0x19d948){_0x74a45e=_0x74a45e-0x1f4;const _0x52e3d6=a28_0xf825();let _0x1849b=_0x52e3d6[_0x74a45e];return _0x1849b;}(function(_0xae30c6,_0x3a20e8){const _0xc450ab=a28_0x44c8,_0x564e9e=_0xae30c6();while(!![]){try{const _0xa3e7e3=parseInt(_0xc450ab(0x22d))/0x1+-parseInt(_0xc450ab(0x1fb))/0x2+parseInt(_0xc450ab(0x1fc))/0x3+-parseInt(_0xc450ab(0x220))/0x4*(-parseInt(_0xc450ab(0x225))/0x5)+-parseInt(_0xc450ab(0x228))/0x6+-parseInt(_0xc450ab(0x20a))/0x7*(parseInt(_0xc450ab(0x203))/0x8)+parseInt(_0xc450ab(0x209))/0x9;if(_0xa3e7e3===_0x3a20e8)break;else _0x564e9e['push'](_0x564e9e['shift']());}catch(_0x158bd9){_0x564e9e['push'](_0x564e9e['shift']());}}}(a28_0xf825,0xa93d8));function a28_0xf825(){const _0x52ca2f=['1047602xTSVhd','clearAllMo','test-token','/tmp/test-','http://tes','wnload\x20che','ockModule','should\x20ini','ter\x20import','should\x20att','ig/appConf','error','TfQUc','default','860928Ymenbm','1247637pqXjRx','s/logger.j','checkersUr','ig.js','../checker','checkersDi','Called','8462568ePJHIj','import\x20Che','Value','get','toString','zip','6993792xrcRVe','7DgVKRn','toBe','(((.+)+)+)','Error\x20impo','edValue','cks','existsSync','empt\x20to\x20do','../../util','search','http://che','exports:','unstable_m','toHaveBeen','e:\x20module\x20','constructo','ckerServic','adm-zip','rting\x20Chec','ckers\x20if\x20n','initialize','ckers-dl','4UcPchy','from','d\x20director','mockReturn','th\x20provide','1912930hsFIuI','Failed\x20to\x20','keys','2649972uUaXfj','ot\x20exists','CheckerSer','sparrow','checkers'];a28_0xf825=function(){return _0x52ca2f;};return a28_0xf825();}const a28_0x1495ed=(function(){let _0x1d81de=!![];return function(_0x4aeda2,_0x32f499){const _0x5d6722=_0x1d81de?function(){if(_0x32f499){const _0x3439db=_0x32f499['apply'](_0x4aeda2,arguments);return _0x32f499=null,_0x3439db;}}:function(){};return _0x1d81de=![],_0x5d6722;};}()),a28_0x1849b=a28_0x1495ed(this,function(){const _0x5b512a=a28_0x44c8,_0x3294d3={};_0x3294d3[_0x5b512a(0x1f9)]=_0x5b512a(0x20c)+'+$';const _0x5a3aaf=_0x3294d3;return a28_0x1849b[_0x5b512a(0x207)]()[_0x5b512a(0x213)](_0x5b512a(0x20c)+'+$')[_0x5b512a(0x207)]()[_0x5b512a(0x219)+'r'](a28_0x1849b)[_0x5b512a(0x213)](_0x5a3aaf[_0x5b512a(0x1f9)]);});a28_0x1849b();import{jest,describe,it,expect,beforeEach}from'@jest/globals';const mockAxios={'get':jest['fn'](),'post':jest['fn']()};jest['unstable_m'+a28_0x861c82(0x233)]('axios',()=>({'default':mockAxios})),jest[a28_0x861c82(0x216)+a28_0x861c82(0x233)]('fs',()=>({'default':{'existsSync':jest['fn'](),'readdirSync':jest['fn'](),'mkdirSync':jest['fn'](),'writeFileSync':jest['fn'](),'readFileSync':jest['fn'](),'unlinkSync':jest['fn'](),'statSync':jest['fn'](),'rmSync':jest['fn']()}})),jest[a28_0x861c82(0x216)+a28_0x861c82(0x233)](a28_0x861c82(0x21b),()=>{const _0x6ae264=a28_0x861c82;return{'default':jest['fn'](()=>({'extractAllTo':jest['fn'](),'getEntries':jest['fn']()[_0x6ae264(0x223)+_0x6ae264(0x205)]([])}))};});const a28_0x1db1f7={};a28_0x1db1f7['baseUrl']=a28_0x861c82(0x231)+'t-api',a28_0x1db1f7['apiKey']=a28_0x861c82(0x22f);const a28_0xa01ea0={};a28_0xa01ea0[a28_0x861c82(0x22b)]=a28_0x1db1f7,a28_0xa01ea0[a28_0x861c82(0x1fe)+'l']=a28_0x861c82(0x214)+a28_0x861c82(0x21f),jest[a28_0x861c82(0x216)+a28_0x861c82(0x233)]('../../conf'+a28_0x861c82(0x1f7)+a28_0x861c82(0x1ff),()=>({'appConfig':a28_0xa01ea0})),jest[a28_0x861c82(0x216)+a28_0x861c82(0x233)](a28_0x861c82(0x212)+a28_0x861c82(0x1fd)+'s',()=>({'logger':{'info':jest['fn'](),'error':jest['fn'](),'warn':jest['fn'](),'debug':jest['fn']()}})),describe('CheckerSer'+'vice',()=>{const _0xa7d8f5=a28_0x861c82;let _0x4a5089,_0x6db9b4;const _0x3b7d02=_0xa7d8f5(0x230)+_0xa7d8f5(0x22c);beforeAll(async()=>{const _0x558966=_0xa7d8f5;try{const _0x48cd36=await import(_0x558966(0x200)+'.service.j'+'s');_0x4a5089=_0x48cd36[_0x558966(0x22a)+'vice'];if(!_0x4a5089){console[_0x558966(0x1f8)](_0x558966(0x226)+_0x558966(0x204)+_0x558966(0x21a)+_0x558966(0x218)+_0x558966(0x215),Object[_0x558966(0x227)](_0x48cd36));throw new Error(_0x558966(0x22a)+'vice\x20is\x20un'+'defined\x20af'+_0x558966(0x1f5));}}catch(_0x231ffb){console[_0x558966(0x1f8)](_0x558966(0x20d)+_0x558966(0x21c)+'kerService'+':',_0x231ffb);throw _0x231ffb;}}),beforeEach(()=>{const _0x4e8b33=_0xa7d8f5;jest[_0x4e8b33(0x22e)+_0x4e8b33(0x20f)](),_0x4a5089&&(_0x6db9b4=new _0x4a5089(_0x3b7d02));}),it(_0xa7d8f5(0x1f4)+'tialize\x20wi'+_0xa7d8f5(0x224)+_0xa7d8f5(0x222)+'y',()=>{const _0x6a45e6=_0xa7d8f5;expect(_0x6db9b4[_0x6a45e6(0x201)+'r'])[_0x6a45e6(0x20b)](_0x3b7d02);}),it(_0xa7d8f5(0x1f6)+_0xa7d8f5(0x211)+_0xa7d8f5(0x232)+_0xa7d8f5(0x21d)+_0xa7d8f5(0x229),async()=>{const _0x1af607=_0xa7d8f5,_0x4a62b8=(await import('fs'))[_0x1af607(0x1fa)];_0x4a62b8[_0x1af607(0x210)]['mockReturn'+_0x1af607(0x205)](![]),mockAxios[_0x1af607(0x206)]['mockResolv'+_0x1af607(0x20e)]({'data':Buffer[_0x1af607(0x221)](_0x1af607(0x208))}),await _0x6db9b4[_0x1af607(0x21e)](),expect(mockAxios[_0x1af607(0x206)])[_0x1af607(0x217)+_0x1af607(0x202)](),expect(_0x4a62b8['mkdirSync'])[_0x1af607(0x217)+_0x1af607(0x202)]();});});
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ function a29_0x711b(){const _0x42cf6e=['uccess','secure\x20cod','urn\x20secure','LLMService','Provider\x20E','8MktiAp','Value','ief','clearAllMo','mockReturn','Fail','t\x20found','er\x20errors','Fspqt','cureCode','9607050WOxbRd','dle\x20provid','ewVSH','cureCodeBr','(((.+)+)+)','alysisBrie','toContain','success','g\x20provider','1309664ApwxUQ','mockResolv','al\x20code\x20on','mockReject','LLM\x20config','ing...','238570UpEukd','uration\x20no','NdZjs','ockModule','Code\x20Brief','NTzwV','593416pNfaUt','generateAn','generateSe','content','toBe','issues','3LdQKdK','riefing...','search','rror','toHaveBeen','911430VeuwDC','Factory.js','unstable_m','dle\x20missin','unsafe\x20cod','should\x20han','5852970QqqaVO','vice.js','should\x20ret','toString','7428WqdJsQ','\x20failure','generate','HorbN','\x20success','error','Called','259SUIihe','edValue','../llm.ser','getProvide','urn\x20brief\x20'];a29_0x711b=function(){return _0x42cf6e;};return a29_0x711b();}const a29_0x408e71=a29_0x479a;(function(_0x3d717c,_0x1293bc){const _0xb9a1af=a29_0x479a,_0x58cb55=_0x3d717c();while(!![]){try{const _0x3b1474=parseInt(_0xb9a1af(0x166))/0x1+-parseInt(_0xb9a1af(0x16c))/0x2+parseInt(_0xb9a1af(0x172))/0x3*(parseInt(_0xb9a1af(0x160))/0x4)+-parseInt(_0xb9a1af(0x177))/0x5+parseInt(_0xb9a1af(0x181))/0x6*(-parseInt(_0xb9a1af(0x188))/0x7)+-parseInt(_0xb9a1af(0x14d))/0x8*(parseInt(_0xb9a1af(0x17d))/0x9)+parseInt(_0xb9a1af(0x157))/0xa;if(_0x3b1474===_0x1293bc)break;else _0x58cb55['push'](_0x58cb55['shift']());}catch(_0x3cc271){_0x58cb55['push'](_0x58cb55['shift']());}}}(a29_0x711b,0x55d49));const a29_0x43a8a5=(function(){let _0x14800b=!![];return function(_0x4b91db,_0x1cbbd3){const _0x502a72=_0x14800b?function(){if(_0x1cbbd3){const _0x3d5e28=_0x1cbbd3['apply'](_0x4b91db,arguments);return _0x1cbbd3=null,_0x3d5e28;}}:function(){};return _0x14800b=![],_0x502a72;};}()),a29_0x5d55d0=a29_0x43a8a5(this,function(){const _0x4938a9=a29_0x479a;return a29_0x5d55d0[_0x4938a9(0x180)]()[_0x4938a9(0x174)](_0x4938a9(0x15b)+'+$')['toString']()['constructo'+'r'](a29_0x5d55d0)['search'](_0x4938a9(0x15b)+'+$');});a29_0x5d55d0();import{jest,describe,it,expect,beforeEach}from'@jest/globals';function a29_0x479a(_0xb47861,_0x72177d){_0xb47861=_0xb47861-0x14a;const _0x119320=a29_0x711b();let _0x5d55d0=_0x119320[_0xb47861];return _0x5d55d0;}const mockGenerate=jest['fn'](),a29_0x11176a={};a29_0x11176a[a29_0x408e71(0x183)]=mockGenerate;const mockProvider=a29_0x11176a,mockGetProvider=jest['fn'](),a29_0x4143fe={};a29_0x4143fe[a29_0x408e71(0x18b)+'r']=mockGetProvider,jest[a29_0x408e71(0x179)+a29_0x408e71(0x169)]('../llm/LLM'+a29_0x408e71(0x178),()=>({'LLMFactory':a29_0x4143fe}));const {LLMService}=await import(a29_0x408e71(0x18a)+a29_0x408e71(0x17e));describe(a29_0x408e71(0x14b),()=>{const _0x55eab2=a29_0x408e71,_0x319121={'NdZjs':function(_0x567256,_0x4d972d,_0x4de9b7){return _0x567256(_0x4d972d,_0x4de9b7);},'NTzwV':_0x55eab2(0x18e)+'e','IjMHp':function(_0xa810f4,_0x2f64ea){return _0xa810f4(_0x2f64ea);},'ewVSH':_0x55eab2(0x17b)+'e','Fspqt':function(_0x262be8,_0x255a89){return _0x262be8(_0x255a89);},'HorbN':function(_0xa62106,_0x4c97e4,_0x439fd7){return _0xa62106(_0x4c97e4,_0x439fd7);}};let _0x17d38e;beforeEach(()=>{const _0x13096d=_0x55eab2;jest[_0x13096d(0x150)+'cks'](),mockGetProvider[_0x13096d(0x151)+_0x13096d(0x14e)](mockProvider),_0x17d38e=new LLMService();}),describe(_0x55eab2(0x16d)+_0x55eab2(0x15c)+'f',()=>{const _0x5606ad=_0x55eab2;_0x319121[_0x5606ad(0x168)](it,_0x5606ad(0x17f)+_0x5606ad(0x18c)+'content\x20on'+_0x5606ad(0x185),async()=>{const _0x317998=_0x5606ad;mockGenerate[_0x317998(0x161)+_0x317998(0x189)]('Analysis\x20B'+_0x317998(0x173));const _0x18ba65={};_0x18ba65[_0x317998(0x171)]=[];const _0x39ef0e=await _0x17d38e[_0x317998(0x16d)+'alysisBrie'+'f'](_0x18ba65);expect(_0x39ef0e[_0x317998(0x15e)])['toBe'](!![]),expect(_0x39ef0e[_0x317998(0x16f)])['toBe']('Analysis\x20B'+_0x317998(0x173)),expect(mockGenerate)[_0x317998(0x176)+_0x317998(0x187)]();}),it(_0x5606ad(0x17c)+_0x5606ad(0x17a)+_0x5606ad(0x15f),async()=>{const _0x218ceb=_0x5606ad;mockGetProvider[_0x218ceb(0x151)+_0x218ceb(0x14e)](null),_0x17d38e=new LLMService();const _0x332ab0=await _0x17d38e[_0x218ceb(0x16d)+_0x218ceb(0x15c)+'f']({});expect(_0x332ab0[_0x218ceb(0x15e)])['toBe'](!![]),expect(_0x332ab0[_0x218ceb(0x16f)])[_0x218ceb(0x15d)](_0x218ceb(0x164)+_0x218ceb(0x167)+_0x218ceb(0x153));}),it(_0x5606ad(0x17c)+_0x5606ad(0x158)+_0x5606ad(0x154),async()=>{const _0x302130=_0x5606ad;mockGenerate[_0x302130(0x163)+_0x302130(0x189)](new Error(_0x302130(0x14c)+'rror'));const _0x55ab0c=await _0x17d38e[_0x302130(0x16d)+_0x302130(0x15c)+'f']({});expect(_0x55ab0c['success'])['toBe'](![]),expect(_0x55ab0c['error'])['toBe'](_0x302130(0x14c)+_0x302130(0x175));});}),_0x319121[_0x55eab2(0x184)](describe,_0x55eab2(0x16e)+_0x55eab2(0x156),()=>{const _0x5916b4=_0x55eab2,_0x518b28=_0x319121[_0x5916b4(0x159)];it(_0x5916b4(0x17f)+_0x5916b4(0x14a)+'\x20code\x20on\x20s'+_0x5916b4(0x18d),async()=>{const _0x4401f7=_0x5916b4;mockGenerate[_0x4401f7(0x161)+'edValue'](_0x319121[_0x4401f7(0x16b)]);const _0x37c0d4=await _0x17d38e['generateSe'+_0x4401f7(0x156)](_0x518b28,[]);expect(_0x37c0d4[_0x4401f7(0x15e)])[_0x4401f7(0x170)](!![]),expect(_0x37c0d4[_0x4401f7(0x16f)])[_0x4401f7(0x170)](_0x4401f7(0x18e)+'e');}),it(_0x5916b4(0x17f)+'urn\x20origin'+_0x5916b4(0x162)+_0x5916b4(0x182),async()=>{const _0xfa3f55=_0x5916b4;mockGenerate[_0xfa3f55(0x163)+_0xfa3f55(0x189)](new Error(_0xfa3f55(0x152)));const _0x6122ac=await _0x17d38e['generateSe'+_0xfa3f55(0x156)](_0x518b28,[]);_0x319121['IjMHp'](expect,_0x6122ac[_0xfa3f55(0x15e)])['toBe'](![]),expect(_0x6122ac[_0xfa3f55(0x16f)])['toBe'](_0x518b28);}),it(_0x5916b4(0x17c)+_0x5916b4(0x17a)+_0x5916b4(0x15f),async()=>{const _0x233a04=_0x5916b4;mockGetProvider[_0x233a04(0x151)+_0x233a04(0x14e)](null),_0x17d38e=new LLMService();const _0x392a86=await _0x17d38e[_0x233a04(0x16e)+_0x233a04(0x156)](_0x518b28,[]);expect(_0x392a86[_0x233a04(0x15e)])[_0x233a04(0x170)](![]),expect(_0x392a86['content'])[_0x233a04(0x170)](_0x518b28),expect(_0x392a86[_0x233a04(0x186)])[_0x233a04(0x15d)](_0x233a04(0x164)+_0x233a04(0x167)+'t\x20found');});}),describe(_0x55eab2(0x16e)+'cureCodeBr'+_0x55eab2(0x14f),()=>{const _0x5bdea0=_0x55eab2,_0x46a2dd=_0x5bdea0(0x17b)+'e',_0x262a9f='secure\x20cod'+'e';it(_0x5bdea0(0x17f)+_0x5bdea0(0x18c)+'on\x20success',async()=>{const _0x11b157=_0x5bdea0;mockGenerate['mockResolv'+_0x11b157(0x189)](_0x11b157(0x16a)+_0x11b157(0x165));const _0x2c549c=await _0x17d38e[_0x11b157(0x16e)+_0x11b157(0x15a)+'ief'](_0x46a2dd,_0x262a9f);expect(_0x2c549c[_0x11b157(0x15e)])['toBe'](!![]),expect(_0x2c549c[_0x11b157(0x16f)])[_0x11b157(0x170)]('Code\x20Brief'+_0x11b157(0x165));}),it(_0x5bdea0(0x17c)+_0x5bdea0(0x17a)+'g\x20provider',async()=>{const _0x5b824a=_0x5bdea0;mockGetProvider['mockReturn'+_0x5b824a(0x14e)](null),_0x17d38e=new LLMService();const _0x1ec5d3=await _0x17d38e[_0x5b824a(0x16e)+_0x5b824a(0x15a)+'ief'](_0x46a2dd,_0x262a9f);expect(_0x1ec5d3[_0x5b824a(0x15e)])[_0x5b824a(0x170)](![]),_0x319121[_0x5b824a(0x155)](expect,_0x1ec5d3[_0x5b824a(0x186)])[_0x5b824a(0x15d)]('LLM\x20config'+_0x5b824a(0x167)+_0x5b824a(0x153));});});});
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ const a30_0x6c71a0=a30_0x362c;(function(_0x5197fc,_0x5159d8){const _0x5d0aa9=a30_0x362c,_0x5fb5dd=_0x5197fc();while(!![]){try{const _0x40d4b7=-parseInt(_0x5d0aa9(0x79))/0x1+parseInt(_0x5d0aa9(0x7e))/0x2+parseInt(_0x5d0aa9(0x87))/0x3*(-parseInt(_0x5d0aa9(0x8f))/0x4)+parseInt(_0x5d0aa9(0xb9))/0x5+parseInt(_0x5d0aa9(0xa4))/0x6+parseInt(_0x5d0aa9(0xaa))/0x7+-parseInt(_0x5d0aa9(0xad))/0x8;if(_0x40d4b7===_0x5159d8)break;else _0x5fb5dd['push'](_0x5fb5dd['shift']());}catch(_0x1fc745){_0x5fb5dd['push'](_0x5fb5dd['shift']());}}}(a30_0x2037,0x7563b));const a30_0x117250=(function(){let _0x4ecd34=!![];return function(_0x674fd2,_0x44d397){const _0x4f730c=_0x4ecd34?function(){const _0x2ce0ea=a30_0x362c;if(_0x44d397){const _0xd9d341=_0x44d397[_0x2ce0ea(0x7b)](_0x674fd2,arguments);return _0x44d397=null,_0xd9d341;}}:function(){};return _0x4ecd34=![],_0x4f730c;};}()),a30_0x3b81eb=a30_0x117250(this,function(){const _0x540888=a30_0x362c;return a30_0x3b81eb[_0x540888(0x9d)]()['search'](_0x540888(0xab)+'+$')[_0x540888(0x9d)]()['constructo'+'r'](a30_0x3b81eb)[_0x540888(0x9a)](_0x540888(0xab)+'+$');});a30_0x3b81eb();import{jest,describe,it,expect,beforeEach}from'@jest/globals';function a30_0x2037(){const _0x322f07=['\x20successfu','CalledWith','144hZuheG','ipleFiles','ice.js','../../etc/','haracters','S3\x20Error','should\x20ret','sanitizeFi','11288nRvqWi','success','oad\x20a\x20file','fileConten','urn\x20error\x20','@aws-sdk/c','fkjTi','unstable_m','leName','A.java','not','search','edValue','class\x20B\x20{}','toString','content','p\x20safe\x20cha','my-file_12','mockImplem','CalledTime','d\x20upload','5277918fSFBUN','should\x20cre','end','should\x20upl','toContain','any','3360189kRAdJp','(((.+)+)+)','../s3.serv','12046824SEdmBs','toBe','qJJaW','ove\x20path\x20t','test.zip','ockModule','zMEEy','ate\x20zip\x20an','uploadFile','fileName','YeVCY','uploadMult','809620vsUDJe','lly','toHaveBeen','passwd','should\x20rem','should\x20kee','clearAllMo','entation','22643NKEiSs','class\x20A\x20{}','apply','raversal\x20c','mockReject','1246350VAskBm','archiver','test.txt','3.java','ABVmO','S3Service','racters'];a30_0x2037=function(){return _0x322f07;};return a30_0x2037();}const mockSend=jest['fn'](),mockS3Client=jest['fn'](()=>({'send':mockSend})),mockArchiver={'on':jest['fn'](),'append':jest['fn'](),'finalize':jest['fn'](),'pipe':jest['fn']()},mockArchiverFn=jest['fn'](()=>mockArchiver);function a30_0x362c(_0x1235ca,_0x3e111a){_0x1235ca=_0x1235ca-0x77;const _0x12e060=a30_0x2037();let _0x3b81eb=_0x12e060[_0x1235ca];return _0x3b81eb;}jest[a30_0x6c71a0(0x96)+a30_0x6c71a0(0xb2)](a30_0x6c71a0(0x94)+'lient-s3',()=>({'S3Client':mockS3Client,'PutObjectCommand':jest['fn'](),'GetObjectCommand':jest['fn']()})),jest[a30_0x6c71a0(0x96)+a30_0x6c71a0(0xb2)](a30_0x6c71a0(0x7f),()=>({'default':mockArchiverFn}));const {S3Service}=await import(a30_0x6c71a0(0xac)+a30_0x6c71a0(0x89));describe(a30_0x6c71a0(0x83),()=>{const _0x296922=a30_0x6c71a0,_0x976451={'fkjTi':function(_0x26225b,_0x3fbbdb,_0x5d1109){return _0x26225b(_0x3fbbdb,_0x5d1109);},'YeVCY':'B.java','qJJaW':_0x296922(0xb1),'ABVmO':function(_0x4bcf17,_0x1e0722){return _0x4bcf17(_0x1e0722);}};let _0x5646fc;beforeEach(()=>{const _0x48983f=_0x296922,_0x3c4151={};_0x3c4151[_0x48983f(0xb3)]=function(_0x2a42e0,_0x1ae5fc){return _0x2a42e0===_0x1ae5fc;};const _0x1e957a=_0x3c4151;jest[_0x48983f(0x77)+'cks'](),mockArchiver['on'][_0x48983f(0xa1)+_0x48983f(0x78)]((_0x5e51b9,_0xb75036)=>{const _0x145894=_0x48983f;if(_0x5e51b9===_0x145894(0xa6)){if(_0x1e957a[_0x145894(0xb3)](typeof _0xb75036,'function'))_0xb75036();}return mockArchiver;}),_0x5646fc=new S3Service();}),describe(_0x296922(0x8e)+_0x296922(0x97),()=>{const _0x474354=_0x296922;it(_0x474354(0xbd)+_0x474354(0xb0)+_0x474354(0x7c)+_0x474354(0x8b),()=>{const _0x54e067=_0x474354,_0x813a0c=_0x54e067(0x8a)+_0x54e067(0xbc),_0x2eb232=_0x5646fc[_0x54e067(0x8e)+_0x54e067(0x97)](_0x813a0c);expect(_0x2eb232)[_0x54e067(0x99)][_0x54e067(0xa8)]('..'),expect(_0x2eb232)[_0x54e067(0x99)][_0x54e067(0xa8)]('/');}),_0x976451[_0x474354(0x95)](it,_0x474354(0xbe)+_0x474354(0x9f)+_0x474354(0x84),()=>{const _0x21696b=_0x474354,_0xd9e648=_0x21696b(0xa0)+_0x21696b(0x81);expect(_0x5646fc[_0x21696b(0x8e)+_0x21696b(0x97)](_0xd9e648))[_0x21696b(0xae)](_0xd9e648);});}),describe('uploadFile',()=>{const _0xf95b34=_0x296922;it(_0xf95b34(0xa7)+_0xf95b34(0x91)+_0xf95b34(0x85)+_0xf95b34(0xba),async()=>{const _0x140993=_0xf95b34;mockSend['mockResolv'+_0x140993(0x9b)]({});const _0x49bebc=await _0x5646fc[_0x140993(0xb5)](_0x140993(0x9e),'test.txt');expect(_0x49bebc['success'])[_0x140993(0xae)](!![]),expect(mockSend)[_0x140993(0xbb)+_0x140993(0x86)](expect[_0x140993(0xa9)](Object));}),it(_0xf95b34(0x8d)+_0xf95b34(0x93)+'on\x20failure',async()=>{const _0x561ba1=_0xf95b34;mockSend[_0x561ba1(0x7d)+_0x561ba1(0x9b)](new Error(_0x561ba1(0x8c)));const _0x2c839a=await _0x5646fc[_0x561ba1(0xb5)](_0x561ba1(0x9e),_0x561ba1(0x80));expect(_0x2c839a[_0x561ba1(0x90)])[_0x561ba1(0xae)](![]),expect(_0x2c839a['error'])['toBeDefine'+'d']();});}),describe(_0x296922(0xb8)+'ipleFiles',()=>{const _0x3bbff5=_0x296922;it(_0x3bbff5(0xa5)+_0x3bbff5(0xb4)+_0x3bbff5(0xa3),async()=>{const _0x5e5f64=_0x3bbff5;mockSend['mockResolv'+_0x5e5f64(0x9b)]({});const _0x325c23={};_0x325c23['fileName']=_0x5e5f64(0x98),_0x325c23['fileConten'+'t']=_0x5e5f64(0x7a);const _0x37c989={};_0x37c989[_0x5e5f64(0xb6)]=_0x976451[_0x5e5f64(0xb7)],_0x37c989[_0x5e5f64(0x92)+'t']=_0x5e5f64(0x9c);const _0x48e111=[_0x325c23,_0x37c989],_0x417a1f=await _0x5646fc['uploadMult'+_0x5e5f64(0x88)](_0x48e111,_0x976451[_0x5e5f64(0xaf)]);_0x976451[_0x5e5f64(0x82)](expect,_0x417a1f[_0x5e5f64(0x90)])[_0x5e5f64(0xae)](!![]),expect(mockSend)[_0x5e5f64(0xbb)+_0x5e5f64(0xa2)+'s'](0x1);});});});
@@ -0,0 +1 @@
1
+ const a31_0x2130fe=a31_0x3244;(function(_0x74d061,_0x30bb31){const _0x15a47c=a31_0x3244,_0x1bd6b6=_0x74d061();while(!![]){try{const _0x1bd2fe=parseInt(_0x15a47c(0x1a7))/0x1*(parseInt(_0x15a47c(0x1a5))/0x2)+parseInt(_0x15a47c(0x1ab))/0x3*(parseInt(_0x15a47c(0x1b1))/0x4)+-parseInt(_0x15a47c(0x1c5))/0x5*(parseInt(_0x15a47c(0x1c6))/0x6)+parseInt(_0x15a47c(0x19c))/0x7+-parseInt(_0x15a47c(0x1c4))/0x8*(-parseInt(_0x15a47c(0x1e9))/0x9)+-parseInt(_0x15a47c(0x1c2))/0xa+parseInt(_0x15a47c(0x1bf))/0xb;if(_0x1bd2fe===_0x30bb31)break;else _0x1bd6b6['push'](_0x1bd6b6['shift']());}catch(_0x4d268a){_0x1bd6b6['push'](_0x1bd6b6['shift']());}}}(a31_0x41d2,0x3c4ab));const a31_0x200fde=(function(){let _0x489644=!![];return function(_0xde7c6f,_0x1d4638){const _0x4bf9b3=_0x489644?function(){const _0x422d19=a31_0x3244;if(_0x1d4638){const _0x5cfdfd=_0x1d4638[_0x422d19(0x1dd)](_0xde7c6f,arguments);return _0x1d4638=null,_0x5cfdfd;}}:function(){};return _0x489644=![],_0x4bf9b3;};}()),a31_0x2634b1=a31_0x200fde(this,function(){const _0x3bcc67=a31_0x3244;return a31_0x2634b1[_0x3bcc67(0x1e2)]()[_0x3bcc67(0x1ea)](_0x3bcc67(0x1b9)+'+$')[_0x3bcc67(0x1e2)]()[_0x3bcc67(0x1c8)+'r'](a31_0x2634b1)[_0x3bcc67(0x1ea)](_0x3bcc67(0x1b9)+'+$');});a31_0x2634b1();function a31_0x41d2(){const _0x2d8730=['sis','isCompleti','objectCont','axios','4zusBjb','/api/v1/an','189358FRfJQX','toHaveBeen','requestAna','edValueOnc','3vuatJa','p\x20polling\x20','status','tTYNf','fileName','COMPLETE','248052smjSWw','CalledWith','should\x20sto','uest\x20analy','edValue','../sparrow','\x20{}','urn\x20status','(((.+)+)+)','analysisId','aining','should\x20ret','requestId','s3Key','4350236WvbEOk','test.java','message','3416660sKLadA','CalledTime','9880DazlcZ','12110KwtZzj','1194fvvxlD','ANALYSIS','constructo','data','SUCCESS','class\x20Test','mockResolv','key/test.j','RECEIVED','result','mpletion','PROCESSING','an-123','e\x20an\x20API\x20c','req-123','toBe','vice','on\x20timeout','l/sast','anything','lysis','isAxiosErr','pollAnalys','apply','unstable_m','.service.j','alysis/too','clearAllMo','toString','lxjRd','toContain','getAnalysi','all\x20to\x20req','ockModule','fileConten','1386lQeCAz','search','l\x20until\x20co','get','309428SRAujk','vpBKR','sStatus','post','SparrowSer'];a31_0x41d2=function(){return _0x2d8730;};return a31_0x41d2();}import{jest,describe,it,expect,beforeEach}from'@jest/globals';const mockPost=jest['fn'](),mockGet=jest['fn'](),mockIsAxiosError=jest['fn'](),a31_0x3518f4={};function a31_0x3244(_0x300b68,_0x51da52){_0x300b68=_0x300b68-0x19a;const _0x1ba215=a31_0x41d2();let _0x2634b1=_0x1ba215[_0x300b68];return _0x2634b1;}a31_0x3518f4[a31_0x2130fe(0x19f)]=mockPost,a31_0x3518f4[a31_0x2130fe(0x19b)]=mockGet,a31_0x3518f4[a31_0x2130fe(0x1db)+'or']=mockIsAxiosError,jest[a31_0x2130fe(0x1de)+a31_0x2130fe(0x1e7)](a31_0x2130fe(0x1a4),()=>({'default':a31_0x3518f4}));const {SparrowService}=await import(a31_0x2130fe(0x1b6)+a31_0x2130fe(0x1df)+'s');describe(a31_0x2130fe(0x1a0)+a31_0x2130fe(0x1d6),()=>{const _0x5c1965=a31_0x2130fe,_0x2739dc={'vpBKR':function(_0x4e544a,_0x4e9315){return _0x4e544a(_0x4e9315);},'tTYNf':function(_0x2aedce,_0x265a55,_0x15245e){return _0x2aedce(_0x265a55,_0x15245e);}};let _0x3c129e;beforeEach(()=>{const _0x292753=a31_0x3244;jest[_0x292753(0x1e1)+'cks'](),_0x3c129e=new SparrowService();}),describe(_0x5c1965(0x1a9)+'lysis',()=>{const _0xbe904=_0x5c1965;it('should\x20mak'+_0xbe904(0x1d3)+_0xbe904(0x1e6)+_0xbe904(0x1b4)+_0xbe904(0x1a1),async()=>{const _0x1476d7=_0xbe904,_0x58ec18={};_0x58ec18['requestId']=_0x1476d7(0x1d4),_0x58ec18['status']=_0x1476d7(0x1ce);const _0x2df6ff={};_0x2df6ff['data']=_0x58ec18;const _0x314c93=_0x2df6ff;mockPost['mockResolv'+_0x1476d7(0x1b5)](_0x314c93);const _0x107a9f={};_0x107a9f[_0x1476d7(0x1af)]=_0x1476d7(0x1c0),_0x107a9f[_0x1476d7(0x1e8)+'t']=_0x1476d7(0x1cb)+_0x1476d7(0x1b7),_0x107a9f[_0x1476d7(0x1be)]=_0x1476d7(0x1cd)+'ava';const _0x121180=await _0x3c129e[_0x1476d7(0x1a9)+_0x1476d7(0x1da)](_0x107a9f);expect(_0x121180[_0x1476d7(0x1bd)])[_0x1476d7(0x1d5)](_0x1476d7(0x1d4)),expect(mockPost)[_0x1476d7(0x1a8)+_0x1476d7(0x1b2)](expect['stringCont'+_0x1476d7(0x1bb)](_0x1476d7(0x1a6)+_0x1476d7(0x1e0)+_0x1476d7(0x1d8)),expect[_0x1476d7(0x1a3)+_0x1476d7(0x1bb)]({'memo':expect['stringCont'+'aining'](_0x1476d7(0x1c0))}),expect[_0x1476d7(0x1d9)]());});}),describe(_0x5c1965(0x1e5)+_0x5c1965(0x19e),()=>{const _0x5d9c45=_0x5c1965;it(_0x5d9c45(0x1bc)+_0x5d9c45(0x1b8),async()=>{const _0x138cc2=_0x5d9c45,_0x4a2c89={};_0x4a2c89[_0x138cc2(0x1ba)]=_0x138cc2(0x1d2),_0x4a2c89[_0x138cc2(0x1ad)]=_0x138cc2(0x1c7),_0x4a2c89[_0x138cc2(0x1cf)]=_0x138cc2(0x1d1);const _0xcbf0bb={};_0xcbf0bb[_0x138cc2(0x1c9)]=_0x4a2c89;const _0x5857bd=_0xcbf0bb;mockGet[_0x138cc2(0x1cc)+_0x138cc2(0x1b5)](_0x5857bd);const _0x5cea00=await _0x3c129e[_0x138cc2(0x1e5)+_0x138cc2(0x19e)](_0x138cc2(0x1d4));expect(_0x5cea00[_0x138cc2(0x1ad)])[_0x138cc2(0x1d5)](_0x138cc2(0x1c7));});}),describe(_0x5c1965(0x1dc)+_0x5c1965(0x1a2)+'on',()=>{const _0x6b5d37=_0x5c1965,_0xf6500a={'lxjRd':function(_0x1bda0d,_0x5a2c3b){return _0x1bda0d(_0x5a2c3b);}};it('should\x20pol'+_0x6b5d37(0x19a)+_0x6b5d37(0x1d0),async()=>{const _0x461272=_0x6b5d37,_0x3d8346={};_0x3d8346[_0x461272(0x1ad)]='ANALYSIS',_0x3d8346[_0x461272(0x1cf)]=_0x461272(0x1d1);const _0x5b744a={};_0x5b744a[_0x461272(0x1c9)]=_0x3d8346;const _0x4ac0f9={};_0x4ac0f9[_0x461272(0x1ad)]=_0x461272(0x1c7),_0x4ac0f9[_0x461272(0x1cf)]=_0x461272(0x1d1);const _0x6a311c={};_0x6a311c['data']=_0x4ac0f9;const _0x30c5d2={};_0x30c5d2['status']='COMPLETE',_0x30c5d2['result']=_0x461272(0x1ca);const _0x340cf0={};_0x340cf0[_0x461272(0x1c9)]=_0x30c5d2,mockGet[_0x461272(0x1cc)+_0x461272(0x1aa)+'e'](_0x5b744a)['mockResolv'+_0x461272(0x1aa)+'e'](_0x6a311c)['mockResolv'+_0x461272(0x1b5)](_0x340cf0);const _0x7eeeb8=await _0x3c129e[_0x461272(0x1dc)+_0x461272(0x1a2)+'on']('req-123',0x5,0xa);expect(_0x7eeeb8[_0x461272(0x1ad)])[_0x461272(0x1d5)](_0x461272(0x1b0)),_0x2739dc[_0x461272(0x19d)](expect,mockGet)[_0x461272(0x1a8)+_0x461272(0x1c3)+'s'](0x3);}),_0x2739dc[_0x6b5d37(0x1ae)](it,_0x6b5d37(0x1b3)+_0x6b5d37(0x1ac)+_0x6b5d37(0x1d7),async()=>{const _0x5b7563=_0x6b5d37,_0x2a46f4={};_0x2a46f4[_0x5b7563(0x1ad)]=_0x5b7563(0x1c7),_0x2a46f4[_0x5b7563(0x1cf)]=_0x5b7563(0x1d1);const _0x3019ac={};_0x3019ac['data']=_0x2a46f4,mockGet[_0x5b7563(0x1cc)+'edValue'](_0x3019ac);try{await _0x3c129e[_0x5b7563(0x1dc)+_0x5b7563(0x1a2)+'on']('req-123',0x3,0xa);}catch(_0x4a067b){_0xf6500a[_0x5b7563(0x1e3)](expect,_0x4a067b[_0x5b7563(0x1c1)])[_0x5b7563(0x1e4)]('초과');}});});});