@sparrowai/sparrow-mcp 1.1.12 → 1.1.13
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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/scripts/mcp-test/mcp-client.js +1 -1
- package/dist/scripts/test-runner/check-failed-tests.js +1 -1
- package/dist/scripts/test-runner/compare-responses.js +1 -1
- package/dist/scripts/test-runner/standalone-test-fixed-header.js +1 -1
- package/dist/scripts/test-runner/standalone-test.js +1 -1
- package/dist/src/config/appConfig.js +1 -1
- package/dist/src/config/constants.js +1 -1
- package/dist/src/controllers/__tests__/analysis.controller.test.js +1 -1
- package/dist/src/controllers/__tests__/sast.controller.test.js +1 -1
- package/dist/src/controllers/__tests__/sca.controller.test.js +1 -1
- package/dist/src/controllers/__tests__/security.controller.test.js +1 -1
- package/dist/src/controllers/__tests__/system.controller.test.js +1 -1
- package/dist/src/controllers/analysis.controller.js +1 -1
- package/dist/src/controllers/sast.controller.js +1 -1
- package/dist/src/controllers/sca.controller.js +1 -1
- package/dist/src/controllers/security.controller.js +1 -1
- package/dist/src/controllers/system.controller.js +1 -1
- package/dist/src/schemas/tool.schemas.js +1 -1
- package/dist/src/server.js +1 -1
- package/dist/src/services/__tests__/analysis.remediation.spec.d.ts +1 -0
- package/dist/src/services/__tests__/analysis.remediation.spec.js +1 -0
- package/dist/src/services/__tests__/analysis.remediation.test.js +1 -1
- package/dist/src/services/__tests__/analysis.service.sca.test.js +1 -1
- package/dist/src/services/__tests__/analysis.service.test.js +1 -1
- package/dist/src/services/__tests__/checker.service.test.js +1 -1
- package/dist/src/services/__tests__/llm.service.test.js +1 -1
- package/dist/src/services/__tests__/s3.service.test.js +1 -1
- package/dist/src/services/__tests__/sparrow.service.test.js +1 -1
- package/dist/src/services/analysis.service.js +1 -1
- package/dist/src/services/checker.service.js +1 -1
- package/dist/src/services/llm/AnthropicProvider.js +1 -1
- package/dist/src/services/llm/BedrockProvider.js +1 -1
- package/dist/src/services/llm/GeminiProvider.js +1 -1
- package/dist/src/services/llm/LLMFactory.js +1 -1
- package/dist/src/services/llm/LLMProvider.js +1 -1
- package/dist/src/services/llm/OllamaProvider.js +1 -1
- package/dist/src/services/llm/OpenAIProvider.js +1 -1
- package/dist/src/services/llm.service.js +1 -1
- package/dist/src/services/s3.service.js +1 -1
- package/dist/src/services/sparrow.service.js +1 -1
- package/dist/src/types/types.js +1 -1
- package/dist/src/utils/__tests__/crypto.util.test.js +1 -1
- package/dist/src/utils/__tests__/diff.util.test.js +1 -1
- package/dist/src/utils/__tests__/fileManager.test.js +1 -1
- package/dist/src/utils/__tests__/fileManagerSecure.test.js +1 -1
- package/dist/src/utils/__tests__/logger.test.js +1 -1
- package/dist/src/utils/crypto.util.js +1 -1
- package/dist/src/utils/diff.util.js +1 -1
- package/dist/src/utils/fileManager.js +1 -1
- package/dist/src/utils/fileManagerSecure.js +1 -1
- package/dist/src/utils/logger.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a20_0x2a1008=a20_0x20b1;function a20_0x20b1(_0x514358,_0x110f6b){_0x514358=_0x514358-0xc5;const _0x3092de=a20_0xdfdc();let _0x5f115d=_0x3092de[_0x514358];return _0x5f115d;}(function(_0x2b77a6,_0x18dd19){const _0x1436cd=a20_0x20b1,_0xbabd1b=_0x2b77a6();while(!![]){try{const _0x3aeff8=-parseInt(_0x1436cd(0x121))/0x1*(-parseInt(_0x1436cd(0x10a))/0x2)+-parseInt(_0x1436cd(0xff))/0x3+-parseInt(_0x1436cd(0xf4))/0x4+-parseInt(_0x1436cd(0x10b))/0x5+parseInt(_0x1436cd(0xe1))/0x6*(-parseInt(_0x1436cd(0xd3))/0x7)+parseInt(_0x1436cd(0xe2))/0x8+parseInt(_0x1436cd(0xe0))/0x9*(parseInt(_0x1436cd(0xf8))/0xa);if(_0x3aeff8===_0x18dd19)break;else _0xbabd1b['push'](_0xbabd1b['shift']());}catch(_0x5bf906){_0xbabd1b['push'](_0xbabd1b['shift']());}}}(a20_0xdfdc,0xf0235));const a20_0x522f9b=(function(){let _0x2519f4=!![];return function(_0x2223c5,_0x58fd4d){const _0x424f00=_0x2519f4?function(){const _0x1b0164=a20_0x20b1;if(_0x58fd4d){const _0x473719=_0x58fd4d[_0x1b0164(0x122)](_0x2223c5,arguments);return _0x58fd4d=null,_0x473719;}}:function(){};return _0x2519f4=![],_0x424f00;};}()),a20_0x5f115d=a20_0x522f9b(this,function(){const _0x5491c7=a20_0x20b1;return a20_0x5f115d[_0x5491c7(0xd2)]()['search'](_0x5491c7(0xf0)+'+$')['toString']()['constructo'+'r'](a20_0x5f115d)['search'](_0x5491c7(0xf0)+'+$');});a20_0x5f115d();function a20_0xdfdc(){const _0x312016=['checkerInf','tems','push','ync','(((.+)+)+)','recursive','warn','extractAll','4069900qabbmI','checkerCac','apiKey','initialize','4120790zpKUHh','get','resolve','getLocaliz','체커\x20파일\x20파싱\x20실','checkerKey','values','1598661MCxXQt','name','aded','erabilitie','descriptio','개\x20규칙\x20로드','enrichVuln','ensureChec','reference','nce','dirname','1111884BwgrUq','3122100AMyFqQ','체커\x20디렉토리가\x20존','readdirSyn','data','writeFileS','getComplia','filter','eckers','some','size','info','패:\x20','checkers.z','\x20실패:','existsSync','length','referenceI','sparrow','parse','Bearer\x20','has','version','1AJJJbO','apply','map','개\x20파일','groupVulne','from','toLowerCas','checkersDi','sByComplia','Info','erInfo','clear','체커\x20규칙\x20다운로드','error','lang','nceInfo','getChecker','key','toString','70ETMTbM','find','기존\x20체커\x20캐시\x20사','kers','재하지\x20않습니다','ByComplian','kersDownlo','\x20시작...','용:\x20','heckerCoun','loadChecke','baseUrl','set','63fbLjjw','664014hMOfWn','6596656DFIMmT','includes','endsWith','../../chec','refreshCac','localized','체커\x20서비스\x20초기화','\x20완료:\x20','sWithCheck','getCachedC'];a20_0xdfdc=function(){return _0x312016;};return a20_0xdfdc();}import a20_0x345c54 from'axios';import a20_0x3e2833 from'adm-zip';import a20_0x3de01e from'path';import a20_0x2c714a from'fs';import{fileURLToPath}from'url';import{appConfig}from'../config/appConfig.js';import{logger}from'../utils/logger.js';export class CheckerService{[a20_0x2a1008(0xc7)+'r'];[a20_0x2a1008(0xf5)+'he'];[a20_0x2a1008(0xf7)+'d']=![];constructor(_0xc6357a){const _0x40d701=a20_0x2a1008;if(_0xc6357a)this['checkersDi'+'r']=_0xc6357a;else{const _0xe9d62e=a20_0x3de01e[_0x40d701(0x109)](fileURLToPath(import.meta.url));this[_0x40d701(0xc7)+'r']=a20_0x3de01e[_0x40d701(0xfa)](_0xe9d62e,_0x40d701(0xe5)+_0x40d701(0xd6));}this[_0x40d701(0xf5)+'he']=new Map();}async[a20_0x2a1008(0xf7)](){const _0x30bd19=a20_0x2a1008;if(this['initialize'+'d'])return;try{await this[_0x30bd19(0x106)+_0x30bd19(0xd9)+'aded'](),await this[_0x30bd19(0xdd)+'rs'](),this[_0x30bd19(0xf7)+'d']=!![],logger[_0x30bd19(0x115)]('체커\x20서비스\x20초기화'+_0x30bd19(0xe9)+this[_0x30bd19(0xf5)+'he'][_0x30bd19(0x114)]+_0x30bd19(0x104));}catch(_0x32ec8d){logger[_0x30bd19(0xcd)](_0x30bd19(0xe8)+_0x30bd19(0x118),_0x32ec8d),this[_0x30bd19(0xf7)+'d']=!![];}}async[a20_0x2a1008(0x106)+'kersDownlo'+a20_0x2a1008(0x101)](){const _0x258c79=a20_0x2a1008;if(a20_0x2c714a[_0x258c79(0x119)](this[_0x258c79(0xc7)+'r'])){const _0x5fcdc2=a20_0x2c714a[_0x258c79(0x10d)+'c'](this['checkersDi'+'r']),_0x4e428f=_0x5fcdc2[_0x258c79(0x111)](_0x6e6f04=>_0x6e6f04[_0x258c79(0xe4)]('.rule'));if(_0x4e428f['length']>0x0){logger[_0x258c79(0x115)](_0x258c79(0xd5)+_0x258c79(0xdb)+_0x4e428f[_0x258c79(0x11a)]+_0x258c79(0x124));return;}}logger[_0x258c79(0x115)](_0x258c79(0xcc)+_0x258c79(0xda));try{const _0x5c690a=await a20_0x345c54[_0x258c79(0xf9)](appConfig['sparrow'][_0x258c79(0xde)]+('/api/v1/ch'+_0x258c79(0x112)),{'headers':{'Authorization':_0x258c79(0x11e)+appConfig[_0x258c79(0x11c)][_0x258c79(0xf6)]},'responseType':'arraybuffe'+'r','timeout':0xea60});if(!a20_0x2c714a[_0x258c79(0x119)](this[_0x258c79(0xc7)+'r'])){const _0x321945={};_0x321945[_0x258c79(0xf1)]=!![],a20_0x2c714a['mkdirSync'](this['checkersDi'+'r'],_0x321945);}const _0x473b38=a20_0x3de01e['join'](this[_0x258c79(0xc7)+'r'],_0x258c79(0x117)+'ip');a20_0x2c714a[_0x258c79(0x10f)+_0x258c79(0xef)](_0x473b38,Buffer[_0x258c79(0xc5)](_0x5c690a[_0x258c79(0x10e)]));const _0x371312=new a20_0x3e2833(_0x473b38);_0x371312[_0x258c79(0xf3)+'To'](this[_0x258c79(0xc7)+'r'],!![]),a20_0x2c714a['unlinkSync'](_0x473b38);const _0x1031b2=a20_0x2c714a['readdirSyn'+'c'](this['checkersDi'+'r']),_0xdedfb1=_0x1031b2[_0x258c79(0x111)](_0x34331c=>_0x34331c[_0x258c79(0xe4)]('.rule'));logger['info']('체커\x20규칙\x20다운로드'+'\x20완료:\x20'+_0xdedfb1[_0x258c79(0x11a)]+'개\x20파일');}catch(_0x3c3e0a){logger[_0x258c79(0xcd)](_0x258c79(0xcc)+_0x258c79(0x118),_0x3c3e0a);throw _0x3c3e0a;}}async['loadChecke'+'rs'](){const _0x528c78=a20_0x2a1008;if(!a20_0x2c714a['existsSync'](this[_0x528c78(0xc7)+'r'])){logger[_0x528c78(0xf2)](_0x528c78(0x10c)+_0x528c78(0xd7));return;}const _0x2cd3f2=a20_0x2c714a['readdirSyn'+'c'](this[_0x528c78(0xc7)+'r']),_0xfa618f=_0x2cd3f2[_0x528c78(0x111)](_0x14e73b=>_0x14e73b[_0x528c78(0xe4)]('.rule'));for(const _0x214209 of _0xfa618f){try{const _0x667462=a20_0x3de01e['join'](this['checkersDi'+'r'],_0x214209),_0xfdd00=a20_0x2c714a['readFileSy'+'nc'](_0x667462,'utf-8'),_0x58553f=JSON[_0x528c78(0x11d)](_0xfdd00);_0x58553f['key']&&this[_0x528c78(0xf5)+'he']['set'](_0x58553f[_0x528c78(0xd1)],_0x58553f);}catch(_0x74921a){logger[_0x528c78(0xf2)](_0x528c78(0xfc)+_0x528c78(0x116)+_0x214209,_0x74921a);}}}[a20_0x2a1008(0xd0)+a20_0x2a1008(0xc9)](_0x1c1a64,_0x425046='ko'){const _0xdb0634=a20_0x2a1008;return this['checkerCac'+'he'][_0xdb0634(0xf9)](_0x1c1a64);}[a20_0x2a1008(0xfb)+'edInfo'](_0x1d70bb,_0x57b1ff='ko'){const _0x864e3c=a20_0x2a1008,_0x188d1a=this[_0x864e3c(0xf5)+'he'][_0x864e3c(0xf9)](_0x1d70bb);if(!_0x188d1a)return undefined;const _0x47625e=_0x188d1a[_0x864e3c(0xe7)][_0x864e3c(0xd4)](_0x923418=>_0x923418[_0x864e3c(0xce)]===_0x57b1ff)||_0x188d1a['localized'][_0x864e3c(0xd4)](_0x2335b8=>_0x2335b8[_0x864e3c(0xce)]==='en')||_0x188d1a[_0x864e3c(0xe7)][0x0];if(!_0x47625e)return undefined;const _0x41967c={};return _0x41967c[_0x864e3c(0x100)]=_0x47625e['name'],_0x41967c[_0x864e3c(0x103)+'n']=_0x47625e[_0x864e3c(0x103)+'n'],_0x41967c;}['getComplia'+'nceInfo'](_0x4b2064){const _0xcf0a59=a20_0x2a1008,_0x510ed0=this[_0xcf0a59(0xf5)+'he'][_0xcf0a59(0xf9)](_0x4b2064);return _0x510ed0?.[_0xcf0a59(0x11b)+_0xcf0a59(0xed)]||[];}[a20_0x2a1008(0xd0)+a20_0x2a1008(0xc8)+a20_0x2a1008(0x108)](_0x1cd212){const _0xaa1603=a20_0x2a1008,_0x81eda3=[];for(const _0x23c5d3 of this[_0xaa1603(0xf5)+'he'][_0xaa1603(0xfe)]()){const _0x549e37=_0x23c5d3[_0xaa1603(0x11b)+_0xaa1603(0xed)]?.[_0xaa1603(0x113)](_0x55a39e=>_0x55a39e[_0xaa1603(0x107)][_0xaa1603(0x100)][_0xaa1603(0xc6)+'e']()[_0xaa1603(0xe3)](_0x1cd212['toLowerCas'+'e']()));_0x549e37&&_0x81eda3['push'](_0x23c5d3);}return _0x81eda3;}[a20_0x2a1008(0x105)+a20_0x2a1008(0x102)+a20_0x2a1008(0xea)+a20_0x2a1008(0xca)](_0x13a3f1,_0xe8b0b1='ko'){const _0x5380ab=a20_0x2a1008;return _0x13a3f1[_0x5380ab(0x123)](_0xe5e0ff=>{const _0x462b92=_0x5380ab,_0x3eb3cc=_0xe5e0ff[_0x462b92(0xfd)];if(!_0x3eb3cc)return _0xe5e0ff;const _0x1a503a=this[_0x462b92(0xfb)+'edInfo'](_0x3eb3cc,_0xe8b0b1),_0x517610=this[_0x462b92(0x110)+_0x462b92(0xcf)](_0x3eb3cc),_0x45c4e7={..._0xe5e0ff};return _0x45c4e7[_0x462b92(0xec)+'o']=_0x1a503a?{'name':_0x1a503a[_0x462b92(0x100)],'description':_0x1a503a[_0x462b92(0x103)+'n'],'compliance':_0x517610[_0x462b92(0x11a)]>0x0?_0x517610:undefined}:undefined,_0x45c4e7;});}[a20_0x2a1008(0x125)+'rabilities'+a20_0x2a1008(0xd8)+'ce'](_0x678740){const _0x96cf14=a20_0x2a1008,_0x2634c5=new Map();for(const _0x2c478a of _0x678740){const _0x5b9f0c=this[_0x96cf14(0x110)+_0x96cf14(0xcf)](_0x2c478a[_0x96cf14(0xfd)]);if(_0x5b9f0c[_0x96cf14(0x11a)]===0x0){const _0x54f5a4='기타';!_0x2634c5[_0x96cf14(0x11f)](_0x54f5a4)&&_0x2634c5[_0x96cf14(0xdf)](_0x54f5a4,[]),_0x2634c5[_0x96cf14(0xf9)](_0x54f5a4)[_0x96cf14(0xee)](_0x2c478a);}else for(const _0x106ace of _0x5b9f0c){const _0x424698=''+_0x106ace[_0x96cf14(0x107)]['name']+(_0x106ace[_0x96cf14(0x107)][_0x96cf14(0x120)]?'\x20('+_0x106ace['reference'][_0x96cf14(0x120)]+')':'');!_0x2634c5[_0x96cf14(0x11f)](_0x424698)&&_0x2634c5[_0x96cf14(0xdf)](_0x424698,[]),_0x2634c5['get'](_0x424698)[_0x96cf14(0xee)](_0x2c478a);}}return _0x2634c5;}[a20_0x2a1008(0xeb)+a20_0x2a1008(0xdc)+'t'](){const _0x53cefb=a20_0x2a1008;return this[_0x53cefb(0xf5)+'he'][_0x53cefb(0x114)];}async[a20_0x2a1008(0xe6)+'he'](){const _0x587fea=a20_0x2a1008;this[_0x587fea(0xf5)+'he'][_0x587fea(0xcb)]();if(a20_0x2c714a['existsSync'](this[_0x587fea(0xc7)+'r'])){const _0x2a66bd=a20_0x2c714a[_0x587fea(0x10d)+'c'](this['checkersDi'+'r']);for(const _0x257a1d of _0x2a66bd){a20_0x2c714a['unlinkSync'](a20_0x3de01e['join'](this[_0x587fea(0xc7)+'r'],_0x257a1d));}}this['initialize'+'d']=![],await this['initialize']();}}
|
|
1
|
+
function a20_0x18b7(){const _0x372c1f=['453476gnJUei','parse','.rule','kersDownlo','개\x20파일','ensureChec','values','error','8VBvfhM','4895191uXHIpt','info','getLocaliz','패:\x20','tems','recursive','기존\x20체커\x20캐시\x20사','get','map','rabilities','체커\x20서비스\x20초기화','length','unlinkSync','checkerKey','checkerCac','reference','11973370NcXWiM','체커\x20규칙\x20다운로드','sByComplia','heckerCoun','existsSync','nceInfo','refreshCac','key','initialize','4dxKghX','push','wxeQZ','\x20실패:','dirname','8605bsWpOl','36VAFYKV','UUxRG','enrichVuln','dOmbu','erInfo','용:\x20','version','toString','lang','has','checkers.z','search','nce','from','getChecker','aded','14495328ztyOkm','arraybuffe','toLowerCas','(((.+)+)+)','kers','sparrow','localized','set','filter','체커\x20디렉토리가\x20존','find','재하지\x20않습니다','clear','endsWith','../../chec','size','apiKey','3228Asebks','\x20시작...','checkersDi','getComplia','name','descriptio','loadChecke','3347267gKbmbg','constructo','개\x20규칙\x20로드','extractAll','eckers','edInfo','erabilitie','resolve','\x20완료:\x20','apply','join','utf-8','some','674691uMgLSZ','warn','readdirSyn','NSqMr','ByComplian','writeFileS'];a20_0x18b7=function(){return _0x372c1f;};return a20_0x18b7();}const a20_0x1168cc=a20_0x3c58;(function(_0x4c0c09,_0x1e942e){const _0x894b18=a20_0x3c58,_0x3d5f1c=_0x4c0c09();while(!![]){try{const _0x2840c1=parseInt(_0x894b18(0xdf))/0x1*(parseInt(_0x894b18(0xa4))/0x2)+-parseInt(_0x894b18(0xaa))/0x3*(parseInt(_0x894b18(0x82))/0x4)+parseInt(_0x894b18(0xa9))/0x5*(parseInt(_0x894b18(0xcb))/0x6)+parseInt(_0x894b18(0x8b))/0x7*(parseInt(_0x894b18(0x8a))/0x8)+-parseInt(_0x894b18(0xba))/0x9+parseInt(_0x894b18(0x9b))/0xa+-parseInt(_0x894b18(0xd2))/0xb;if(_0x2840c1===_0x1e942e)break;else _0x3d5f1c['push'](_0x3d5f1c['shift']());}catch(_0x1d6bdd){_0x3d5f1c['push'](_0x3d5f1c['shift']());}}}(a20_0x18b7,0xdae65));const a20_0xa10670=(function(){let _0x1519ad=!![];return function(_0x25c602,_0xb9712c){const _0x55247c=_0x1519ad?function(){const _0x237cf9=a20_0x3c58;if(_0xb9712c){const _0x28d148=_0xb9712c[_0x237cf9(0xdb)](_0x25c602,arguments);return _0xb9712c=null,_0x28d148;}}:function(){};return _0x1519ad=![],_0x55247c;};}()),a20_0x4d9474=a20_0xa10670(this,function(){const _0x5d891f=a20_0x3c58;return a20_0x4d9474[_0x5d891f(0xb1)]()[_0x5d891f(0xb5)](_0x5d891f(0xbd)+'+$')[_0x5d891f(0xb1)]()[_0x5d891f(0xd3)+'r'](a20_0x4d9474)[_0x5d891f(0xb5)]('(((.+)+)+)'+'+$');});a20_0x4d9474();import a20_0x3123cb from'axios';import a20_0x485c23 from'adm-zip';import a20_0x5e94ae from'path';import a20_0x5aee12 from'fs';import{fileURLToPath}from'url';function a20_0x3c58(_0x1c9149,_0x42df3e){_0x1c9149=_0x1c9149-0x7e;const _0x57245a=a20_0x18b7();let _0x4d9474=_0x57245a[_0x1c9149];return _0x4d9474;}import{appConfig}from'../config/appConfig.js';import{logger}from'../utils/logger.js';export class CheckerService{['checkersDi'+'r'];['checkerCac'+'he'];[a20_0x1168cc(0xa3)+'d']=![];constructor(_0x367a25){const _0x34937c=a20_0x1168cc;if(_0x367a25)this[_0x34937c(0xcd)+'r']=_0x367a25;else{const _0x5af969=a20_0x5e94ae[_0x34937c(0xa8)](fileURLToPath(import.meta.url));this[_0x34937c(0xcd)+'r']=a20_0x5e94ae[_0x34937c(0xd9)](_0x5af969,_0x34937c(0xc8)+_0x34937c(0xbe));}this[_0x34937c(0x99)+'he']=new Map();}async[a20_0x1168cc(0xa3)](){const _0x1c390=a20_0x1168cc,_0x4ba29a={};_0x4ba29a[_0x1c390(0xad)]=_0x1c390(0x95)+_0x1c390(0xa7);const _0x500499=_0x4ba29a;if(this[_0x1c390(0xa3)+'d'])return;try{await this[_0x1c390(0x87)+_0x1c390(0x85)+_0x1c390(0xb9)](),await this[_0x1c390(0xd1)+'rs'](),this[_0x1c390(0xa3)+'d']=!![],logger['info'](_0x1c390(0x95)+_0x1c390(0xda)+this[_0x1c390(0x99)+'he'][_0x1c390(0xc9)]+_0x1c390(0xd4));}catch(_0x3c2b9b){logger[_0x1c390(0x89)](_0x500499['dOmbu'],_0x3c2b9b),this['initialize'+'d']=!![];}}async['ensureChec'+a20_0x1168cc(0x85)+a20_0x1168cc(0xb9)](){const _0x4967a5=a20_0x1168cc,_0x19aba4={};_0x19aba4[_0x4967a5(0xa6)]=function(_0x4e7b9a,_0x5cb2e9){return _0x4e7b9a>_0x5cb2e9;};const _0xc3f315=_0x19aba4;if(a20_0x5aee12['existsSync'](this[_0x4967a5(0xcd)+'r'])){if(_0x4967a5(0x7f)!==_0x4967a5(0x7f)){const _0x1e4d36=this[_0x4967a5(0x99)+'he'][_0x4967a5(0x92)](_0x2fea29);if(!_0x1e4d36)return _0x8ac56e;const _0x4c2c89=_0x1e4d36[_0x4967a5(0xc0)][_0x4967a5(0xc4)](_0x23be27=>_0x23be27[_0x4967a5(0xb2)]===_0x56a535)||_0x1e4d36['localized'][_0x4967a5(0xc4)](_0x164ebd=>_0x164ebd['lang']==='en')||_0x1e4d36['localized'][0x0];if(!_0x4c2c89)return _0x55ef58;const _0x11ae66={};return _0x11ae66[_0x4967a5(0xcf)]=_0x4c2c89[_0x4967a5(0xcf)],_0x11ae66[_0x4967a5(0xd0)+'n']=_0x4c2c89[_0x4967a5(0xd0)+'n'],_0x11ae66;}else{const _0x58958f=a20_0x5aee12[_0x4967a5(0x7e)+'c'](this[_0x4967a5(0xcd)+'r']),_0x25e57b=_0x58958f[_0x4967a5(0xc2)](_0x2a304c=>_0x2a304c[_0x4967a5(0xc7)](_0x4967a5(0x84)));if(_0xc3f315[_0x4967a5(0xa6)](_0x25e57b['length'],0x0)){logger['info'](_0x4967a5(0x91)+_0x4967a5(0xaf)+_0x25e57b[_0x4967a5(0x96)]+_0x4967a5(0x86));return;}}}logger[_0x4967a5(0x8c)]('체커\x20규칙\x20다운로드'+_0x4967a5(0xcc));try{const _0x4bce42=await a20_0x3123cb['get'](appConfig[_0x4967a5(0xbf)]['baseUrl']+('/api/v1/ch'+_0x4967a5(0xd6)),{'headers':{'Authorization':'Bearer\x20'+appConfig[_0x4967a5(0xbf)][_0x4967a5(0xca)]},'responseType':_0x4967a5(0xbb)+'r','timeout':0xea60});if(!a20_0x5aee12[_0x4967a5(0x9f)](this[_0x4967a5(0xcd)+'r'])){const _0x5a080d={};_0x5a080d[_0x4967a5(0x90)]=!![],a20_0x5aee12['mkdirSync'](this[_0x4967a5(0xcd)+'r'],_0x5a080d);}const _0x2f9a26=a20_0x5e94ae[_0x4967a5(0xdc)](this[_0x4967a5(0xcd)+'r'],_0x4967a5(0xb4)+'ip');a20_0x5aee12[_0x4967a5(0x81)+'ync'](_0x2f9a26,Buffer[_0x4967a5(0xb7)](_0x4bce42['data']));const _0x2c614d=new a20_0x485c23(_0x2f9a26);_0x2c614d[_0x4967a5(0xd5)+'To'](this[_0x4967a5(0xcd)+'r'],!![]),a20_0x5aee12[_0x4967a5(0x97)](_0x2f9a26);const _0x4c8bde=a20_0x5aee12[_0x4967a5(0x7e)+'c'](this[_0x4967a5(0xcd)+'r']),_0x58a7bc=_0x4c8bde[_0x4967a5(0xc2)](_0xd0024b=>_0xd0024b[_0x4967a5(0xc7)](_0x4967a5(0x84)));logger['info']('체커\x20규칙\x20다운로드'+_0x4967a5(0xda)+_0x58a7bc[_0x4967a5(0x96)]+_0x4967a5(0x86));}catch(_0x4445b4){logger[_0x4967a5(0x89)](_0x4967a5(0x9c)+_0x4967a5(0xa7),_0x4445b4);throw _0x4445b4;}}async[a20_0x1168cc(0xd1)+'rs'](){const _0x391bee=a20_0x1168cc;if(!a20_0x5aee12[_0x391bee(0x9f)](this['checkersDi'+'r'])){logger['warn'](_0x391bee(0xc3)+_0x391bee(0xc5));return;}const _0x1d1e50=a20_0x5aee12[_0x391bee(0x7e)+'c'](this['checkersDi'+'r']),_0x52b3d2=_0x1d1e50[_0x391bee(0xc2)](_0x32fb54=>_0x32fb54[_0x391bee(0xc7)](_0x391bee(0x84)));for(const _0x12ab80 of _0x52b3d2){try{const _0xdd744a=a20_0x5e94ae[_0x391bee(0xdc)](this[_0x391bee(0xcd)+'r'],_0x12ab80),_0x1b171b=a20_0x5aee12['readFileSy'+'nc'](_0xdd744a,_0x391bee(0xdd)),_0x422abf=JSON[_0x391bee(0x83)](_0x1b171b);_0x422abf[_0x391bee(0xa2)]&&this['checkerCac'+'he'][_0x391bee(0xc1)](_0x422abf[_0x391bee(0xa2)],_0x422abf);}catch(_0x13b599){logger[_0x391bee(0xe0)]('체커\x20파일\x20파싱\x20실'+_0x391bee(0x8e)+_0x12ab80,_0x13b599);}}}[a20_0x1168cc(0xb8)+'Info'](_0x1908e6,_0xe900a9='ko'){const _0x8c7d3b=a20_0x1168cc;return this[_0x8c7d3b(0x99)+'he'][_0x8c7d3b(0x92)](_0x1908e6);}['getLocaliz'+'edInfo'](_0x2b86fb,_0x61bd25='ko'){const _0x4fb928=a20_0x1168cc,_0x3a1387=this[_0x4fb928(0x99)+'he'][_0x4fb928(0x92)](_0x2b86fb);if(!_0x3a1387)return undefined;const _0x4f768d=_0x3a1387[_0x4fb928(0xc0)][_0x4fb928(0xc4)](_0x20e5e7=>_0x20e5e7['lang']===_0x61bd25)||_0x3a1387[_0x4fb928(0xc0)][_0x4fb928(0xc4)](_0x115587=>_0x115587['lang']==='en')||_0x3a1387['localized'][0x0];if(!_0x4f768d)return undefined;const _0x598e8a={};return _0x598e8a[_0x4fb928(0xcf)]=_0x4f768d['name'],_0x598e8a[_0x4fb928(0xd0)+'n']=_0x4f768d['descriptio'+'n'],_0x598e8a;}[a20_0x1168cc(0xce)+a20_0x1168cc(0xa0)](_0x54704b){const _0x3595cd=a20_0x1168cc,_0x400263=this[_0x3595cd(0x99)+'he'][_0x3595cd(0x92)](_0x54704b);return _0x400263?.['referenceI'+_0x3595cd(0x8f)]||[];}[a20_0x1168cc(0xb8)+a20_0x1168cc(0x9d)+a20_0x1168cc(0xb6)](_0x53e6f3){const _0x5f4452=a20_0x1168cc,_0x3101dc=[];for(const _0x109776 of this[_0x5f4452(0x99)+'he'][_0x5f4452(0x88)]()){const _0x2800e1=_0x109776['referenceI'+'tems']?.[_0x5f4452(0xde)](_0x5b44b5=>_0x5b44b5[_0x5f4452(0x9a)][_0x5f4452(0xcf)]['toLowerCas'+'e']()['includes'](_0x53e6f3[_0x5f4452(0xbc)+'e']()));_0x2800e1&&_0x3101dc[_0x5f4452(0xa5)](_0x109776);}return _0x3101dc;}[a20_0x1168cc(0xac)+a20_0x1168cc(0xd8)+'sWithCheck'+a20_0x1168cc(0xae)](_0x3a4970,_0x59e5ae='ko'){const _0x216020=a20_0x1168cc,_0x4b2afd={};_0x4b2afd[_0x216020(0xab)]=function(_0x13d491,_0x5aa545){return _0x13d491>_0x5aa545;};const _0x205d36=_0x4b2afd;return _0x3a4970[_0x216020(0x93)](_0x1d41e3=>{const _0x57bcd9=_0x216020,_0x1693b7=_0x1d41e3['checkerKey'];if(!_0x1693b7)return _0x1d41e3;const _0x5d9d04=this[_0x57bcd9(0x8d)+_0x57bcd9(0xd7)](_0x1693b7,_0x59e5ae),_0x47255b=this[_0x57bcd9(0xce)+_0x57bcd9(0xa0)](_0x1693b7);return{..._0x1d41e3,'checkerInfo':_0x5d9d04?{'name':_0x5d9d04['name'],'description':_0x5d9d04[_0x57bcd9(0xd0)+'n'],'compliance':_0x205d36[_0x57bcd9(0xab)](_0x47255b['length'],0x0)?_0x47255b:undefined}:undefined};});}['groupVulne'+a20_0x1168cc(0x94)+a20_0x1168cc(0x80)+'ce'](_0x360411){const _0xf8e06e=a20_0x1168cc,_0x1c7f2a=new Map();for(const _0x515646 of _0x360411){const _0x5866b2=this[_0xf8e06e(0xce)+_0xf8e06e(0xa0)](_0x515646[_0xf8e06e(0x98)]);if(_0x5866b2[_0xf8e06e(0x96)]===0x0){const _0x3341d1='기타';!_0x1c7f2a[_0xf8e06e(0xb3)](_0x3341d1)&&_0x1c7f2a['set'](_0x3341d1,[]),_0x1c7f2a[_0xf8e06e(0x92)](_0x3341d1)['push'](_0x515646);}else for(const _0x5a7b68 of _0x5866b2){const _0x33856a=''+_0x5a7b68[_0xf8e06e(0x9a)]['name']+(_0x5a7b68[_0xf8e06e(0x9a)][_0xf8e06e(0xb0)]?'\x20('+_0x5a7b68['reference'][_0xf8e06e(0xb0)]+')':'');!_0x1c7f2a['has'](_0x33856a)&&_0x1c7f2a[_0xf8e06e(0xc1)](_0x33856a,[]),_0x1c7f2a[_0xf8e06e(0x92)](_0x33856a)[_0xf8e06e(0xa5)](_0x515646);}}return _0x1c7f2a;}['getCachedC'+a20_0x1168cc(0x9e)+'t'](){const _0x3ad854=a20_0x1168cc;return this[_0x3ad854(0x99)+'he'][_0x3ad854(0xc9)];}async[a20_0x1168cc(0xa1)+'he'](){const _0x37ec9b=a20_0x1168cc;this[_0x37ec9b(0x99)+'he'][_0x37ec9b(0xc6)]();if(a20_0x5aee12[_0x37ec9b(0x9f)](this[_0x37ec9b(0xcd)+'r'])){const _0x2ce386=a20_0x5aee12[_0x37ec9b(0x7e)+'c'](this['checkersDi'+'r']);for(const _0x17292a of _0x2ce386){a20_0x5aee12[_0x37ec9b(0x97)](a20_0x5e94ae[_0x37ec9b(0xdc)](this[_0x37ec9b(0xcd)+'r'],_0x17292a));}}this[_0x37ec9b(0xa3)+'d']=![],await this[_0x37ec9b(0xa3)]();}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a21_0x505ba0=a21_0x239b;(function(_0x56b18f,_0x270900){const _0xce6815=a21_0x239b,_0x12aecd=_0x56b18f();while(!![]){try{const _0x1d8d71=parseInt(_0xce6815(0x135))/0x1+-parseInt(_0xce6815(0x12c))/0x2*(parseInt(_0xce6815(0x131))/0x3)+parseInt(_0xce6815(0x12d))/0x4+-parseInt(_0xce6815(0x133))/0x5*(parseInt(_0xce6815(0x138))/0x6)+parseInt(_0xce6815(0x136))/0x7*(-parseInt(_0xce6815(0x127))/0x8)+parseInt(_0xce6815(0x125))/0x9*(parseInt(_0xce6815(0x130))/0xa)+parseInt(_0xce6815(0x134))/0xb;if(_0x1d8d71===_0x270900)break;else _0x12aecd['push'](_0x12aecd['shift']());}catch(_0x3d88a5){_0x12aecd['push'](_0x12aecd['shift']());}}}(a21_0x3132,0x8f97f));const a21_0x4b3d35=(function(){let _0xcd2345=!![];return function(_0x5e97a0,_0x12a338){const _0x18dc79=_0xcd2345?function(){const _0x5e6f5f=a21_0x239b;if(_0x12a338){const _0x2c5780=_0x12a338[_0x5e6f5f(0x128)](_0x5e97a0,arguments);return _0x12a338=null,_0x2c5780;}}:function(){};return _0xcd2345=![],_0x18dc79;};}()),a21_0x4e0993=a21_0x4b3d35(this,function(){const _0x145457=a21_0x239b;return a21_0x4e0993[_0x145457(0x12b)]()[_0x145457(0x124)](_0x145457(0x13a)+'+$')[_0x145457(0x12b)]()[_0x145457(0x132)+'r'](a21_0x4e0993)[_0x145457(0x124)]('(((.+)+)+)'+'+$');});a21_0x4e0993();import a21_0x2e5745 from'@anthropic-ai/sdk';function a21_0x3132(){const _0x2e1ebf=['type','search','18yjVxEA','content','16FQnwYF','apply','client','model','toString','4058JyOPkd','3069072JRzNAl','apiKey','generate','2392370mbhNLl','1728KswpxE','constructo','64605CAsAle','5313132CGBQOf','627477GVgpsX','1826447yfDIhn','text','36gulPCj','role','(((.+)+)+)'];a21_0x3132=function(){return _0x2e1ebf;};return a21_0x3132();}function a21_0x239b(_0x44fc2d,_0x5f5331){_0x44fc2d=_0x44fc2d-0x124;const _0x397abd=a21_0x3132();let _0x4e0993=_0x397abd[_0x44fc2d];return _0x4e0993;}export class AnthropicProvider{[a21_0x505ba0(0x12a)];[a21_0x505ba0(0x129)];constructor(_0x7baec1,_0x221a4c){const _0x595251=a21_0x505ba0;this[_0x595251(0x12a)]=_0x221a4c;const _0xd32237={};_0xd32237[_0x595251(0x12e)]=_0x7baec1,this[_0x595251(0x129)]=new a21_0x2e5745(_0xd32237);}async[a21_0x505ba0(0x12f)](_0x277444){const _0x437def=a21_0x505ba0,_0x1fe3ea={};_0x1fe3ea[_0x437def(0x139)]='user',_0x1fe3ea[_0x437def(0x126)]=_0x277444;const _0x25fc72=await this['client']['messages']['create']({'model':this['model'],'max_tokens':0x1000,'messages':[_0x1fe3ea]});if(_0x25fc72[_0x437def(0x126)][0x0][_0x437def(0x13b)]===_0x437def(0x137))return _0x25fc72[_0x437def(0x126)][0x0]['text'];return'';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a22_0x3a2b0d=a22_0x410a;(function(_0x3e98eb,_0x17fe32){const _0xbaf89f=a22_0x410a,_0x7c8b86=_0x3e98eb();while(!![]){try{const _0x719ebe=-parseInt(_0xbaf89f(0x149))/0x1+-parseInt(_0xbaf89f(0x157))/0x2*(-parseInt(_0xbaf89f(0x153))/0x3)+-parseInt(_0xbaf89f(0x154))/0x4+-parseInt(_0xbaf89f(0x14c))/0x5+parseInt(_0xbaf89f(0x159))/0x6+-parseInt(_0xbaf89f(0x15a))/0x7+-parseInt(_0xbaf89f(0x155))/0x8*(parseInt(_0xbaf89f(0x156))/0x9);if(_0x719ebe===_0x17fe32)break;else _0x7c8b86['push'](_0x7c8b86['shift']());}catch(_0x42bd55){_0x7c8b86['push'](_0x7c8b86['shift']());}}}(a22_0x4034,0x5671c));const a22_0x21bd7d=(function(){let _0x4dfbaf=!![];return function(_0x36d1bc,_0x6acec7){const _0x4d19ee=_0x4dfbaf?function(){if(_0x6acec7){const _0x15d554=_0x6acec7['apply'](_0x36d1bc,arguments);return _0x6acec7=null,_0x15d554;}}:function(){};return _0x4dfbaf=![],_0x4d19ee;};}()),a22_0x57418e=a22_0x21bd7d(this,function(){const _0x19f7d2=a22_0x410a,_0x5c202b={};_0x5c202b[_0x19f7d2(0x151)]=_0x19f7d2(0x164)+'+$';const _0x3d2662=_0x5c202b;return a22_0x57418e['toString']()[_0x19f7d2(0x165)](_0x3d2662[_0x19f7d2(0x151)])['toString']()[_0x19f7d2(0x162)+'r'](a22_0x57418e)['search'](_0x19f7d2(0x164)+'+$');});function a22_0x410a(_0x2b2595,_0x218e49){_0x2b2595=_0x2b2595-0x146;const _0x3b4ac3=a22_0x4034();let _0x57418e=_0x3b4ac3[_0x2b2595];return _0x57418e;}a22_0x57418e();function a22_0x4034(){const _0x4fa664=['type','wOdzO','bedrock-20','305589BYxRUv','613208SSVDqL','4216ecOAyx','4554EBxHze','10hdsrvB','version','3311856TUYpMv','99883diYdFO','text','model','23-05-31','content','messages','accessKeyI','applicatio','constructo','send','(((.+)+)+)','search','parse','credential','ssKey','anthropic_','67422XMFbsr','decode','sessionTok','1027800mrnVen','client','stringify','max_tokens'];a22_0x4034=function(){return _0x4fa664;};return a22_0x4034();}import{BedrockRuntimeClient,InvokeModelCommand}from'@aws-sdk/client-bedrock-runtime';export class BedrockProvider{[a22_0x3a2b0d(0x14d)];[a22_0x3a2b0d(0x15c)];constructor(_0x108428,_0x4ffcbe,_0x570664,_0x47c11a,_0x427791){const _0x58338b=a22_0x3a2b0d;this[_0x58338b(0x15c)]=_0x108428;const _0x1d03ea={};_0x1d03ea['region']=_0x4ffcbe;const _0x547c43=_0x1d03ea;if(_0x570664&&_0x47c11a){const _0x100ff0={};_0x100ff0[_0x58338b(0x160)+'d']=_0x570664,_0x100ff0['secretAcce'+_0x58338b(0x147)]=_0x47c11a,_0x100ff0[_0x58338b(0x14b)+'en']=_0x427791,_0x547c43[_0x58338b(0x146)+'s']=_0x100ff0;}this[_0x58338b(0x14d)]=new BedrockRuntimeClient(_0x547c43);}async['generate'](_0x2abb4e){const _0x39d165=a22_0x3a2b0d,_0x25a740={};_0x25a740[_0x39d165(0x150)]=_0x39d165(0x15b),_0x25a740[_0x39d165(0x15b)]=_0x2abb4e;const _0x4747d5={};_0x4747d5['role']='user',_0x4747d5[_0x39d165(0x15e)]=[_0x25a740];const _0x51cbeb={};_0x51cbeb[_0x39d165(0x148)+_0x39d165(0x158)]=_0x39d165(0x152)+_0x39d165(0x15d),_0x51cbeb[_0x39d165(0x14f)]=0x1000,_0x51cbeb[_0x39d165(0x15f)]=[_0x4747d5];const _0x219aad=_0x51cbeb,_0x2e1385=new InvokeModelCommand({'modelId':this['model'],'contentType':_0x39d165(0x161)+'n/json','accept':'applicatio'+'n/json','body':JSON[_0x39d165(0x14e)](_0x219aad)}),_0x267fc5=await this[_0x39d165(0x14d)][_0x39d165(0x163)](_0x2e1385),_0x14573c=new TextDecoder()[_0x39d165(0x14a)](_0x267fc5['body']),_0xa901e5=JSON[_0x39d165(0x166)](_0x14573c);if(_0xa901e5[_0x39d165(0x15e)]&&_0xa901e5[_0x39d165(0x15e)][0x0]&&_0xa901e5['content'][0x0][_0x39d165(0x15b)])return _0xa901e5[_0x39d165(0x15e)][0x0][_0x39d165(0x15b)];return'';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a23_0x10ea(_0x4809a0,_0x46df8b){_0x4809a0=_0x4809a0-0x64;const _0x2e3369=a23_0x9775();let _0x41ec54=_0x2e3369[_0x4809a0];return _0x41ec54;}function a23_0x9775(){const _0x11d770=['10kClhaL','generate','text','ntent','iveModel','603182BBZieH','2uZFiYx','12645198jpDFFw','3706884bBqQYg','879024rXyyPG','toString','model','generateCo','1565095oRafAq','(((.+)+)+)','apply','getGenerat','response','3216714xHTDYb','genAI','search','8Dbyljv','4430730mlyuDC'];a23_0x9775=function(){return _0x11d770;};return a23_0x9775();}const a23_0x5d0ff9=a23_0x10ea;(function(_0x59f812,_0x12860e){const _0x4e033b=a23_0x10ea,_0x340975=_0x59f812();while(!![]){try{const _0x4a9a95=parseInt(_0x4e033b(0x65))/0x1+parseInt(_0x4e033b(0x66))/0x2*(-parseInt(_0x4e033b(0x72))/0x3)+parseInt(_0x4e033b(0x68))/0x4+-parseInt(_0x4e033b(0x76))/0x5+-parseInt(_0x4e033b(0x69))/0x6+-parseInt(_0x4e033b(0x6d))/0x7*(parseInt(_0x4e033b(0x75))/0x8)+parseInt(_0x4e033b(0x67))/0x9*(parseInt(_0x4e033b(0x77))/0xa);if(_0x4a9a95===_0x12860e)break;else _0x340975['push'](_0x340975['shift']());}catch(_0x5255a9){_0x340975['push'](_0x340975['shift']());}}}(a23_0x9775,0x940f4));const a23_0x12411c=(function(){let _0x20da1a=!![];return function(_0x43d7f4,_0x48048f){const _0x41b438=_0x20da1a?function(){const _0x8d49a2=a23_0x10ea;if(_0x48048f){const _0x4ce211=_0x48048f[_0x8d49a2(0x6f)](_0x43d7f4,arguments);return _0x48048f=null,_0x4ce211;}}:function(){};return _0x20da1a=![],_0x41b438;};}()),a23_0x41ec54=a23_0x12411c(this,function(){const _0x2c9a4c=a23_0x10ea;return a23_0x41ec54[_0x2c9a4c(0x6a)]()[_0x2c9a4c(0x74)](_0x2c9a4c(0x6e)+'+$')[_0x2c9a4c(0x6a)]()['constructo'+'r'](a23_0x41ec54)['search'](_0x2c9a4c(0x6e)+'+$');});a23_0x41ec54();import{GoogleGenerativeAI}from'@google/generative-ai';export class GeminiProvider{[a23_0x5d0ff9(0x73)];[a23_0x5d0ff9(0x6b)];constructor(_0x432e08,_0x2b9d78){const _0x1ce3a9=a23_0x5d0ff9;this[_0x1ce3a9(0x73)]=new GoogleGenerativeAI(_0x432e08),this[_0x1ce3a9(0x6b)]=_0x2b9d78;}async[a23_0x5d0ff9(0x78)](_0x37eb54){const _0x204619=a23_0x5d0ff9,_0x22dce8=this[_0x204619(0x73)][_0x204619(0x70)+_0x204619(0x64)]({'model':this[_0x204619(0x6b)]}),_0x1df8a8=await _0x22dce8[_0x204619(0x6c)+_0x204619(0x7a)](_0x37eb54),_0x1421f9=await _0x1df8a8[_0x204619(0x71)];return _0x1421f9[_0x204619(0x79)]();}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
function a24_0x4e28(){var _0x3bcbb2=['gemini','2600tMuhfa','region','Using\x20AWS\x20','232krbjpn','Using\x20Open','(((.+)+)+)','search','Using\x20Olla','secretAcce','vider\x20conf','getProvide','aws','2222995pNLcma','del:\x20','180BhaWvJ','sessionTok','apiKey','model','ollama','toString','r\x20(model:\x20','info','73638fEQunk','ropic\x20Prov','ider\x20(mode','openai','ovider\x20(mo','anthropic','Bedrock\x20Pr','ssKey','7335UmwKNU','224Sdivyx','baseUrl','Using\x20Gemi','ma\x20Provide','590Jxlpol','45804LKfyPU','No\x20LLM\x20Pro','AI\x20Provide','8875592rKztBa','6937aYXvnP'];a24_0x4e28=function(){return _0x3bcbb2;};return a24_0x4e28();}var a24_0x1b7bbf=a24_0x4af5;(function(_0x3e1360,_0x2ce485){var _0x1eb0ba=a24_0x4af5,_0x160c58=_0x3e1360();while(!![]){try{var _0x17ed21=parseInt(_0x1eb0ba(0x195))/0x1*(-parseInt(_0x1eb0ba(0x1a3))/0x2)+-parseInt(_0x1eb0ba(0x194))/0x3*(parseInt(_0x1eb0ba(0x1ae))/0x4)+parseInt(_0x1eb0ba(0x1ac))/0x5+parseInt(_0x1eb0ba(0x19a))/0x6+-parseInt(_0x1eb0ba(0x19e))/0x7*(-parseInt(_0x1eb0ba(0x1a0))/0x8)+-parseInt(_0x1eb0ba(0x1b6))/0x9*(-parseInt(_0x1eb0ba(0x199))/0xa)+-parseInt(_0x1eb0ba(0x19d))/0xb;if(_0x17ed21===_0x2ce485)break;else _0x160c58['push'](_0x160c58['shift']());}catch(_0x3f8364){_0x160c58['push'](_0x160c58['shift']());}}}(a24_0x4e28,0x4cb35));var a24_0xc36991=(function(){var _0x3abf64=!![];return function(_0x106f37,_0x446908){var _0x2b6b4b=_0x3abf64?function(){if(_0x446908){var _0x58a31b=_0x446908['apply'](_0x106f37,arguments);return _0x446908=null,_0x58a31b;}}:function(){};return _0x3abf64=![],_0x2b6b4b;};}()),a24_0x57e4c9=a24_0xc36991(this,function(){var _0x56f3ff=a24_0x4af5;return a24_0x57e4c9[_0x56f3ff(0x1b3)]()[_0x56f3ff(0x1a6)](_0x56f3ff(0x1a5)+'+$')[_0x56f3ff(0x1b3)]()['constructo'+'r'](a24_0x57e4c9)['search']('(((.+)+)+)'+'+$');});a24_0x57e4c9();import{appConfig}from'../../config/appConfig.js';function a24_0x4af5(_0x1ee30c,_0x4aacf0){_0x1ee30c=_0x1ee30c-0x18e;var _0x448c46=a24_0x4e28();var _0x57e4c9=_0x448c46[_0x1ee30c];return _0x57e4c9;}import{OllamaProvider}from'./OllamaProvider.js';import{OpenAIProvider}from'./OpenAIProvider.js';import{AnthropicProvider}from'./AnthropicProvider.js';import{GeminiProvider}from'./GeminiProvider.js';import{BedrockProvider}from'./BedrockProvider.js';import{logger}from'../../utils/logger.js';export class LLMFactory{static[a24_0x1b7bbf(0x1aa)+'r'](){var _0x2c8017=a24_0x1b7bbf;if(appConfig[_0x2c8017(0x18f)])return logger[_0x2c8017(0x1b5)](_0x2c8017(0x1a4)+_0x2c8017(0x19c)+_0x2c8017(0x1b4)+appConfig[_0x2c8017(0x18f)][_0x2c8017(0x1b1)]+')'),new OpenAIProvider(appConfig['openai'][_0x2c8017(0x1b0)],appConfig[_0x2c8017(0x18f)][_0x2c8017(0x1b1)]);if(appConfig[_0x2c8017(0x191)])return logger['info']('Using\x20Anth'+_0x2c8017(0x1b7)+_0x2c8017(0x18e)+'l:\x20'+appConfig[_0x2c8017(0x191)][_0x2c8017(0x1b1)]+')'),new AnthropicProvider(appConfig['anthropic']['apiKey'],appConfig[_0x2c8017(0x191)]['model']);if(appConfig[_0x2c8017(0x19f)])return logger[_0x2c8017(0x1b5)](_0x2c8017(0x197)+'ni\x20Provide'+_0x2c8017(0x1b4)+appConfig[_0x2c8017(0x19f)][_0x2c8017(0x1b1)]+')'),new GeminiProvider(appConfig[_0x2c8017(0x19f)]['apiKey'],appConfig[_0x2c8017(0x19f)][_0x2c8017(0x1b1)]);if(appConfig[_0x2c8017(0x1ab)])return logger[_0x2c8017(0x1b5)](_0x2c8017(0x1a2)+_0x2c8017(0x192)+_0x2c8017(0x190)+_0x2c8017(0x1ad)+appConfig[_0x2c8017(0x1ab)][_0x2c8017(0x1b1)]+')'),new BedrockProvider(appConfig[_0x2c8017(0x1ab)][_0x2c8017(0x1b1)],appConfig['aws'][_0x2c8017(0x1a1)],appConfig['aws']['accessKeyI'+'d'],appConfig[_0x2c8017(0x1ab)][_0x2c8017(0x1a8)+_0x2c8017(0x193)],appConfig[_0x2c8017(0x1ab)][_0x2c8017(0x1af)+'en']);if(appConfig[_0x2c8017(0x1b2)]&&appConfig[_0x2c8017(0x1b2)][_0x2c8017(0x196)])return logger[_0x2c8017(0x1b5)](_0x2c8017(0x1a7)+_0x2c8017(0x198)+_0x2c8017(0x1b4)+appConfig[_0x2c8017(0x1b2)]['model']+')'),new OllamaProvider(appConfig[_0x2c8017(0x1b2)]['baseUrl'],appConfig[_0x2c8017(0x1b2)][_0x2c8017(0x1b1)]);return logger['warn'](_0x2c8017(0x19b)+_0x2c8017(0x1a9)+'igured.'),null;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3c2f42,_0x4c8dc7){var _0x17807a=a25_0xf182,_0x137df4=_0x3c2f42();while(!![]){try{var _0xe5f864=-parseInt(_0x17807a(0x125))/0x1*(parseInt(_0x17807a(0x11a))/0x2)+-parseInt(_0x17807a(0x121))/0x3*(parseInt(_0x17807a(0x122))/0x4)+parseInt(_0x17807a(0x11f))/0x5+parseInt(_0x17807a(0x11d))/0x6*(-parseInt(_0x17807a(0x11c))/0x7)+-parseInt(_0x17807a(0x118))/0x8+-parseInt(_0x17807a(0x11e))/0x9+-parseInt(_0x17807a(0x117))/0xa*(-parseInt(_0x17807a(0x11b))/0xb);if(_0xe5f864===_0x4c8dc7)break;else _0x137df4['push'](_0x137df4['shift']());}catch(_0x140e1c){_0x137df4['push'](_0x137df4['shift']());}}}(a25_0x43c4,0xe9d02));function a25_0x43c4(){var _0x410676=['(((.+)+)+)','218734TJyWOi','2329239tnmdUR','15071qEHgMn','2010lLrfVq','14220486dJAIpP','8549265sOJQsr','toString','162BESjhP','22588xXNdbb','constructo','search','7sgXSJv','140hcHGVx','2758600gfTZLd'];a25_0x43c4=function(){return _0x410676;};return a25_0x43c4();}function a25_0xf182(_0x340d3c,_0x211314){_0x340d3c=_0x340d3c-0x117;var _0x4d2568=a25_0x43c4();var _0x24e4d5=_0x4d2568[_0x340d3c];return _0x24e4d5;}var a25_0xf306cf=(function(){var _0x20d6c2=!![];return function(_0x4d2626,_0x51403d){var _0xcc4d65=_0x20d6c2?function(){if(_0x51403d){var _0x55cd78=_0x51403d['apply'](_0x4d2626,arguments);return _0x51403d=null,_0x55cd78;}}:function(){};return _0x20d6c2=![],_0xcc4d65;};}()),a25_0x24e4d5=a25_0xf306cf(this,function(){var _0x2a0f2b=a25_0xf182;return a25_0x24e4d5[_0x2a0f2b(0x120)]()[_0x2a0f2b(0x124)](_0x2a0f2b(0x119)+'+$')[_0x2a0f2b(0x120)]()[_0x2a0f2b(0x123)+'r'](a25_0x24e4d5)[_0x2a0f2b(0x124)](_0x2a0f2b(0x119)+'+$');});a25_0x24e4d5();export{};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a26_0x234ead=a26_0x4df6;function a26_0x4df6(_0x26bc3f,_0x41b260){_0x26bc3f=_0x26bc3f-0x99;const _0x19b7dc=a26_0x1a04();let _0x3bda24=_0x19b7dc[_0x26bc3f];return _0x3bda24;}(function(_0x4f5cfd,_0x26adfc){const _0x538bcb=a26_0x4df6,_0x3630e8=_0x4f5cfd();while(!![]){try{const _0x3fd870=parseInt(_0x538bcb(0x9c))/0x1+parseInt(_0x538bcb(0x9d))/0x2+parseInt(_0x538bcb(0xae))/0x3*(parseInt(_0x538bcb(0xba))/0x4)+parseInt(_0x538bcb(0xc1))/0x5*(-parseInt(_0x538bcb(0xb9))/0x6)+parseInt(_0x538bcb(0xa8))/0x7*(-parseInt(_0x538bcb(0xb2))/0x8)+parseInt(_0x538bcb(0xb3))/0x9+parseInt(_0x538bcb(0xa7))/0xa*(parseInt(_0x538bcb(0xaa))/0xb);if(_0x3fd870===_0x26adfc)break;else _0x3630e8['push'](_0x3630e8['shift']());}catch(_0x56f7ae){_0x3630e8['push'](_0x3630e8['shift']());}}}(a26_0x1a04,0xd782d));const a26_0x13bbcd=(function(){let _0x42fc12=!![];return function(_0x3c614f,_0x37ab39){const _0x9a3d52=_0x42fc12?function(){const _0x46fd21=a26_0x4df6;if(_0x37ab39){const _0x52fb7f=_0x37ab39[_0x46fd21(0xb4)](_0x3c614f,arguments);return _0x37ab39=null,_0x52fb7f;}}:function(){};return _0x42fc12=![],_0x9a3d52;};}()),a26_0x3bda24=a26_0x13bbcd(this,function(){const _0x20948b=a26_0x4df6;return a26_0x3bda24[_0x20948b(0xc0)]()[_0x20948b(0x99)](_0x20948b(0xbc)+'+$')[_0x20948b(0xc0)]()[_0x20948b(0xa4)+'r'](a26_0x3bda24)['search'](_0x20948b(0xbc)+'+$');});a26_0x3bda24();import a26_0x4696cd from'axios';export class OllamaProvider{[a26_0x234ead(0xa1)];[a26_0x234ead(0xb8)];constructor(_0x2350c9,_0x4aceab){const _0x3c5047=a26_0x234ead;this[_0x3c5047(0xa1)]=_0x2350c9,this['model']=_0x4aceab;}async['generate'](_0x2b5a94){const _0x36a828=a26_0x234ead,_0x2641ae={};_0x2641ae[_0x36a828(0xb6)]=_0x36a828(0xa9);const _0x3c0e65=_0x2641ae;try{const _0x59ec03={};_0x59ec03['timeout']=0x493e0;const _0xf3cd6f=await a26_0x4696cd[_0x36a828(0xbd)](this[_0x36a828(0xa1)]+(_0x36a828(0xad)+_0x36a828(0xa0)),{'model':this[_0x36a828(0xb8)],'prompt':_0x2b5a94,'stream':![]},_0x59ec03);return _0xf3cd6f['data']['response'];}catch(_0x136646){if(a26_0x4696cd['isAxiosErr'+'or'](_0x136646)){if(_0x136646[_0x36a828(0x9a)]===_0x36a828(0xa5)+'ED')throw new Error('Cannot\x20con'+_0x36a828(0xa3)+_0x36a828(0xb7)+_0x36a828(0xb0)+_0x36a828(0xac)+_0x36a828(0xbf)+_0x36a828(0xbb)+'.');else{if(_0x136646[_0x36a828(0x9a)]===_0x3c0e65[_0x36a828(0xb6)])throw new Error(_0x36a828(0xa2)+_0x36a828(0xa6)+_0x36a828(0x9b)+'ut');else{if(_0x136646[_0x36a828(0xb1)])throw new Error(_0x36a828(0xab)+_0x36a828(0xb5)+_0x136646['response'][_0x36a828(0x9f)]+_0x36a828(0xaf)+JSON[_0x36a828(0xbe)](_0x136646[_0x36a828(0xb1)][_0x36a828(0x9e)]));}}}throw _0x136646;}}}function a26_0x1a04(){const _0x60903e=['constructo','ECONNREFUS','ver\x20connec','10PwoyKW','4995466eFMhZL','ETIMEDOUT','63426pHfEyZ','Ollama\x20API','check\x20if\x20t','/api/gener','102nkcJDN','\x20-\x20','r.\x20Please\x20','response','16uheeri','3918051iZNksT','apply','\x20error:\x20','sNEsZ','lama\x20serve','model','92562UnaPkD','56284BtIEeZ','is\x20running','(((.+)+)+)','post','stringify','he\x20server\x20','toString','355cNEVDm','search','code','tion\x20timeo','952600VLemZa','3066414riABce','data','status','ate','baseUrl','Ollama\x20ser','nect\x20to\x20Ol'];a26_0x1a04=function(){return _0x60903e;};return a26_0x1a04();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a27_0x4497(_0x30b960,_0x5a2d4d){_0x30b960=_0x30b960-0x1db;const _0x5f04c4=a27_0x2c04();let _0xe45c49=_0x5f04c4[_0x30b960];return _0xe45c49;}const a27_0x1ec126=a27_0x4497;function a27_0x2c04(){const _0x339aea=['completion','2HZereA','20rfXJwm','5272191UGbxjP','50091672WoDGLj','1415281GbBgYb','toString','search','content','create','client','hblPv','(((.+)+)+)','240528jJlEvJ','apply','apiKey','5028FJChlw','7ysUPHD','user','constructo','model','role','generate','3117EHYlVD','13937176aNctem','115ehxJpW','10971016dycsnO','choices'];a27_0x2c04=function(){return _0x339aea;};return a27_0x2c04();}(function(_0x24e4f7,_0x5589ed){const _0x1130df=a27_0x4497,_0x1f2eb9=_0x24e4f7();while(!![]){try{const _0x3e9c01=parseInt(_0x1130df(0x1e9))/0x1*(parseInt(_0x1130df(0x1e5))/0x2)+-parseInt(_0x1130df(0x1df))/0x3*(-parseInt(_0x1130df(0x1f4))/0x4)+parseInt(_0x1130df(0x1e1))/0x5*(parseInt(_0x1130df(0x1f1))/0x6)+parseInt(_0x1130df(0x1f5))/0x7*(parseInt(_0x1130df(0x1e2))/0x8)+parseInt(_0x1130df(0x1e7))/0x9*(parseInt(_0x1130df(0x1e6))/0xa)+-parseInt(_0x1130df(0x1e0))/0xb+-parseInt(_0x1130df(0x1e8))/0xc;if(_0x3e9c01===_0x5589ed)break;else _0x1f2eb9['push'](_0x1f2eb9['shift']());}catch(_0x31eadb){_0x1f2eb9['push'](_0x1f2eb9['shift']());}}}(a27_0x2c04,0xb5e15));const a27_0x2c1df0=(function(){let _0x3345b4=!![];return function(_0x12861b,_0x2df43a){const _0x104170=_0x3345b4?function(){const _0x339982=a27_0x4497;if(_0x2df43a){const _0x2f038b=_0x2df43a[_0x339982(0x1f2)](_0x12861b,arguments);return _0x2df43a=null,_0x2f038b;}}:function(){};return _0x3345b4=![],_0x104170;};}()),a27_0xe45c49=a27_0x2c1df0(this,function(){const _0x20c1cd=a27_0x4497,_0x4846c5={};_0x4846c5['hblPv']=_0x20c1cd(0x1f0)+'+$';const _0x285fa0=_0x4846c5;return a27_0xe45c49['toString']()[_0x20c1cd(0x1eb)](_0x20c1cd(0x1f0)+'+$')[_0x20c1cd(0x1ea)]()[_0x20c1cd(0x1db)+'r'](a27_0xe45c49)[_0x20c1cd(0x1eb)](_0x285fa0[_0x20c1cd(0x1ef)]);});a27_0xe45c49();import a27_0x55467b from'openai';export class OpenAIProvider{[a27_0x1ec126(0x1dc)];[a27_0x1ec126(0x1ee)];constructor(_0x39ff86,_0x580f2d){const _0x96067e=a27_0x1ec126;this[_0x96067e(0x1dc)]=_0x580f2d;const _0x23694a={};_0x23694a[_0x96067e(0x1f3)]=_0x39ff86,this[_0x96067e(0x1ee)]=new a27_0x55467b(_0x23694a);}async[a27_0x1ec126(0x1de)](_0x24afbf){const _0x1939c8=a27_0x1ec126,_0x25ca41={};_0x25ca41[_0x1939c8(0x1dd)]=_0x1939c8(0x1f6),_0x25ca41[_0x1939c8(0x1ec)]=_0x24afbf;const _0x2671d0=await this[_0x1939c8(0x1ee)]['chat'][_0x1939c8(0x1e4)+'s'][_0x1939c8(0x1ed)]({'model':this['model'],'messages':[_0x25ca41]});return _0x2671d0[_0x1939c8(0x1e3)][0x0]['message'][_0x1939c8(0x1ec)]||'';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a28_0x1423c8=a28_0x362e;function a28_0x26a2(){const _0x2f33f9=['ability\x0a5.','\x20briefing.','es\x0a3.\x20Over','e\x20and\x20clea','\x0a```\x0a\x0aSecu','t\x20found.','nalysis\x20br','kipped.','s\x20Results:','ror','\x0a```\x0a\x0aThe\x20','(((.+)+)+)','vulnerabil','\x0aOriginal\x20','rabilities','cure\x20code\x20','\x20code\x20and\x20','n\x20is\x20disab','\x0a4.\x20Areas\x20','\x20major\x20vul','\x20in\x20Englis','2.\x20Maintai','error','ode\x20qualit','tpWFQ','3216234fApHqw','te\x20a\x20simpl','ecure\x20code','utomated\x20s','ities:\x0a\x0aOr','n\x20approxim','\x20security\x20','es:\x0a','ters.','cureCode','sed\x20on\x20the','6213175gpltqP','ately\x20200-','assessment','lity\x20as\x20th','write\x20the\x20','4219148lOmCUG','iefing.',':\x0a\x0aAnalysi','pply\x20secur','nerabiliti','generateSe','ements\x0a\x0aPl','t\x20found.\x20A','results.','\x20code\x0a3.\x20A','provider','that\x20need\x20','\x20analysis\x20','ents:\x0a1.\x20G','t\x20found.\x20B','content','improvemen','all\x20securi','generateAn','ity\x20best\x20p','\x20of\x20vulner','8zrUcZt','\x20functiona','\x20all\x20secur','racters.','abilities\x20','discovered','generate','se\x20write\x20t','briefing\x20i','ription\x20of','LLM\x20config','d\x20include:','re\x20code\x20ba','\x20Add\x20comme','d\x20security','success','\x0a\x0aThe\x20brie','ions\x20or\x20ad','\x0a3.\x20Applie','Unknown\x20er','ximately\x203','ew\x20the\x20raw','y\x20improvem','riefing\x20ge','generate\x20s','stringify','he\x20briefin','``java\x0a','\x20best\x20prac','iginal\x20Cod','ava\x0a','LM\x20analysi','ents\x0a\x0aPlea','apply','is\x20results','ring\x20the\x20f','Please\x20gen','abilities\x0a','erate\x20secu','re\x20Code:\x0a`','de\x20and\x20sec','fing\x20shoul','Code:\x0a```j','alysisBrie','3350144dfQMRD','toString','getProvide','300\x20charac','classifica','979995ZVwOxD','Failed\x20to\x20','uration\x20no','t\x20found.\x20P','\x20briefing:','\x20secure\x20co','verity\x0a2.\x20','lease\x20revi','wing\x20secur','riginal\x20co','lish\x20compa','g\x20in\x20appro','n\x20only\x20the','t\x20explanat','found\x20and\x20','message','\x20the\x20follo','ity\x20analys','.\x20Maintain','generate\x20L','e:\x0a```java','142699DWJrcu','n\x20the\x20same','Please\x20wri','\x20following','ude:\x0a1.\x20Ma','t\x0a\x0aPlease\x20','\x0a\x0aRequirem','search','348872UkHhYL','tion\x20by\x20se','cureCodeBr','tices\x0a4.\x20C'];a28_0x26a2=function(){return _0x2f33f9;};return a28_0x26a2();}(function(_0x248017,_0xf9ba8c){const _0x201edb=a28_0x362e,_0x29e13e=_0x248017();while(!![]){try{const _0x1fd1a9=-parseInt(_0x201edb(0xca))/0x1*(parseInt(_0x201edb(0x84))/0x2)+parseInt(_0x201edb(0xb5))/0x3+parseInt(_0x201edb(0xff))/0x4+-parseInt(_0x201edb(0xfa))/0x5+parseInt(_0x201edb(0xef))/0x6+parseInt(_0x201edb(0xb0))/0x7+parseInt(_0x201edb(0xd2))/0x8;if(_0x1fd1a9===_0xf9ba8c)break;else _0x29e13e['push'](_0x29e13e['shift']());}catch(_0x791fa2){_0x29e13e['push'](_0x29e13e['shift']());}}}(a28_0x26a2,0x98e55));const a28_0x2be8d4=(function(){let _0x18ffc7=!![];return function(_0x53f3fc,_0x95c833){const _0x176f0d=_0x18ffc7?function(){const _0x7e0bc5=a28_0x362e;if(_0x95c833){const _0xcf1f1d=_0x95c833[_0x7e0bc5(0xa5)](_0x53f3fc,arguments);return _0x95c833=null,_0xcf1f1d;}}:function(){};return _0x18ffc7=![],_0x176f0d;};}()),a28_0xd5ef6f=a28_0x2be8d4(this,function(){const _0x203624=a28_0x362e;return a28_0xd5ef6f['toString']()[_0x203624(0xd1)](_0x203624(0xe1)+'+$')[_0x203624(0xb1)]()['constructo'+'r'](a28_0xd5ef6f)['search']('(((.+)+)+)'+'+$');});a28_0xd5ef6f();function a28_0x362e(_0x10f70d,_0x5ffefe){_0x10f70d=_0x10f70d-0x7d;const _0x3f1ee3=a28_0x26a2();let _0xd5ef6f=_0x3f1ee3[_0x10f70d];return _0xd5ef6f;}import{logger}from'../utils/logger.js';import{LLMFactory}from'./llm/LLMFactory.js';export class LLMService{[a28_0x1423c8(0x109)];constructor(){const _0x21ce2d=a28_0x1423c8;this[_0x21ce2d(0x109)]=LLMFactory[_0x21ce2d(0xb2)+'r']();}async[a28_0x1423c8(0x81)+a28_0x1423c8(0xaf)+'f'](_0x5e0737){const _0x33f9f4=a28_0x1423c8;if(!this[_0x33f9f4(0x109)]){const _0x13b110={};return _0x13b110[_0x33f9f4(0x7e)]=_0x33f9f4(0x8e)+_0x33f9f4(0xb7)+_0x33f9f4(0xb8)+_0x33f9f4(0xbc)+_0x33f9f4(0x99)+_0x33f9f4(0x10b)+_0x33f9f4(0x107),_0x13b110['success']=!![],_0x13b110;}try{const _0x32fc99=_0x33f9f4(0xcc)+_0x33f9f4(0xf0)+_0x33f9f4(0xd9)+'r\x20briefing'+_0x33f9f4(0xea)+'h\x20based\x20on'+_0x33f9f4(0xc5)+_0x33f9f4(0xbd)+_0x33f9f4(0xc6)+_0x33f9f4(0xa6)+_0x33f9f4(0x101)+_0x33f9f4(0xde)+'\x0a'+JSON[_0x33f9f4(0x9d)](_0x5e0737,null,0x2)+(_0x33f9f4(0x94)+_0x33f9f4(0xad)+_0x33f9f4(0x8f)+'\x0a1.\x20Number'+_0x33f9f4(0x83)+_0x33f9f4(0x88)+_0x33f9f4(0xc3)+_0x33f9f4(0xb4)+_0x33f9f4(0xd3)+_0x33f9f4(0xbb)+'Brief\x20desc'+_0x33f9f4(0x8d)+_0x33f9f4(0xe9)+_0x33f9f4(0x103)+_0x33f9f4(0xd8)+_0x33f9f4(0x80)+'ty\x20status\x20'+_0x33f9f4(0xfc)+_0x33f9f4(0xe8)+_0x33f9f4(0x10a)+_0x33f9f4(0x7f)+_0x33f9f4(0xcf)+_0x33f9f4(0xfe)+_0x33f9f4(0x8c)+_0x33f9f4(0xf4)+_0x33f9f4(0xfb)+_0x33f9f4(0xb3)+_0x33f9f4(0xf7)),_0x481c35=await this[_0x33f9f4(0x109)]['generate'](_0x32fc99),_0x259e10={};return _0x259e10[_0x33f9f4(0x7e)]=_0x481c35,_0x259e10[_0x33f9f4(0x93)]=!![],_0x259e10;}catch(_0x553ed5){logger[_0x33f9f4(0xec)](_0x33f9f4(0xb6)+_0x33f9f4(0xc8)+_0x33f9f4(0xa3)+'s\x20briefing'+':',_0x553ed5);const _0x4bbf09={};return _0x4bbf09['content']=_0x33f9f4(0xb6)+'generate\x20a'+_0x33f9f4(0xdc)+_0x33f9f4(0x100),_0x4bbf09['success']=![],_0x4bbf09[_0x33f9f4(0xec)]=_0x553ed5 instanceof Error?_0x553ed5[_0x33f9f4(0xc4)]:_0x33f9f4(0x97)+_0x33f9f4(0xdf),_0x4bbf09;}}async['generateSe'+a28_0x1423c8(0xf8)](_0x2eebaa,_0x57908d){const _0x5284d5=a28_0x1423c8,_0x483671={};_0x483671['tpWFQ']=_0x5284d5(0xb6)+_0x5284d5(0x9c)+'ecure\x20code'+':';const _0x4dc04b=_0x483671;if(!this['provider']){const _0x6e3639={};return _0x6e3639[_0x5284d5(0x7e)]=_0x2eebaa,_0x6e3639[_0x5284d5(0x93)]=![],_0x6e3639[_0x5284d5(0xec)]='LLM\x20config'+_0x5284d5(0xb7)+_0x5284d5(0x106)+_0x5284d5(0xf2)+_0x5284d5(0xf1)+'\x20generatio'+_0x5284d5(0xe7)+'led.',_0x6e3639;}try{const _0x13c571=_0x5284d5(0xa8)+_0x5284d5(0xaa)+_0x5284d5(0x90)+_0x5284d5(0xf9)+_0x5284d5(0xcd)+_0x5284d5(0xe6)+_0x5284d5(0x89)+_0x5284d5(0xf5)+_0x5284d5(0xe2)+_0x5284d5(0xf3)+_0x5284d5(0xa1)+_0x5284d5(0xc9)+'\x0a'+_0x2eebaa+('\x0a```\x0a\x0aDisc'+'overed\x20Vul'+_0x5284d5(0x103)+_0x5284d5(0xf6))+JSON[_0x5284d5(0x9d)](_0x57908d,null,0x2)+(_0x5284d5(0xd0)+_0x5284d5(0x10c)+'enerate\x20se'+_0x5284d5(0xe5)+'that\x20fixes'+_0x5284d5(0x86)+'ity\x20vulner'+_0x5284d5(0xa9)+_0x5284d5(0xeb)+_0x5284d5(0xcb)+_0x5284d5(0x85)+_0x5284d5(0xfd)+'e\x20original'+_0x5284d5(0x108)+_0x5284d5(0x102)+_0x5284d5(0x82)+'ractices\x0a4'+_0x5284d5(0xc7)+'\x20code\x20read'+_0x5284d5(0xd6)+_0x5284d5(0x91)+'nts\x20to\x20exp'+'lain\x20secur'+'ity\x20improv'+_0x5284d5(0x105)+'ease\x20retur'+_0x5284d5(0xc1)+_0x5284d5(0xba)+'de\x20(withou'+_0x5284d5(0xc2)+_0x5284d5(0x95)+'ditional\x20t'+'ext):'),_0x371a09=await this[_0x5284d5(0x109)][_0x5284d5(0x8a)](_0x13c571),_0x1a34de={};return _0x1a34de['content']=_0x371a09,_0x1a34de[_0x5284d5(0x93)]=!![],_0x1a34de;}catch(_0x52791c){logger['error'](_0x4dc04b[_0x5284d5(0xee)],_0x52791c);const _0x30dbc4={};return _0x30dbc4['content']=_0x2eebaa,_0x30dbc4[_0x5284d5(0x93)]=![],_0x30dbc4[_0x5284d5(0xec)]=_0x52791c instanceof Error?_0x52791c[_0x5284d5(0xc4)]:_0x5284d5(0x97)+_0x5284d5(0xdf),_0x30dbc4;}}async[a28_0x1423c8(0x104)+a28_0x1423c8(0xd4)+'ief'](_0x111632,_0x78807d){const _0x2972ee=a28_0x1423c8;if(!this[_0x2972ee(0x109)]){const _0x3ace75={};return _0x3ace75['content']=_0x2972ee(0x8e)+_0x2972ee(0xb7)+_0x2972ee(0x7d)+_0x2972ee(0x9b)+'neration\x20s'+_0x2972ee(0xdd),_0x3ace75[_0x2972ee(0x93)]=![],_0x3ace75[_0x2972ee(0xec)]=_0x2972ee(0x8e)+_0x2972ee(0xb7)+_0x2972ee(0xdb),_0x3ace75;}try{const _0x23e5e6=_0x2972ee(0xcc)+'te\x20a\x20brief'+'ing\x20in\x20Eng'+_0x2972ee(0xbf)+_0x2972ee(0xa7)+'ollowing\x20o'+_0x2972ee(0xbe)+_0x2972ee(0xac)+'ure\x20code:\x0a'+_0x2972ee(0xe3)+_0x2972ee(0xae)+_0x2972ee(0xa2)+_0x111632+(_0x2972ee(0xda)+_0x2972ee(0xab)+_0x2972ee(0x9f))+_0x78807d+(_0x2972ee(0xe0)+'briefing\x20s'+'hould\x20incl'+_0x2972ee(0xce)+'jor\x20securi'+'ty\x20improve'+'ments\x0a2.\x20F'+'ixed\x20vulne'+_0x2972ee(0xe4)+_0x2972ee(0x96)+_0x2972ee(0x92)+_0x2972ee(0xa0)+_0x2972ee(0xd5)+_0x2972ee(0xed)+_0x2972ee(0x9a)+_0x2972ee(0xa4)+_0x2972ee(0x8b)+_0x2972ee(0x9e)+_0x2972ee(0xc0)+_0x2972ee(0x98)+'00-400\x20cha'+_0x2972ee(0x87)),_0x48d6e4=await this[_0x2972ee(0x109)][_0x2972ee(0x8a)](_0x23e5e6),_0x29a7ad={};return _0x29a7ad[_0x2972ee(0x7e)]=_0x48d6e4,_0x29a7ad[_0x2972ee(0x93)]=!![],_0x29a7ad;}catch(_0x5796ce){logger['error']('Failed\x20to\x20'+_0x2972ee(0x9c)+_0x2972ee(0xf1)+_0x2972ee(0xb9),_0x5796ce);const _0x19e0ab={};return _0x19e0ab[_0x2972ee(0x7e)]=_0x2972ee(0xb6)+_0x2972ee(0x9c)+_0x2972ee(0xf1)+_0x2972ee(0xd7),_0x19e0ab[_0x2972ee(0x93)]=![],_0x19e0ab[_0x2972ee(0xec)]=_0x5796ce instanceof Error?_0x5796ce[_0x2972ee(0xc4)]:'Unknown\x20er'+'ror',_0x19e0ab;}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a29_0x27a2(){const _0x2767e0=['스토리지\x20컨테이너\x20','reduce','eFiles','개별\x20항목\x20처리\x20중','습니다.','\x20무시:','file_','기화\x20완료:\x20리전=','build','startsWith','.DS_Store','out','Link','큽니다.\x20최대\x20','\x20(건너뜀):\x20','\x20너무\x20큽니다.\x20최','romFilePat','rrAtZ','native','uploadMult','.idea','pes','bucket','cwd','bin','.com/','2974086hCCHLd','QsTBx','createZipF','yszBx','.com','.svn','ZGh/Ygc=','최대\x20디렉토리\x20깊이','ezBJD','onents','end','제외된\x20폴더\x20(','패\x20(건너뜀):\x20','replace','(건너뜀):\x20','apply','error','romMultipl','sanitizePa','XHogw','습니다:\x20','파일\x20검증\x20실패:\x20','fileCount','basename','ess\x20Key\x20복호','s\x20Key\x20ID\x20복','1388589jrMWqM','romFolder','RGMrZ','endsWith','(((.+)+)+)','PF07LggYMS','PpWRK','폴더\x20탐색\x20실패:\x20','개\x20파일을\x20건너뛰었','search','us-east-1','MB)','Hyajw','input/','dist','다중\x20파일\x20업로드\x20','\x20-\x20','Z8Rw==','iles-','close','fileConten','region','utf-8','finalize','erAsZip','.amazonaws','realpathSy','accessKeyI','유효한\x20파일이\x20없습','pbwtB','byteLength','ZIP\x20파일\x20스토리','W1dZRgF/PA','buildObjec','.s3.','ZIP\x20파일을\x20찾을','파일이\x20아닙니다:\x20','ZIP\x20파일\x20크기가','.zip','send','스토리지\x20Acces','파일\x20경로\x20기반\x20업','파일\x20압축\x20추가\x20실','match','8UpBZrs','MB까지\x20허용됩니다','avwAK','fileName','용이\x20비어있습니다','default','다운로드된\x20파일\x20내','xLgVU','has','SRzeM','ile','node_modul','개\x20파일)','니다:\x0a','100vWyttu','rCJDD','QJZjQ','constructo','감지\x20(건너뜀):\x20','sep','nFdrM','iLjXh','bower_comp','폴더를\x20찾을\x20수\x20없','폴더가\x20아닙니다:\x20','패:\x20','leName','파일\x20스트림\x20오류\x20','concat','스토리지\x20다중\x20파일','244UnDwWr','filePath','info','성공:\x20','existsSync','Code','size','edSecretKe','resolve','CLkSs','data','211638VNBiRe','NXoGw','toString','czYtJ','createRead','.hg','archiver','uploadFile','ap-northea','append','접근\x20실패\x20(건너뜀','지\x20업로드\x20실패:','split','Secret\x20Acc','파일\x20다운로드\x20실패','sanitizeFi','vendor','endpoint','경로\x20정규화\x20실패\x20','\x20기반\x20업로드\x20실패','\x20ID\x20복호화\x20실패','warn','스토리지\x20파일\x20업로','name','jCGUQ','success','HRknHVVUYw','multiple-f','$response','downloadFi','3105123lQTFrp','isSymbolic','readdirSyn','MxrhK','업로드할\x20파일이\x20없','\x20KB)','화\x20실패:','드\x20실패:','Stream','withFileTy','toFixed','mOHct','.cache','XLUIS','zlib','now','ror','스토리지\x20파일\x20경로','level','무\x20큽니다.\x20최대\x20','JaKD4uJUEZ','\x20업로드\x20실패:','getDecrypt','.gradle','thInZip','join','edBucket','Unknown\x20er','tUrl','khFVb','uploadFold','11MNdAUc','에\x20도달했습니다\x20(','isDirector','relative','slice','zipPath','192843CdtJaO','totalSize','push','isFile','st-2','Body','ZIP\x20파일\x20업로드','body','ssKey','ipleFiles','IXenn','isAbsolute','secretAcce','):\x20','uploadZipF','sFromPaths','8SnQdYa','S3\x20클라이언트\x20초','length','lstatSync','파일을\x20찾을\x20수\x20없','zip','파일\x20다운로드\x20성공','\x20(에러\x20코드:\x20','ZIP\x20파일이\x20아닙','path','.vscode','FDDhEJ','\x20오류\x20무시:','\x20수\x20없습니다:\x20','statSync','n/zip','파일\x20업로드\x20성공:','밖으로\x20나감\x20(건너','utf8','38155XFdDom','applicatio','trim','includes','\x20폴더\x20밖을\x20가리킴','edAccessKe','개):\x20','t\x20Access\x20K','message','Message','1907616ZmEvnv','CkGhv','압축된\x20파일\x20크기가','로드\x20성공:\x20'];a29_0x27a2=function(){return _0x2767e0;};return a29_0x27a2();}const a29_0x57c192=a29_0x1224;function a29_0x1224(_0x4896c7,_0x2efd67){_0x4896c7=_0x4896c7-0x17f;const _0x1c3bab=a29_0x27a2();let _0x5bc3c3=_0x1c3bab[_0x4896c7];return _0x5bc3c3;}(function(_0x58f6ad,_0x32e16f){const _0xbf826f=a29_0x1224,_0x3350de=_0x58f6ad();while(!![]){try{const _0x5d1eb7=-parseInt(_0xbf826f(0x1bf))/0x1*(parseInt(_0xbf826f(0x1e8))/0x2)+parseInt(_0xbf826f(0x193))/0x3+parseInt(_0xbf826f(0x1dd))/0x4*(parseInt(_0xbf826f(0x24e))/0x5)+parseInt(_0xbf826f(0x276))/0x6+-parseInt(_0xbf826f(0x206))/0x7*(parseInt(_0xbf826f(0x23b))/0x8)+-parseInt(_0xbf826f(0x22b))/0x9*(-parseInt(_0xbf826f(0x1cd))/0xa)+parseInt(_0xbf826f(0x225))/0xb*(parseInt(_0xbf826f(0x258))/0xc);if(_0x5d1eb7===_0x32e16f)break;else _0x3350de['push'](_0x3350de['shift']());}catch(_0x1da15f){_0x3350de['push'](_0x3350de['shift']());}}}(a29_0x27a2,0x7bcfc));const a29_0x2845be=(function(){let _0xd1e6ff=!![];return function(_0x2a3d3e,_0x3850de){const _0x206f98=_0xd1e6ff?function(){const _0x39c0e9=a29_0x1224;if(_0x39c0e9(0x1ce)!==_0x39c0e9(0x213)){if(_0x3850de){const _0x5c4f2b=_0x3850de[_0x39c0e9(0x188)](_0x2a3d3e,arguments);return _0x3850de=null,_0x5c4f2b;}}else return'file_'+_0x4f86f2[_0x39c0e9(0x215)]()+(_0x19bfe6||'');}:function(){};return _0xd1e6ff=![],_0x206f98;};}()),a29_0x5bc3c3=a29_0x2845be(this,function(){const _0x59a551=a29_0x1224;return a29_0x5bc3c3['toString']()['search'](_0x59a551(0x197)+'+$')[_0x59a551(0x1ea)]()[_0x59a551(0x1d0)+'r'](a29_0x5bc3c3)[_0x59a551(0x19c)](_0x59a551(0x197)+'+$');});a29_0x5bc3c3();import{S3Client,PutObjectCommand,GetObjectCommand}from'@aws-sdk/client-s3';import{appConfig}from'../config/appConfig.js';import{logger}from'../utils/logger.js';import{decryptInternal}from'../utils/crypto.util.js';const ENCRYPTED_ACCESS_KEY_ID='EngWClY3G3'+a29_0x57c192(0x21a)+a29_0x57c192(0x17f),ENCRYPTED_SECRET_ACCESS_KEY='Jn4eEwgeMz'+'ZYTDc1ICIq'+a29_0x57c192(0x1b3)+'A1PA0SHi0K'+a29_0x57c192(0x202)+a29_0x57c192(0x1a4),ENCRYPTED_BUCKET_NAME=a29_0x57c192(0x198)+a29_0x57c192(0x246),STORAGE_REGION_DEFAULT=a29_0x57c192(0x1f0)+a29_0x57c192(0x22f),DEFAULT_EXCLUDE_FOLDERS=[a29_0x57c192(0x1ca)+'es','.git',a29_0x57c192(0x1a1),a29_0x57c192(0x264),'.next',a29_0x57c192(0x267),'coverage','__pycache_'+'_',a29_0x57c192(0x212),a29_0x57c192(0x245),a29_0x57c192(0x270),a29_0x57c192(0x1f8),a29_0x57c192(0x1d5)+a29_0x57c192(0x182),a29_0x57c192(0x21d),'target',a29_0x57c192(0x274),'obj',a29_0x57c192(0x27b),a29_0x57c192(0x1ed),a29_0x57c192(0x266)];export class S3Service{['bucket'];['region'];[a29_0x57c192(0x1ae)+'d'];[a29_0x57c192(0x237)+a29_0x57c192(0x233)];[a29_0x57c192(0x1f9)];['s3'];constructor(){const _0x384617=a29_0x57c192;this[_0x384617(0x272)]=appConfig['s3'][_0x384617(0x272)]||this['getDecrypt'+_0x384617(0x220)](),this[_0x384617(0x1a8)]=appConfig['s3'][_0x384617(0x1a8)]&&appConfig['s3'][_0x384617(0x1a8)]!==_0x384617(0x19d)?appConfig['s3'][_0x384617(0x1a8)]:STORAGE_REGION_DEFAULT,this[_0x384617(0x1f9)]=appConfig['s3'][_0x384617(0x1f9)],this['accessKeyI'+'d']=this[_0x384617(0x21c)+'edAccessKe'+'y'](),this['secretAcce'+_0x384617(0x233)]=this[_0x384617(0x21c)+_0x384617(0x1e4)+'y']();const _0x41191c=this[_0x384617(0x1f9)]||'https://s3'+'.'+this[_0x384617(0x1a8)]+(_0x384617(0x1ac)+_0x384617(0x27a));this['s3']=new S3Client({'region':this[_0x384617(0x1a8)],'credentials':{'accessKeyId':this[_0x384617(0x1ae)+'d'],'secretAccessKey':this['secretAcce'+_0x384617(0x233)]},'endpoint':_0x41191c,'forcePathStyle':!![]}),logger[_0x384617(0x1df)](_0x384617(0x23c)+_0x384617(0x263)+this[_0x384617(0x1a8)]);}[a29_0x57c192(0x21c)+a29_0x57c192(0x253)+'y'](){const _0xcf56f6=a29_0x57c192;if(appConfig['s3'][_0xcf56f6(0x1ae)+'d'])return appConfig['s3'][_0xcf56f6(0x1ae)+'d'];try{return decryptInternal(ENCRYPTED_ACCESS_KEY_ID);}catch(_0x917518){logger[_0xcf56f6(0x189)]('Access\x20Key'+_0xcf56f6(0x1fc)+':',_0x917518);throw new Error(_0xcf56f6(0x1bb)+_0xcf56f6(0x192)+'호화\x20실패');}}[a29_0x57c192(0x21c)+a29_0x57c192(0x1e4)+'y'](){const _0x252f1f=a29_0x57c192;if(appConfig['s3']['secretAcce'+_0x252f1f(0x233)])return appConfig['s3'][_0x252f1f(0x237)+_0x252f1f(0x233)];try{return decryptInternal(ENCRYPTED_SECRET_ACCESS_KEY);}catch(_0x546ee5){logger['error'](_0x252f1f(0x1f5)+_0x252f1f(0x191)+_0x252f1f(0x20c),_0x546ee5);throw new Error('스토리지\x20Secre'+_0x252f1f(0x255)+'ey\x20복호화\x20실패');}}['getDecrypt'+a29_0x57c192(0x220)](){const _0x94f659=a29_0x57c192,_0x1ec034={};_0x1ec034[_0x94f659(0x1e6)]=_0x94f659(0x1c8);const _0x49dc10=_0x1ec034;if(appConfig['s3'][_0x94f659(0x272)])return appConfig['s3'][_0x94f659(0x272)];try{if(_0x49dc10[_0x94f659(0x1e6)]===_0x94f659(0x279))_0x2d7cea--,_0x3f8ff2[_0x94f659(0x1fd)](_0x94f659(0x1da)+'(건너뜀):\x20'+_0x1bd2e4[_0x94f659(0x1de)],_0x48b7f0),_0x5322ad();else return decryptInternal(ENCRYPTED_BUCKET_NAME);}catch(_0x1ed980){logger[_0x94f659(0x189)]('버킷\x20이름\x20복호화\x20'+'실패:',_0x1ed980);throw new Error(_0x94f659(0x25c)+'이름\x20복호화\x20실패');}}async[a29_0x57c192(0x1ef)](_0x3b4d8d,_0x4bd530){const _0x4da37a=a29_0x57c192,_0x48cee2={};_0x48cee2[_0x4da37a(0x1c1)]=function(_0x224d2b,_0x1c4d17){return _0x224d2b/_0x1c4d17;};const _0x3526ad=_0x48cee2;try{if(_0x4da37a(0x19f)!=='Dzyen'){const _0x592291=0x64*0x400*0x400,_0x209de6=Buffer[_0x4da37a(0x1b1)](_0x3b4d8d,_0x4da37a(0x24d));if(_0x209de6>_0x592291)throw new Error('파일\x20크기가\x20너무\x20'+_0x4da37a(0x269)+_0x592291/0x400/0x400+('MB까지\x20허용됩니다'+'.'));const _0x53c001=this[_0x4da37a(0x1f7)+_0x4da37a(0x1d9)](_0x4bd530),_0x5aa673=await this[_0x4da37a(0x278)+_0x4da37a(0x1c9)](_0x3b4d8d,_0x53c001),_0x1693e8=0x64*0x400*0x400;if(_0x5aa673['length']>_0x1693e8)throw new Error('압축된\x20파일\x20크기가'+_0x4da37a(0x26b)+'대\x20'+_0x3526ad[_0x4da37a(0x1c1)](_0x1693e8/0x400,0x400)+('MB까지\x20허용됩니다'+'.'));const _0x4d8d46=_0x4da37a(0x1a0)+Date[_0x4da37a(0x215)]()+'-'+_0x53c001+_0x4da37a(0x1b9);return await this['s3'][_0x4da37a(0x1ba)](new PutObjectCommand({'Bucket':this[_0x4da37a(0x272)],'Key':_0x4d8d46,'Body':_0x5aa673,'ContentType':_0x4da37a(0x24f)+'n/zip'})),logger[_0x4da37a(0x1df)](_0x4da37a(0x24b)+'\x20'+_0x4d8d46),{'success':!![],'key':_0x4d8d46,'url':this[_0x4da37a(0x1b4)+_0x4da37a(0x222)](_0x4d8d46)};}else _0x3bde40[_0x4da37a(0x1aa)]();}catch(_0xf80a71){logger[_0x4da37a(0x189)](_0x4da37a(0x1fe)+_0x4da37a(0x20d),_0xf80a71);let _0x164355=_0x4da37a(0x221)+_0x4da37a(0x216);if(_0xf80a71 instanceof Error){_0x164355=_0xf80a71[_0x4da37a(0x256)];const _0x11446c=_0xf80a71;if(_0x11446c[_0x4da37a(0x204)]?.[_0x4da37a(0x232)]){const _0x3347e8=_0x11446c[_0x4da37a(0x204)][_0x4da37a(0x232)];_0x3347e8['Code']&&(_0x164355+=_0x4da37a(0x242)+_0x3347e8[_0x4da37a(0x1e2)]+')'),_0x3347e8[_0x4da37a(0x257)]&&(_0x164355+='\x20('+_0x3347e8[_0x4da37a(0x257)]+')');}}const _0x29650d={};return _0x29650d[_0x4da37a(0x201)]=![],_0x29650d[_0x4da37a(0x189)]=_0x164355,_0x29650d;}}async[a29_0x57c192(0x278)+a29_0x57c192(0x1c9)](_0x4c9737,_0x34c74f){const _0x1e377e=a29_0x57c192,_0x84711c={};_0x84711c[_0x1e377e(0x26d)]='end',_0x84711c[_0x1e377e(0x235)]=_0x1e377e(0x189);const _0x135759=_0x84711c,_0x55ab39=await import(_0x1e377e(0x1ee));return new Promise((_0x2416fb,_0x2fc3e3)=>{const _0x514363=_0x1e377e,_0x309b19=[],_0x169057={};_0x169057[_0x514363(0x218)]=0x9;const _0x37f979={};_0x37f979[_0x514363(0x214)]=_0x169057;const _0x4d34b3=_0x55ab39[_0x514363(0x1c4)](_0x514363(0x240),_0x37f979);_0x4d34b3['on'](_0x514363(0x1e7),_0x1d8e12=>_0x309b19['push'](_0x1d8e12)),_0x4d34b3['on'](_0x135759[_0x514363(0x26d)],()=>_0x2416fb(Buffer[_0x514363(0x1db)](_0x309b19))),_0x4d34b3['on'](_0x135759[_0x514363(0x235)],_0x2fc3e3);const _0x89a412={};_0x89a412[_0x514363(0x1ff)]=_0x34c74f,_0x4d34b3[_0x514363(0x1f1)](_0x4c9737,_0x89a412),_0x4d34b3['finalize']();});}async[a29_0x57c192(0x26f)+a29_0x57c192(0x234)](_0x54afb6,_0x243495){const _0x13bcba=a29_0x57c192,_0x470327={};_0x470327[_0x13bcba(0x1d4)]=_0x13bcba(0x1dc)+_0x13bcba(0x21b);const _0xaf9157=_0x470327;try{if(!_0x54afb6||_0x54afb6['length']===0x0)throw new Error(_0x13bcba(0x20a)+'습니다.');const _0x134151=_0x54afb6['map'](_0x3d27bb=>({'fileName':this[_0x13bcba(0x1f7)+_0x13bcba(0x1d9)](_0x3d27bb[_0x13bcba(0x1c2)]),'fileContent':_0x3d27bb[_0x13bcba(0x1a7)+'t']})),_0x3ca979=0x64*0x400*0x400,_0x28154a=_0x134151[_0x13bcba(0x25d)]((_0x35ace8,_0x1f2799)=>_0x35ace8+Buffer['byteLength'](_0x1f2799[_0x13bcba(0x1a7)+'t'],_0x13bcba(0x24d)),0x0);if(_0x28154a>_0x3ca979)throw new Error('총\x20파일\x20크기가\x20너'+_0x13bcba(0x219)+_0x3ca979/0x400/0x400+(_0x13bcba(0x1c0)+'.'));const _0x50d5ce=await this[_0x13bcba(0x278)+'romMultipl'+_0x13bcba(0x25e)](_0x134151),_0xc2af46=0x64*0x400*0x400;if(_0x50d5ce[_0x13bcba(0x23d)]>_0xc2af46)throw new Error(_0x13bcba(0x25a)+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0xc2af46/0x400/0x400+('MB까지\x20허용됩니다'+'.'));const _0x37d2e4=Date[_0x13bcba(0x215)](),_0x4940a2=_0x243495?this[_0x13bcba(0x1f7)+_0x13bcba(0x1d9)](_0x243495,_0x13bcba(0x1b9)):_0x13bcba(0x203)+'iles-'+_0x37d2e4+_0x13bcba(0x1b9),_0x2a1190=_0x13bcba(0x1a0)+_0x37d2e4+'-'+_0x4940a2;return await this['s3'][_0x13bcba(0x1ba)](new PutObjectCommand({'Bucket':this[_0x13bcba(0x272)],'Key':_0x2a1190,'Body':_0x50d5ce,'ContentType':_0x13bcba(0x24f)+'n/zip'})),logger['info'](_0x13bcba(0x1a2)+_0x13bcba(0x1e0)+_0x2a1190+'\x20('+_0x54afb6[_0x13bcba(0x23d)]+_0x13bcba(0x1cb)),{'success':!![],'key':_0x2a1190,'url':this[_0x13bcba(0x1b4)+_0x13bcba(0x222)](_0x2a1190)};}catch(_0x29bddb){logger[_0x13bcba(0x189)](_0xaf9157[_0x13bcba(0x1d4)],_0x29bddb);const _0x4fa179={};return _0x4fa179[_0x13bcba(0x201)]=![],_0x4fa179[_0x13bcba(0x189)]=_0x29bddb instanceof Error?_0x29bddb[_0x13bcba(0x256)]:_0x13bcba(0x221)+_0x13bcba(0x216),_0x4fa179;}}[a29_0x57c192(0x1f7)+a29_0x57c192(0x1d9)](_0x4d1925,_0x233a4b){const _0x43d766=a29_0x57c192,_0x392b9e={};_0x392b9e[_0x43d766(0x1e9)]=function(_0x762960,_0x1ef16d){return _0x762960||_0x1ef16d;},_0x392b9e[_0x43d766(0x1b0)]=function(_0x4f43b3,_0x179802){return _0x4f43b3+_0x179802;};const _0x1df933=_0x392b9e;if(!_0x4d1925||_0x4d1925['trim']()[_0x43d766(0x23d)]===0x0)return'file_'+Date[_0x43d766(0x215)]()+_0x1df933['NXoGw'](_0x233a4b,'');let _0x17568c=_0x4d1925['replace'](/\.\./g,'')[_0x43d766(0x186)](/[\/\\]/g,'_')[_0x43d766(0x186)](/^[\/\\]+/,'')[_0x43d766(0x250)]();_0x17568c=_0x17568c['replace'](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x17568c['length']>0xff){const _0x373d5e=_0x17568c[_0x43d766(0x1be)](/\.([^.]+)$/),_0x4ffc9a=_0x373d5e?'.'+_0x373d5e[0x1]:'',_0x4f7168=_0x17568c['slice'](0x0,_0x17568c[_0x43d766(0x23d)]-_0x4ffc9a[_0x43d766(0x23d)]);_0x17568c=_0x1df933[_0x43d766(0x1b0)](_0x4f7168[_0x43d766(0x229)](0x0,0xff-_0x4ffc9a[_0x43d766(0x23d)]),_0x4ffc9a);}if(_0x233a4b&&!_0x17568c[_0x43d766(0x196)](_0x233a4b)){const _0x484cb3=_0x17568c['match'](/\.[^.]+$/)?.[0x0];!_0x484cb3&&(_0x17568c+=_0x233a4b);}return _0x17568c||_0x43d766(0x262)+Date['now']()+(_0x233a4b||'');}async[a29_0x57c192(0x278)+a29_0x57c192(0x18a)+'eFiles'](_0x37a612){const _0x51a0d0=a29_0x57c192,_0x50a182={};_0x50a182[_0x51a0d0(0x1eb)]=_0x51a0d0(0x240),_0x50a182[_0x51a0d0(0x209)]=function(_0x339a90,_0x4d761b){return _0x339a90===_0x4d761b;};const _0x27d5fb=_0x50a182,_0x3fcc0e=await import(_0x51a0d0(0x1ee));return new Promise((_0x3c2b29,_0x4d4a4c)=>{const _0x598eb4=_0x51a0d0,_0x558519=[],_0x356a12={};_0x356a12['level']=0x9;const _0x4e95ae={};_0x4e95ae[_0x598eb4(0x214)]=_0x356a12;const _0x3f33de=_0x3fcc0e['default'](_0x27d5fb[_0x598eb4(0x1eb)],_0x4e95ae);_0x3f33de['on'](_0x598eb4(0x1e7),_0x1e85d3=>_0x558519[_0x598eb4(0x22d)](_0x1e85d3)),_0x3f33de['on'](_0x598eb4(0x183),()=>_0x3c2b29(Buffer[_0x598eb4(0x1db)](_0x558519))),_0x3f33de['on'](_0x598eb4(0x189),_0x4d4a4c);for(const _0x519341 of _0x37a612){if(_0x27d5fb[_0x598eb4(0x209)](_0x598eb4(0x211),_0x598eb4(0x211)))_0x3f33de[_0x598eb4(0x1f1)](_0x519341[_0x598eb4(0x1a7)+'t'],{'name':_0x519341[_0x598eb4(0x1c2)]});else return;}_0x3f33de['finalize']();});}async['uploadFile'+a29_0x57c192(0x23a)](_0x2d10b2,_0x5eaf9d){const _0x3b410d=a29_0x57c192;try{const _0x5d6b88=await import('fs'),_0x532f14=await import(_0x3b410d(0x244));if(!_0x2d10b2||_0x2d10b2[_0x3b410d(0x23d)]===0x0)throw new Error('업로드할\x20파일이\x20없'+_0x3b410d(0x260));const _0x1523be=[],_0x1a2e0d=[];for(const _0x44d459 of _0x2d10b2){try{const _0x33c946=_0x532f14[_0x3b410d(0x1c4)][_0x3b410d(0x236)](_0x44d459)?_0x44d459:_0x532f14[_0x3b410d(0x1c4)][_0x3b410d(0x1e5)](process[_0x3b410d(0x273)](),_0x44d459);if(!_0x5d6b88[_0x3b410d(0x1e1)](_0x33c946)){_0x1a2e0d[_0x3b410d(0x22d)](_0x3b410d(0x23f)+_0x3b410d(0x18d)+_0x44d459);continue;}const _0x212d67=_0x5d6b88['statSync'](_0x33c946);if(!_0x212d67[_0x3b410d(0x22e)]()){_0x1a2e0d['push'](_0x3b410d(0x1b7)+_0x44d459);continue;}_0x1523be[_0x3b410d(0x22d)](_0x33c946);}catch(_0x1adb93){if(_0x3b410d(0x259)==='veAIa'){if(_0x4c9011['s3'][_0x3b410d(0x1ae)+'d'])return _0x123f3b['s3'][_0x3b410d(0x1ae)+'d'];try{return _0x37d35a(_0x750ef1);}catch(_0x50acb0){_0x514712[_0x3b410d(0x189)]('Access\x20Key'+_0x3b410d(0x1fc)+':',_0x50acb0);throw new _0x5343a9(_0x3b410d(0x1bb)+_0x3b410d(0x192)+'호화\x20실패');}}else _0x1a2e0d[_0x3b410d(0x22d)](_0x3b410d(0x18e)+_0x44d459+_0x3b410d(0x1a3)+(_0x1adb93 instanceof Error?_0x1adb93[_0x3b410d(0x256)]:_0x3b410d(0x221)+_0x3b410d(0x216)));}}if(_0x1523be[_0x3b410d(0x23d)]===0x0)throw new Error(_0x3b410d(0x1af)+_0x3b410d(0x1cc)+_0x1a2e0d['join']('\x0a'));_0x1a2e0d[_0x3b410d(0x23d)]>0x0&&logger['warn'](_0x1a2e0d[_0x3b410d(0x23d)]+(_0x3b410d(0x19b)+'습니다:\x0a')+_0x1a2e0d[_0x3b410d(0x21f)]('\x0a'));const _0x170321=await this['createZipF'+_0x3b410d(0x26c)+'hs'](_0x1523be),_0x41a5d7=0x64*0x400*0x400;if(_0x170321[_0x3b410d(0x23d)]>_0x41a5d7)throw new Error('압축된\x20파일\x20크기가'+_0x3b410d(0x26b)+'대\x20'+_0x41a5d7/0x400/0x400+(_0x3b410d(0x1c0)+'.'));const _0x2aec8e=Date['now'](),_0x22cbec=_0x5eaf9d?this['sanitizeFi'+_0x3b410d(0x1d9)](_0x5eaf9d,_0x3b410d(0x1b9)):_0x3b410d(0x203)+_0x3b410d(0x1a5)+_0x2aec8e+_0x3b410d(0x1b9),_0x17553b=_0x3b410d(0x1a0)+_0x2aec8e+'-'+_0x22cbec;return await this['s3'][_0x3b410d(0x1ba)](new PutObjectCommand({'Bucket':this[_0x3b410d(0x272)],'Key':_0x17553b,'Body':_0x170321,'ContentType':_0x3b410d(0x24f)+'n/zip'})),logger[_0x3b410d(0x1df)](_0x3b410d(0x1bc)+_0x3b410d(0x25b)+_0x17553b+'\x20('+_0x1523be[_0x3b410d(0x23d)]+_0x3b410d(0x1cb)),{'success':!![],'key':_0x17553b,'url':this[_0x3b410d(0x1b4)+_0x3b410d(0x222)](_0x17553b)};}catch(_0x1a04da){logger[_0x3b410d(0x189)](_0x3b410d(0x217)+_0x3b410d(0x1fb)+':',_0x1a04da);const _0xaa38e4={};return _0xaa38e4[_0x3b410d(0x201)]=![],_0xaa38e4[_0x3b410d(0x189)]=_0x1a04da instanceof Error?_0x1a04da[_0x3b410d(0x256)]:_0x3b410d(0x221)+'ror',_0xaa38e4;}}async[a29_0x57c192(0x278)+a29_0x57c192(0x26c)+'hs'](_0x5ac978){const _0x35b0b6=a29_0x57c192,_0x532961={};_0x532961[_0x35b0b6(0x199)]=_0x35b0b6(0x183),_0x532961[_0x35b0b6(0x200)]='error';const _0x2a5980=_0x532961,_0x3a185e=await import(_0x35b0b6(0x1ee)),_0x266ff4=await import('fs'),_0x51cbd4=await import(_0x35b0b6(0x244));return new Promise((_0x39ae81,_0x5a824f)=>{const _0x1ef515=_0x35b0b6,_0x1af32b=[],_0xf8fd64={};_0xf8fd64['level']=0x9;const _0x4fb787={};_0x4fb787[_0x1ef515(0x214)]=_0xf8fd64;const _0x3e93c0=_0x3a185e['default']('zip',_0x4fb787);_0x3e93c0['on']('data',_0x8581bc=>_0x1af32b['push'](_0x8581bc)),_0x3e93c0['on'](_0x2a5980[_0x1ef515(0x199)],()=>_0x39ae81(Buffer['concat'](_0x1af32b))),_0x3e93c0['on']('error',_0x5a824f);const _0x33de85=0x14;let _0x419f70=0x0,_0x539d31=0x0,_0xfad9bf=![];const _0x128fe1=()=>{const _0x5db701=_0x1ef515;if(_0xfad9bf||_0x419f70>=_0x5ac978[_0x5db701(0x23d)]){_0x539d31===0x0&&_0x419f70>=_0x5ac978[_0x5db701(0x23d)]&&_0x3e93c0[_0x5db701(0x1aa)]();return;}while(_0x539d31<_0x33de85&&_0x419f70<_0x5ac978[_0x5db701(0x23d)]){const _0xf671c=_0x5ac978[_0x419f70++];_0x539d31++;try{const _0x5e6453=_0x51cbd4[_0x5db701(0x1c4)]['basename'](_0xf671c),_0x2651bd=this[_0x5db701(0x1f7)+_0x5db701(0x1d9)](_0x5e6453),_0x56b19d=_0x266ff4[_0x5db701(0x1ec)+_0x5db701(0x20e)](_0xf671c);_0x56b19d['on'](_0x5db701(0x189),_0x521068=>{const _0x5e57b6=_0x5db701;_0x539d31--,logger[_0x5e57b6(0x1fd)](_0x5e57b6(0x1da)+_0x5e57b6(0x187)+_0xf671c,_0x521068),_0x128fe1();}),_0x56b19d['on']('close',()=>{_0x539d31--,_0x128fe1();});const _0x200092={};_0x200092['name']=_0x2651bd,_0x3e93c0['append'](_0x56b19d,_0x200092);}catch(_0x20cf43){_0x539d31--,logger[_0x5db701(0x189)](_0x5db701(0x1bd)+_0x5db701(0x1d8)+_0xf671c,_0x20cf43),_0x128fe1();}}};_0x128fe1(),_0x3e93c0['on'](_0x2a5980['jCGUQ'],()=>{_0xfad9bf=!![];});});}async[a29_0x57c192(0x239)+a29_0x57c192(0x1c9)](_0x2d473b,_0x3e8fd2){const _0x40dea5=a29_0x57c192,_0x53c0d4={};_0x53c0d4[_0x40dea5(0x195)]=_0x40dea5(0x1b2)+_0x40dea5(0x1f3);const _0x817d5b=_0x53c0d4;try{const _0x1f3782=await import('fs'),_0x43595a=await import('path'),_0x1ed16f=_0x43595a[_0x40dea5(0x1c4)][_0x40dea5(0x236)](_0x2d473b)?_0x2d473b:_0x43595a[_0x40dea5(0x1c4)]['resolve'](process[_0x40dea5(0x273)](),_0x2d473b);if(!_0x1f3782[_0x40dea5(0x1e1)](_0x1ed16f))throw new Error(_0x40dea5(0x1b6)+_0x40dea5(0x248)+_0x2d473b);const _0x4d7c5c=_0x1f3782[_0x40dea5(0x249)](_0x1ed16f);if(!_0x4d7c5c[_0x40dea5(0x22e)]())throw new Error(_0x40dea5(0x243)+'니다:\x20'+_0x2d473b);const _0x4a4fa4=_0x4d7c5c['size'],_0x142c06=0xc8*0x400*0x400;if(_0x4a4fa4>_0x142c06)throw new Error(_0x40dea5(0x1b8)+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0x142c06/0x400/0x400+(_0x40dea5(0x1c0)+'.'));const _0x25f736=_0x1f3782[_0x40dea5(0x1ec)+_0x40dea5(0x20e)](_0x1ed16f),_0x253cd7=[];for await(const _0x14a73b of _0x25f736){_0x253cd7[_0x40dea5(0x22d)](_0x14a73b);}const _0x4a91d9=Buffer[_0x40dea5(0x1db)](_0x253cd7),_0x1d704b=Date[_0x40dea5(0x215)](),_0xeb6c8e=_0x43595a['default'][_0x40dea5(0x190)](_0x1ed16f),_0x4e98c1=this['sanitizeFi'+'leName'](_0xeb6c8e,_0x40dea5(0x1b9)),_0x1202ed=_0x3e8fd2||_0x40dea5(0x1a0)+_0x1d704b+'-'+_0x4e98c1;return await this['s3'][_0x40dea5(0x1ba)](new PutObjectCommand({'Bucket':this[_0x40dea5(0x272)],'Key':_0x1202ed,'Body':_0x4a91d9,'ContentType':'applicatio'+_0x40dea5(0x24a)})),logger[_0x40dea5(0x1df)](_0x40dea5(0x231)+'\x20성공:\x20'+_0x1202ed+'\x20('+(_0x4a4fa4/0x400)['toFixed'](0x2)+_0x40dea5(0x20b)),{'success':!![],'key':_0x1202ed,'url':this[_0x40dea5(0x1b4)+_0x40dea5(0x222)](_0x1202ed)};}catch(_0x2be48f){logger['error'](_0x817d5b[_0x40dea5(0x195)],_0x2be48f);const _0x37f61e={};return _0x37f61e[_0x40dea5(0x201)]=![],_0x37f61e[_0x40dea5(0x189)]=_0x2be48f instanceof Error?_0x2be48f[_0x40dea5(0x256)]:_0x40dea5(0x221)+_0x40dea5(0x216),_0x37f61e;}}async[a29_0x57c192(0x224)+a29_0x57c192(0x1ab)](_0x14a379,_0x1937d0){const _0xaf48a2=a29_0x57c192;try{const _0x590af5=await import('fs'),_0x10c38e=await import(_0xaf48a2(0x244)),_0x3940f0=_0x10c38e[_0xaf48a2(0x1c4)][_0xaf48a2(0x236)](_0x14a379)?_0x14a379:_0x10c38e[_0xaf48a2(0x1c4)]['resolve'](process['cwd'](),_0x14a379);if(!_0x590af5['existsSync'](_0x3940f0))throw new Error(_0xaf48a2(0x1d6)+_0xaf48a2(0x18d)+_0x14a379);const _0x553030=_0x590af5[_0xaf48a2(0x249)](_0x3940f0);if(!_0x553030[_0xaf48a2(0x227)+'y']())throw new Error(_0xaf48a2(0x1d7)+_0x14a379);const _0x47c64b=await this[_0xaf48a2(0x278)+_0xaf48a2(0x194)](_0x3940f0),{buffer:_0x4dd2eb,skippedFolders:_0x3c14e6}=_0x47c64b;_0x3c14e6['length']>0x0&&logger[_0xaf48a2(0x1df)](_0xaf48a2(0x184)+_0x3c14e6['length']+_0xaf48a2(0x254)+_0x3c14e6['join'](',\x20'));const _0x55bd35=0xc8*0x400*0x400;if(_0x4dd2eb[_0xaf48a2(0x23d)]>_0x55bd35)throw new Error(_0xaf48a2(0x25a)+_0xaf48a2(0x26b)+'대\x20'+_0x55bd35/0x400/0x400+(_0xaf48a2(0x1c0)+'.'));const _0x2377b9=Date[_0xaf48a2(0x215)](),_0x11b547=_0x10c38e['default'][_0xaf48a2(0x190)](_0x3940f0),_0x4d9057=_0x1937d0?this[_0xaf48a2(0x1f7)+'leName'](_0x1937d0,_0xaf48a2(0x1b9)):_0x11b547+'-'+_0x2377b9+_0xaf48a2(0x1b9),_0x2dd76e=_0xaf48a2(0x1a0)+_0x2377b9+'-'+_0x4d9057;return await this['s3'][_0xaf48a2(0x1ba)](new PutObjectCommand({'Bucket':this[_0xaf48a2(0x272)],'Key':_0x2dd76e,'Body':_0x4dd2eb,'ContentType':_0xaf48a2(0x24f)+_0xaf48a2(0x24a)})),logger[_0xaf48a2(0x1df)]('폴더\x20압축\x20업로드\x20'+'성공:\x20'+_0x2dd76e+'\x20('+(_0x4dd2eb[_0xaf48a2(0x23d)]/0x400)['toFixed'](0x2)+_0xaf48a2(0x20b)),{'success':!![],'key':_0x2dd76e,'url':this[_0xaf48a2(0x1b4)+_0xaf48a2(0x222)](_0x2dd76e),'skippedFolders':_0x3c14e6[_0xaf48a2(0x23d)]>0x0?_0x3c14e6:undefined};}catch(_0x50f371){logger['error']('폴더\x20압축\x20스토리지'+_0xaf48a2(0x21b),_0x50f371);const _0x2a7b27={};return _0x2a7b27[_0xaf48a2(0x201)]=![],_0x2a7b27['error']=_0x50f371 instanceof Error?_0x50f371[_0xaf48a2(0x256)]:_0xaf48a2(0x221)+_0xaf48a2(0x216),_0x2a7b27;}}async[a29_0x57c192(0x278)+'romFolder'](_0x13dd03){const _0x3fccec=a29_0x57c192,_0x365e72={};_0x365e72['QsTBx']=_0x3fccec(0x1cf),_0x365e72[_0x3fccec(0x181)]=function(_0x3302fc,_0x913514){return _0x3302fc+_0x913514;};const _0x374b2b=_0x365e72,_0x186aa8=await import(_0x3fccec(0x1ee)),_0x452283=await import('fs'),_0x5e1f3d=await import(_0x3fccec(0x244));return new Promise((_0x595f9c,_0x44ecdb)=>{const _0x1a9462=_0x3fccec,_0x1f2526={'nFdrM':function(_0x19879c,_0x402e51,_0xeba7bb){return _0x19879c(_0x402e51,_0xeba7bb);}},_0x474032=[],_0x5421cd={};_0x5421cd[_0x1a9462(0x218)]=0x9;const _0x5bf92d={};_0x5bf92d[_0x1a9462(0x214)]=_0x5421cd;const _0x27b261=_0x186aa8[_0x1a9462(0x1c4)]('zip',_0x5bf92d);_0x27b261['on'](_0x1a9462(0x1e7),_0x12439c=>_0x474032[_0x1a9462(0x22d)](_0x12439c)),_0x27b261['on']('end',()=>_0x595f9c({'buffer':Buffer[_0x1a9462(0x1db)](_0x474032),'skippedFolders':_0xdc25b1})),_0x27b261['on'](_0x1a9462(0x189),_0x44ecdb);const _0x43cad7=0x32,_0x13bf66=new Set(),_0xdc25b1=[],_0x589cef=(_0x5aae57,_0x498a5b)=>{const _0x331cee=_0x1a9462;try{const _0x444c2a=_0x5e1f3d[_0x331cee(0x1e5)](_0x5aae57),_0x513c0e=_0x5e1f3d[_0x331cee(0x1e5)](_0x498a5b);if(!_0x444c2a[_0x331cee(0x265)](_0x513c0e+_0x5e1f3d[_0x331cee(0x1d2)])&&_0x444c2a!==_0x513c0e)return logger[_0x331cee(0x1fd)]('경로가\x20기준\x20폴더\x20'+_0x331cee(0x24c)+'뜀):\x20'+_0x5aae57),null;return _0x444c2a;}catch(_0x4d015b){return logger[_0x331cee(0x1fd)](_0x331cee(0x1fa)+_0x331cee(0x187)+_0x5aae57,_0x4d015b),null;}};let _0x5a6c4a=0x0;const _0x27f6bd=0x3e8,_0x25741a=0x64*0x400*0x400;let _0x56cab4=0x0;const _0x401af6=(_0x517e60,_0xd42282,_0x4498c1=0x0)=>{const _0x1e8822=_0x1a9462;if(_0x4498c1>_0x43cad7){if(_0x1e8822(0x18c)==='XHogw'){const _0x1733c4={};return _0x1733c4['fileCount']=0x0,_0x1733c4[_0x1e8822(0x22c)]=0x0,_0x1733c4;}else throw new _0x16e6e7('폴더를\x20찾을\x20수\x20없'+_0x1e8822(0x18d)+_0x5b32a6);}let _0x2223d6=0x0,_0x385b0e=0x0;try{const _0x2bbddf=_0x589cef(_0x517e60,_0xd42282);if(!_0x2bbddf){if(_0x1e8822(0x1c6)!==_0x374b2b[_0x1e8822(0x277)]){const _0x25b7bc={};return _0x25b7bc[_0x1e8822(0x18f)]=0x0,_0x25b7bc[_0x1e8822(0x22c)]=0x0,_0x25b7bc;}else{const _0x1dcb84=_0x52de06?_0x2dcdae(_0x1dd917[_0x1e8822(0x1ad)+'nc'][_0x1e8822(0x26e)](_0x5a83fc),_0x2f7ca4):_0x1396bf;if(_0x1dcb84){const _0x4c602e=_0x368cef[_0x1e8822(0x228)](_0x800c4c,_0x5c25c7),_0x169e6d=_0x4c602e[_0x1e8822(0x186)](/\\/g,'/'),_0x4240c9=this[_0x1e8822(0x18b)+_0x1e8822(0x21e)](_0x169e6d),_0x651b91={};_0x651b91[_0x1e8822(0x1de)]=_0x1dcb84,_0x651b91['zipPath']=_0x4240c9,_0x5d2277[_0x1e8822(0x22d)](_0x651b91);}}}const _0x2881d4={};_0x2881d4['withFileTy'+_0x1e8822(0x271)]=!![];const _0x517302=_0x452283[_0x1e8822(0x208)+'c'](_0x2bbddf,_0x2881d4);for(const _0x138c1e of _0x517302){const _0x34ca82=_0x5e1f3d[_0x1e8822(0x21f)](_0x2bbddf,_0x138c1e[_0x1e8822(0x1ff)]),_0x1fe695=_0x589cef(_0x34ca82,_0xd42282);if(!_0x1fe695)continue;try{const _0x14a7f6=_0x452283[_0x1e8822(0x23e)](_0x1fe695);if(_0x14a7f6[_0x1e8822(0x207)+'Link']())continue;const _0x5628bc=_0x452283['statSync'](_0x1fe695);if(_0x5628bc[_0x1e8822(0x227)+'y']()){if(DEFAULT_EXCLUDE_FOLDERS['includes'](_0x138c1e['name'])){const _0x1901bd=_0x5e1f3d[_0x1e8822(0x228)](_0xd42282,_0x1fe695);!_0xdc25b1[_0x1e8822(0x251)](_0x1901bd)&&_0xdc25b1[_0x1e8822(0x22d)](_0x1901bd);continue;}const _0x150904=_0x401af6(_0x1fe695,_0xd42282,_0x374b2b['ezBJD'](_0x4498c1,0x1));_0x2223d6+=_0x150904[_0x1e8822(0x18f)],_0x385b0e+=_0x150904['totalSize'];}else{if(_0x5628bc['isFile']()){_0x2223d6++,_0x385b0e+=_0x5628bc[_0x1e8822(0x1e3)];if(_0x2223d6>_0x27f6bd||_0x385b0e>_0x25741a){const _0x25b7eb={};return _0x25b7eb[_0x1e8822(0x18f)]=_0x2223d6,_0x25b7eb['totalSize']=_0x385b0e,_0x25b7eb;}}}}catch(_0x30bc09){logger['warn'](_0x1e8822(0x25f)+_0x1e8822(0x247),_0x30bc09);}}}catch(_0xe8be0b){logger['warn']('폴더\x20스캔\x20중\x20오류'+_0x1e8822(0x261),_0xe8be0b);}const _0x46c7fe={};return _0x46c7fe[_0x1e8822(0x18f)]=_0x2223d6,_0x46c7fe[_0x1e8822(0x22c)]=_0x385b0e,_0x46c7fe;},_0x34315e=_0x5e1f3d[_0x1a9462(0x1e5)](_0x13dd03),_0x5d4cf6=_0x401af6(_0x13dd03,_0x34315e);if(_0x5d4cf6[_0x1a9462(0x22c)]>_0x25741a){_0x44ecdb(new Error('총\x20파일\x20크기가\x20너'+_0x1a9462(0x219)+_0x25741a/0x400/0x400+(_0x1a9462(0x1c0)+'.\x20(발견:\x20')+(_0x5d4cf6['totalSize']/0x400/0x400)[_0x1a9462(0x210)](0x2)+_0x1a9462(0x19e)));return;}const _0x2f2c40=[],_0x148255=(_0x4d8eb6,_0x1d4246,_0x2e0338=0x0)=>{const _0x7cc768=_0x1a9462;if(_0x2e0338>_0x43cad7){logger[_0x7cc768(0x1fd)](_0x7cc768(0x180)+_0x7cc768(0x226)+_0x43cad7+_0x7cc768(0x238)+_0x4d8eb6);return;}try{const _0x31356b=_0x1f2526[_0x7cc768(0x1d3)](_0x589cef,_0x4d8eb6,_0x1d4246);if(!_0x31356b)return;const _0x30c2fe={};_0x30c2fe[_0x7cc768(0x20f)+_0x7cc768(0x271)]=!![];const _0x1cdd26=_0x452283[_0x7cc768(0x208)+'c'](_0x31356b,_0x30c2fe);for(const _0x291b0f of _0x1cdd26){const _0x3c0ff0=_0x5e1f3d[_0x7cc768(0x21f)](_0x31356b,_0x291b0f[_0x7cc768(0x1ff)]),_0x5c7ae6=_0x589cef(_0x3c0ff0,_0x1d4246);if(!_0x5c7ae6)continue;try{let _0x30dab0=_0x452283[_0x7cc768(0x23e)](_0x5c7ae6);const _0x22aabd=_0x30dab0[_0x7cc768(0x207)+_0x7cc768(0x268)]();if(_0x22aabd){const _0x111e1c=_0x452283[_0x7cc768(0x1ad)+'nc']['native'](_0x5c7ae6),_0x5dacd1=_0x589cef(_0x111e1c,_0x1d4246);if(!_0x5dacd1){logger[_0x7cc768(0x1fd)]('심볼릭\x20링크가\x20기준'+_0x7cc768(0x252)+_0x7cc768(0x26a)+_0x3c0ff0+'\x20->\x20'+_0x111e1c);continue;}const _0x4a3e0f=_0x5c7ae6+'->'+_0x5dacd1;if(_0x13bf66[_0x7cc768(0x1c7)](_0x4a3e0f)){logger[_0x7cc768(0x1fd)]('순환\x20심볼릭\x20링크\x20'+_0x7cc768(0x1d1)+_0x3c0ff0);continue;}_0x13bf66['add'](_0x4a3e0f);try{_0x30dab0=_0x452283[_0x7cc768(0x249)](_0x5dacd1);}catch(_0x4fdd7c){logger[_0x7cc768(0x1fd)]('심볼릭\x20링크\x20대상\x20'+_0x7cc768(0x1f2)+_0x7cc768(0x238)+_0x3c0ff0,_0x4fdd7c);continue;}}const _0x3ffb1d=_0x30dab0;if(_0x3ffb1d['isDirector'+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x7cc768(0x251)](_0x291b0f[_0x7cc768(0x1ff)]))continue;const _0x152f8d=_0x22aabd?_0x589cef(_0x452283[_0x7cc768(0x1ad)+'nc'][_0x7cc768(0x26e)](_0x5c7ae6),_0x1d4246):_0x5c7ae6;_0x152f8d&&_0x148255(_0x152f8d,_0x1d4246,_0x2e0338+0x1);}else{if(_0x3ffb1d[_0x7cc768(0x22e)]()){const _0x5b766c=_0x22aabd?_0x589cef(_0x452283[_0x7cc768(0x1ad)+'nc'][_0x7cc768(0x26e)](_0x5c7ae6),_0x1d4246):_0x5c7ae6;if(_0x5b766c){const _0xfb57d7=_0x5e1f3d[_0x7cc768(0x228)](_0x1d4246,_0x5c7ae6),_0x3efc8b=_0xfb57d7['replace'](/\\/g,'/'),_0x458eab=this[_0x7cc768(0x18b)+_0x7cc768(0x21e)](_0x3efc8b),_0xcff655={};_0xcff655[_0x7cc768(0x1de)]=_0x5b766c,_0xcff655[_0x7cc768(0x22a)]=_0x458eab,_0x2f2c40[_0x7cc768(0x22d)](_0xcff655);}}}}catch(_0x4a8d0c){logger[_0x7cc768(0x1fd)]('파일\x20정보\x20조회\x20실'+_0x7cc768(0x185)+_0x3c0ff0,_0x4a8d0c);}}}catch(_0x277482){logger[_0x7cc768(0x189)](_0x7cc768(0x19a)+_0x4d8eb6,_0x277482);}};_0x148255(_0x34315e,_0x34315e);const _0x1266b2=0x14;let _0x5d5932=0x0,_0x5d72c0=0x0,_0x44ed29=![];const _0x1ede29=()=>{const _0x6745dd=_0x1a9462;if(_0x44ed29||_0x5d5932>=_0x2f2c40[_0x6745dd(0x23d)]){_0x5d72c0===0x0&&_0x5d5932>=_0x2f2c40[_0x6745dd(0x23d)]&&_0x27b261[_0x6745dd(0x1aa)]();return;}while(_0x5d72c0<_0x1266b2&&_0x5d5932<_0x2f2c40[_0x6745dd(0x23d)]){const _0x1b6745=_0x2f2c40[_0x5d5932++];_0x5d72c0++;try{const _0x1889fc=_0x452283['createRead'+'Stream'](_0x1b6745['filePath']);_0x1889fc['on'](_0x6745dd(0x189),_0x51b48d=>{const _0x2f7bc4=_0x6745dd;_0x5d72c0--,logger[_0x2f7bc4(0x1fd)](_0x2f7bc4(0x1da)+'(건너뜀):\x20'+_0x1b6745[_0x2f7bc4(0x1de)],_0x51b48d),_0x1ede29();}),_0x1889fc['on'](_0x6745dd(0x1a6),()=>{_0x5d72c0--,_0x1ede29();});const _0x2e01c9={};_0x2e01c9[_0x6745dd(0x1ff)]=_0x1b6745[_0x6745dd(0x22a)],_0x27b261[_0x6745dd(0x1f1)](_0x1889fc,_0x2e01c9);}catch(_0x47a1a2){_0x5d72c0--,logger[_0x6745dd(0x189)](_0x6745dd(0x1bd)+'패:\x20'+_0x1b6745[_0x6745dd(0x1de)],_0x47a1a2),_0x1ede29();}}};_0x1ede29(),_0x27b261['on']('error',()=>{_0x44ed29=!![];});});}[a29_0x57c192(0x18b)+a29_0x57c192(0x21e)](_0x1a80dd){const _0x53ce44=a29_0x57c192;if(!_0x1a80dd||_0x1a80dd[_0x53ce44(0x250)]()[_0x53ce44(0x23d)]===0x0)return'file_'+Date[_0x53ce44(0x215)]();let _0x41c360=_0x1a80dd['replace'](/\.\./g,'')[_0x53ce44(0x186)](/^[\/\\]+/,'')[_0x53ce44(0x250)]();_0x41c360=_0x41c360['replace'](/\\/g,'/'),_0x41c360=_0x41c360[_0x53ce44(0x186)](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x41c360[_0x53ce44(0x23d)]>0x1f4){const _0x6eddb9=_0x41c360[_0x53ce44(0x1f4)]('/'),_0x329a1d=_0x6eddb9[_0x6eddb9[_0x53ce44(0x23d)]-0x1];_0x41c360=_0x6eddb9[_0x53ce44(0x229)](0x0,-0x1)[_0x53ce44(0x21f)]('/')[_0x53ce44(0x229)](0x0,0x1f4-_0x329a1d[_0x53ce44(0x23d)])+'/'+_0x329a1d;}return _0x41c360||'file_'+Date[_0x53ce44(0x215)]();}async[a29_0x57c192(0x205)+'le'](_0x1107ff){const _0x28f48b=a29_0x57c192,_0x43505e={};_0x43505e['khFVb']=_0x28f48b(0x1c5)+_0x28f48b(0x1c3);const _0x54bcac=_0x43505e;try{const _0x32acd4=await this['s3']['send'](new GetObjectCommand({'Bucket':this[_0x28f48b(0x272)],'Key':_0x1107ff}));if(!_0x32acd4[_0x28f48b(0x230)])throw new Error(_0x54bcac[_0x28f48b(0x223)]);const _0x19629b=[];for await(const _0x5e9459 of _0x32acd4[_0x28f48b(0x230)]){_0x19629b[_0x28f48b(0x22d)](_0x5e9459);}const _0x2d671e=Buffer[_0x28f48b(0x1db)](_0x19629b),_0x5543a1=_0x2d671e['toString'](_0x28f48b(0x1a9));logger[_0x28f48b(0x1df)](_0x28f48b(0x241)+':\x20'+_0x1107ff);const _0x2d0e96={};return _0x2d0e96['success']=!![],_0x2d0e96['content']=_0x5543a1,_0x2d0e96;}catch(_0x6ce7db){logger['error'](_0x28f48b(0x1f6)+':',_0x6ce7db);const _0x1cbd0e={};return _0x1cbd0e[_0x28f48b(0x201)]=![],_0x1cbd0e['error']=_0x6ce7db instanceof Error?_0x6ce7db[_0x28f48b(0x256)]:_0x28f48b(0x221)+_0x28f48b(0x216),_0x1cbd0e;}}[a29_0x57c192(0x1b4)+a29_0x57c192(0x222)](_0x35376e){const _0xebd676=a29_0x57c192;if(this[_0xebd676(0x1f9)]){const _0x475d49=this[_0xebd676(0x1f9)][_0xebd676(0x186)](/\/$/,'');return _0x475d49+'/'+this[_0xebd676(0x272)]+'/'+_0x35376e;}return'https://'+this['bucket']+_0xebd676(0x1b5)+this[_0xebd676(0x1a8)]+('.amazonaws'+_0xebd676(0x275))+_0x35376e;}}
|
|
1
|
+
const a29_0x4bf212=a29_0xc45a;(function(_0x2314b5,_0x151376){const _0x5c63b9=a29_0xc45a,_0x7f64ed=_0x2314b5();while(!![]){try{const _0x203d87=parseInt(_0x5c63b9(0x13f))/0x1*(parseInt(_0x5c63b9(0x16e))/0x2)+-parseInt(_0x5c63b9(0x105))/0x3+-parseInt(_0x5c63b9(0x1b3))/0x4*(-parseInt(_0x5c63b9(0x1af))/0x5)+-parseInt(_0x5c63b9(0x13c))/0x6*(-parseInt(_0x5c63b9(0x129))/0x7)+parseInt(_0x5c63b9(0x1a5))/0x8+-parseInt(_0x5c63b9(0x14a))/0x9*(parseInt(_0x5c63b9(0x18c))/0xa)+-parseInt(_0x5c63b9(0x154))/0xb;if(_0x203d87===_0x151376)break;else _0x7f64ed['push'](_0x7f64ed['shift']());}catch(_0x3e0e21){_0x7f64ed['push'](_0x7f64ed['shift']());}}}(a29_0x1987,0x7638d));function a29_0x1987(){const _0x29d264=['다운로드된\x20파일\x20내','romMultipl','match','\x20기반\x20업로드\x20실패','applicatio','\x20폴더\x20밖을\x20가리킴','\x20KB)','스토리지\x20Secre','스토리지\x20다중\x20파일','isSymbolic','무\x20큽니다.\x20최대\x20','S3\x20클라이언트\x20초','제외된\x20폴더\x20(','Unknown\x20er','n/zip','bucket','zipPath','reduce','region','tUrl','edBucket','65658olemdn','replace','FkbZn','byteLength','concat','업로드할\x20파일이\x20없','existsSync','edSecretKe','info','warn','파일\x20스트림\x20오류\x20','isFile','JaKD4uJUEZ','t\x20Access\x20K','utf-8','파일\x20압축\x20추가\x20실','out','용이\x20비어있습니다','message','성공:\x20','mwhTC','map','join','coverage','erAsZip','slice','.git','MB)','append','.hg','788270whWRKS','uploadMult','폴더\x20스캔\x20중\x20오류','dPqfJ','file_','패\x20(건너뜀):\x20','push','dist','relative','(건너뜀):\x20','__pycache_','statSync','파일\x20검증\x20실패:\x20','습니다.','ZYTDc1ICIq','input/','search','vendor','build','name','MB까지\x20허용됩니다','sep','니다:\x20','toFixed','순환\x20심볼릭\x20링크\x20','3209632ybsOlW','toString','secretAcce','error','.gradle','length','archiver','zuulx','leName','bCnnZ','5Dptolx','HRknHVVUYw','파일\x20업로드\x20성공:','Code','1514284hWGVel','스토리지\x20컨테이너\x20','zlib','hnUmW','ZIP\x20파일\x20업로드','success','심볼릭\x20링크\x20대상\x20','end','createZipF','스토리지\x20Acces','target','afQFb','W1dZRgF/PA','실패:','YpRrk','\x20ID\x20복호화\x20실패','zySxp','withFileTy','(((.+)+)+)','개별\x20항목\x20처리\x20중','bin','ile','$response','Stream','\x20무시:','default','basename','\x20너무\x20큽니다.\x20최','add','getDecrypt','접근\x20실패\x20(건너뜀','큽니다.\x20최대\x20','파일을\x20찾을\x20수\x20없','MyXug','accessKeyI','.com','\x20-\x20','패:\x20','ISHiP','https://s3','pes','us-east-1','\x20오류\x20무시:','ZIP\x20파일이\x20아닙','기화\x20완료:\x20리전=','multiple-f','.cache','KoRoR','s\x20Key\x20ID\x20복','.zip','FDDhEJ','totalSize','Body','llGCS','data','ipleFiles','uploadZipF','send','lstatSync','isDirector','밖으로\x20나감\x20(건너','243087pLQqtX','A1PA0SHi0K','심볼릭\x20링크가\x20기준','realpathSy','romFolder','close','thnwN','native','zip','edAccessKe','EngWClY3G3','obj','Message','azPmc','includes','.\x20(발견:\x20','path','endpoint','onents','fileCount','split','endsWith','파일\x20정보\x20조회\x20실','fileName','Jn4eEwgeMz','iles-','apply','ror','.vscode','에\x20도달했습니다\x20(','습니다:\x0a','isAbsolute','ssKey','습니다:\x20','ZGh/Ygc=','Secret\x20Acc','14ATMmAP','thInZip','finalize','스토리지\x20파일\x20경로','경로\x20정규화\x20실패\x20','filePath','.amazonaws','ZIP\x20파일\x20스토리','파일\x20경로\x20기반\x20업','cwd','trim','.DS_Store','\x20업로드\x20실패:','파일이\x20아닙니다:\x20','buildObjec','개\x20파일)','이름\x20복호화\x20실패','utf8','):\x20','1449978LxtiSc','Aiteg','ap-northea','18dexoxA','createRead','myOUV','Link','폴더\x20압축\x20업로드\x20','zBCPR','now','size','화\x20실패:','level','resolve','18jWwMZO','bower_comp','constructo','fileConten','개):\x20','압축된\x20파일\x20크기가','파일\x20크기가\x20너무\x20','uploadFile','eFiles','sanitizeFi','12442133iDDPMZ','유효한\x20파일이\x20없습','sanitizePa','폴더\x20압축\x20스토리지','ZIP\x20파일을\x20찾을'];a29_0x1987=function(){return _0x29d264;};return a29_0x1987();}const a29_0xdf59fa=(function(){let _0x226873=!![];return function(_0xc64441,_0x5ecd3f){const _0x435d28=_0x226873?function(){const _0x263ad7=a29_0xc45a;if(_0x5ecd3f){const _0x8241f4=_0x5ecd3f[_0x263ad7(0x11f)](_0xc64441,arguments);return _0x5ecd3f=null,_0x8241f4;}}:function(){};return _0x226873=![],_0x435d28;};}()),a29_0x36e0c1=a29_0xdf59fa(this,function(){const _0x49cb8e=a29_0xc45a;return a29_0x36e0c1[_0x49cb8e(0x1a6)]()[_0x49cb8e(0x19c)](_0x49cb8e(0x1c5)+'+$')[_0x49cb8e(0x1a6)]()[_0x49cb8e(0x14c)+'r'](a29_0x36e0c1)[_0x49cb8e(0x19c)](_0x49cb8e(0x1c5)+'+$');});a29_0x36e0c1();import{S3Client,PutObjectCommand,GetObjectCommand}from'@aws-sdk/client-s3';import{appConfig}from'../config/appConfig.js';function a29_0xc45a(_0x48b0c2,_0x20bbbc){_0x48b0c2=_0x48b0c2-0xe4;const _0x5b1cd0=a29_0x1987();let _0x36e0c1=_0x5b1cd0[_0x48b0c2];return _0x36e0c1;}import{logger}from'../utils/logger.js';import{decryptInternal}from'../utils/crypto.util.js';const ENCRYPTED_ACCESS_KEY_ID=a29_0x4bf212(0x10f)+a29_0x4bf212(0x17a)+a29_0x4bf212(0x127),ENCRYPTED_SECRET_ACCESS_KEY=a29_0x4bf212(0x11d)+a29_0x4bf212(0x19a)+a29_0x4bf212(0x1bf)+a29_0x4bf212(0x106)+a29_0x4bf212(0x1b0)+'Z8Rw==',ENCRYPTED_BUCKET_NAME='PF07LggYMS'+a29_0x4bf212(0xfa),STORAGE_REGION_DEFAULT=a29_0x4bf212(0x13e)+'st-2',DEFAULT_EXCLUDE_FOLDERS=['node_modul'+'es',a29_0x4bf212(0x188),a29_0x4bf212(0x193),a29_0x4bf212(0x19e),'.next',a29_0x4bf212(0x17e),a29_0x4bf212(0x185),a29_0x4bf212(0x196)+'_',a29_0x4bf212(0xf6),a29_0x4bf212(0x121),'.idea',a29_0x4bf212(0x19d),a29_0x4bf212(0x14b)+a29_0x4bf212(0x117),a29_0x4bf212(0x1a9),a29_0x4bf212(0x1bd),a29_0x4bf212(0x1c7),a29_0x4bf212(0x110),'.svn',a29_0x4bf212(0x18b),a29_0x4bf212(0x134)];export class S3Service{[a29_0x4bf212(0x168)];['region'];[a29_0x4bf212(0xea)+'d'];[a29_0x4bf212(0x1a7)+a29_0x4bf212(0x125)];[a29_0x4bf212(0x116)];['s3'];constructor(){const _0x4feaf1=a29_0x4bf212;this[_0x4feaf1(0x168)]=appConfig['s3'][_0x4feaf1(0x168)]||this[_0x4feaf1(0xe5)+_0x4feaf1(0x16d)](),this[_0x4feaf1(0x16b)]=appConfig['s3'][_0x4feaf1(0x16b)]&&appConfig['s3'][_0x4feaf1(0x16b)]!==_0x4feaf1(0xf1)?appConfig['s3'][_0x4feaf1(0x16b)]:STORAGE_REGION_DEFAULT,this[_0x4feaf1(0x116)]=appConfig['s3'][_0x4feaf1(0x116)],this[_0x4feaf1(0xea)+'d']=this[_0x4feaf1(0xe5)+_0x4feaf1(0x10e)+'y'](),this[_0x4feaf1(0x1a7)+'ssKey']=this['getDecrypt'+'edSecretKe'+'y']();const _0x402a62=this[_0x4feaf1(0x116)]||_0x4feaf1(0xef)+'.'+this[_0x4feaf1(0x16b)]+(_0x4feaf1(0x12f)+_0x4feaf1(0xeb));this['s3']=new S3Client({'region':this[_0x4feaf1(0x16b)],'credentials':{'accessKeyId':this['accessKeyI'+'d'],'secretAccessKey':this['secretAcce'+_0x4feaf1(0x125)]},'endpoint':_0x402a62,'forcePathStyle':!![]}),logger[_0x4feaf1(0x176)](_0x4feaf1(0x164)+_0x4feaf1(0xf4)+this[_0x4feaf1(0x16b)]);}['getDecrypt'+a29_0x4bf212(0x10e)+'y'](){const _0x5f536d=a29_0x4bf212,_0x446be9={'ISHiP':function(_0xca45cb,_0x329499){return _0xca45cb(_0x329499);}};if(appConfig['s3']['accessKeyI'+'d'])return appConfig['s3'][_0x5f536d(0xea)+'d'];try{return _0x446be9[_0x5f536d(0xee)](decryptInternal,ENCRYPTED_ACCESS_KEY_ID);}catch(_0x178a83){logger[_0x5f536d(0x1a8)]('Access\x20Key'+_0x5f536d(0x1c2)+':',_0x178a83);throw new Error(_0x5f536d(0x1bc)+_0x5f536d(0xf8)+'호화\x20실패');}}[a29_0x4bf212(0xe5)+a29_0x4bf212(0x175)+'y'](){const _0x313687=a29_0x4bf212;if(appConfig['s3'][_0x313687(0x1a7)+_0x313687(0x125)])return appConfig['s3'][_0x313687(0x1a7)+_0x313687(0x125)];try{return decryptInternal(ENCRYPTED_SECRET_ACCESS_KEY);}catch(_0x2e82bd){logger[_0x313687(0x1a8)](_0x313687(0x128)+'ess\x20Key\x20복호'+_0x313687(0x147),_0x2e82bd);throw new Error(_0x313687(0x160)+_0x313687(0x17b)+'ey\x20복호화\x20실패');}}['getDecrypt'+'edBucket'](){const _0x2461a4=a29_0x4bf212,_0x274d09={'zuulx':function(_0x2d37df,_0x12950c){return _0x2d37df(_0x12950c);},'MyXug':_0x2461a4(0x1b4)+_0x2461a4(0x139)};if(appConfig['s3'][_0x2461a4(0x168)])return appConfig['s3']['bucket'];try{return _0x274d09[_0x2461a4(0x1ac)](decryptInternal,ENCRYPTED_BUCKET_NAME);}catch(_0x8c89c3){logger[_0x2461a4(0x1a8)]('버킷\x20이름\x20복호화\x20'+_0x2461a4(0x1c0),_0x8c89c3);throw new Error(_0x274d09[_0x2461a4(0xe9)]);}}async[a29_0x4bf212(0x151)](_0xa2f833,_0x5504a5){const _0x343789=a29_0x4bf212,_0x46ddd5={};_0x46ddd5[_0x343789(0xfd)]=function(_0x156c75,_0x5c33c0){return _0x156c75/_0x5c33c0;};const _0x48aca2=_0x46ddd5;try{const _0x15ae89=0x64*0x400*0x400,_0x644502=Buffer[_0x343789(0x171)](_0xa2f833,_0x343789(0x13a));if(_0x644502>_0x15ae89)throw new Error(_0x343789(0x150)+_0x343789(0xe7)+_0x15ae89/0x400/0x400+(_0x343789(0x1a0)+'.'));const _0x1ea36a=this[_0x343789(0x153)+_0x343789(0x1ad)](_0x5504a5),_0x257eff=await this[_0x343789(0x1bb)+_0x343789(0x1c8)](_0xa2f833,_0x1ea36a),_0x58e645=0x64*0x400*0x400;if(_0x257eff['length']>_0x58e645)throw new Error('압축된\x20파일\x20크기가'+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0x48aca2[_0x343789(0xfd)](_0x58e645/0x400,0x400)+(_0x343789(0x1a0)+'.'));const _0x20d603=_0x343789(0x19b)+Date['now']()+'-'+_0x1ea36a+_0x343789(0xf9);return await this['s3'][_0x343789(0x101)](new PutObjectCommand({'Bucket':this[_0x343789(0x168)],'Key':_0x20d603,'Body':_0x257eff,'ContentType':_0x343789(0x15d)+_0x343789(0x167)})),logger[_0x343789(0x176)](_0x343789(0x1b1)+'\x20'+_0x20d603),{'success':!![],'key':_0x20d603,'url':this[_0x343789(0x137)+'tUrl'](_0x20d603)};}catch(_0x3f0405){logger['error']('스토리지\x20파일\x20업로'+'드\x20실패:',_0x3f0405);let _0xe89d6f=_0x343789(0x166)+_0x343789(0x120);if(_0x3f0405 instanceof Error){_0xe89d6f=_0x3f0405[_0x343789(0x180)];const _0x3a7080=_0x3f0405;if(_0x3a7080[_0x343789(0x1c9)]?.['body']){const _0x23ef9a=_0x3a7080[_0x343789(0x1c9)]['body'];_0x23ef9a[_0x343789(0x1b2)]&&(_0xe89d6f+='\x20(에러\x20코드:\x20'+_0x23ef9a['Code']+')'),_0x23ef9a['Message']&&(_0xe89d6f+='\x20('+_0x23ef9a[_0x343789(0x111)]+')');}}const _0x3e3473={};return _0x3e3473['success']=![],_0x3e3473['error']=_0xe89d6f,_0x3e3473;}}async[a29_0x4bf212(0x1bb)+a29_0x4bf212(0x1c8)](_0x3087ea,_0x174a9f){const _0x58262b=a29_0x4bf212,_0x1bf741={};_0x1bf741['GUZTK']='zip',_0x1bf741[_0x58262b(0x10b)]='data';const _0x413a49=_0x1bf741,_0xe38689=await import(_0x58262b(0x1ab));return new Promise((_0x33f2f5,_0x2fde3d)=>{const _0x5aa4fa=_0x58262b,_0x392aa8=[],_0x525d11={};_0x525d11[_0x5aa4fa(0x148)]=0x9;const _0x32afb2={};_0x32afb2[_0x5aa4fa(0x1b5)]=_0x525d11;const _0x1ddc76=_0xe38689['default'](_0x413a49['GUZTK'],_0x32afb2);_0x1ddc76['on'](_0x413a49[_0x5aa4fa(0x10b)],_0x4c9d07=>_0x392aa8['push'](_0x4c9d07)),_0x1ddc76['on']('end',()=>_0x33f2f5(Buffer[_0x5aa4fa(0x172)](_0x392aa8))),_0x1ddc76['on']('error',_0x2fde3d);const _0x18eaa6={};_0x18eaa6['name']=_0x174a9f,_0x1ddc76[_0x5aa4fa(0x18a)](_0x3087ea,_0x18eaa6),_0x1ddc76[_0x5aa4fa(0x12b)]();});}async[a29_0x4bf212(0x18d)+a29_0x4bf212(0xff)](_0x14fe42,_0x33c5c1){const _0x172b5f=a29_0x4bf212;try{if(!_0x14fe42||_0x14fe42[_0x172b5f(0x1aa)]===0x0)throw new Error(_0x172b5f(0x173)+_0x172b5f(0x199));const _0x17633e=_0x14fe42[_0x172b5f(0x183)](_0x19ab14=>({'fileName':this['sanitizeFi'+'leName'](_0x19ab14['fileName']),'fileContent':_0x19ab14[_0x172b5f(0x14d)+'t']})),_0x209ea7=0x64*0x400*0x400,_0x156cc0=_0x17633e[_0x172b5f(0x16a)]((_0xafaa4b,_0x24761c)=>_0xafaa4b+Buffer[_0x172b5f(0x171)](_0x24761c[_0x172b5f(0x14d)+'t'],'utf8'),0x0);if(_0x156cc0>_0x209ea7)throw new Error('총\x20파일\x20크기가\x20너'+_0x172b5f(0x163)+_0x209ea7/0x400/0x400+(_0x172b5f(0x1a0)+'.'));const _0x22eb53=await this[_0x172b5f(0x1bb)+_0x172b5f(0x15a)+_0x172b5f(0x152)](_0x17633e),_0x22a44a=0x64*0x400*0x400;if(_0x22eb53[_0x172b5f(0x1aa)]>_0x22a44a)throw new Error('압축된\x20파일\x20크기가'+_0x172b5f(0x1ce)+'대\x20'+_0x22a44a/0x400/0x400+(_0x172b5f(0x1a0)+'.'));const _0x18dec5=Date[_0x172b5f(0x145)](),_0x2925f3=_0x33c5c1?this['sanitizeFi'+'leName'](_0x33c5c1,_0x172b5f(0xf9)):_0x172b5f(0xf5)+_0x172b5f(0x11e)+_0x18dec5+_0x172b5f(0xf9),_0x6442ac=_0x172b5f(0x19b)+_0x18dec5+'-'+_0x2925f3;return await this['s3'][_0x172b5f(0x101)](new PutObjectCommand({'Bucket':this[_0x172b5f(0x168)],'Key':_0x6442ac,'Body':_0x22eb53,'ContentType':_0x172b5f(0x15d)+'n/zip'})),logger[_0x172b5f(0x176)]('다중\x20파일\x20업로드\x20'+'성공:\x20'+_0x6442ac+'\x20('+_0x14fe42[_0x172b5f(0x1aa)]+_0x172b5f(0x138)),{'success':!![],'key':_0x6442ac,'url':this[_0x172b5f(0x137)+_0x172b5f(0x16c)](_0x6442ac)};}catch(_0x5a5b28){logger[_0x172b5f(0x1a8)](_0x172b5f(0x161)+_0x172b5f(0x135),_0x5a5b28);const _0x443f6a={};return _0x443f6a[_0x172b5f(0x1b8)]=![],_0x443f6a[_0x172b5f(0x1a8)]=_0x5a5b28 instanceof Error?_0x5a5b28[_0x172b5f(0x180)]:_0x172b5f(0x166)+_0x172b5f(0x120),_0x443f6a;}}['sanitizeFi'+a29_0x4bf212(0x1ad)](_0x4cadda,_0x24477b){const _0x5bfffc=a29_0x4bf212,_0x308318={};_0x308318['Aiteg']=function(_0x2667f1,_0xe513cc){return _0x2667f1-_0xe513cc;};const _0x45a373=_0x308318;if(!_0x4cadda||_0x4cadda[_0x5bfffc(0x133)]()[_0x5bfffc(0x1aa)]===0x0)return _0x5bfffc(0x190)+Date[_0x5bfffc(0x145)]()+(_0x24477b||'');let _0x4f5fd2=_0x4cadda[_0x5bfffc(0x16f)](/\.\./g,'')[_0x5bfffc(0x16f)](/[\/\\]/g,'_')['replace'](/^[\/\\]+/,'')[_0x5bfffc(0x133)]();_0x4f5fd2=_0x4f5fd2['replace'](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x4f5fd2[_0x5bfffc(0x1aa)]>0xff){const _0x4e7397=_0x4f5fd2['match'](/\.([^.]+)$/),_0x25f9ba=_0x4e7397?'.'+_0x4e7397[0x1]:'',_0x485338=_0x4f5fd2['slice'](0x0,_0x4f5fd2[_0x5bfffc(0x1aa)]-_0x25f9ba[_0x5bfffc(0x1aa)]);_0x4f5fd2=_0x485338[_0x5bfffc(0x187)](0x0,_0x45a373[_0x5bfffc(0x13d)](0xff,_0x25f9ba[_0x5bfffc(0x1aa)]))+_0x25f9ba;}if(_0x24477b&&!_0x4f5fd2[_0x5bfffc(0x11a)](_0x24477b)){const _0x54f0b6=_0x4f5fd2[_0x5bfffc(0x15b)](/\.[^.]+$/)?.[0x0];!_0x54f0b6&&(_0x4f5fd2+=_0x24477b);}return _0x4f5fd2||_0x5bfffc(0x190)+Date['now']()+(_0x24477b||'');}async['createZipF'+'romMultipl'+a29_0x4bf212(0x152)](_0x307541){const _0x5d9160=a29_0x4bf212,_0x358178=await import(_0x5d9160(0x1ab));return new Promise((_0x25b480,_0x355b6d)=>{const _0x354aa5=_0x5d9160,_0x2bc575=[],_0x16e63f={};_0x16e63f[_0x354aa5(0x148)]=0x9;const _0x107792={};_0x107792[_0x354aa5(0x1b5)]=_0x16e63f;const _0x194a1b=_0x358178[_0x354aa5(0x1cc)](_0x354aa5(0x10d),_0x107792);_0x194a1b['on'](_0x354aa5(0xfe),_0x58fcc4=>_0x2bc575[_0x354aa5(0x192)](_0x58fcc4)),_0x194a1b['on'](_0x354aa5(0x1ba),()=>_0x25b480(Buffer['concat'](_0x2bc575))),_0x194a1b['on'](_0x354aa5(0x1a8),_0x355b6d);for(const _0x531bcc of _0x307541){_0x194a1b[_0x354aa5(0x18a)](_0x531bcc[_0x354aa5(0x14d)+'t'],{'name':_0x531bcc[_0x354aa5(0x11c)]});}_0x194a1b[_0x354aa5(0x12b)]();});}async['uploadFile'+'sFromPaths'](_0x1d4ff8,_0x589b48){const _0x5ded09=a29_0x4bf212;try{const _0x39a9ec=await import('fs'),_0x2a81e8=await import(_0x5ded09(0x115));if(!_0x1d4ff8||_0x1d4ff8[_0x5ded09(0x1aa)]===0x0)throw new Error(_0x5ded09(0x173)+_0x5ded09(0x199));const _0x3b53b3=[],_0x4624c5=[];for(const _0x153911 of _0x1d4ff8){try{const _0x20c936=_0x2a81e8[_0x5ded09(0x1cc)][_0x5ded09(0x124)](_0x153911)?_0x153911:_0x2a81e8[_0x5ded09(0x1cc)][_0x5ded09(0x149)](process[_0x5ded09(0x132)](),_0x153911);if(!_0x39a9ec[_0x5ded09(0x174)](_0x20c936)){_0x4624c5[_0x5ded09(0x192)](_0x5ded09(0xe8)+'습니다:\x20'+_0x153911);continue;}const _0x5b4d3a=_0x39a9ec[_0x5ded09(0x197)](_0x20c936);if(!_0x5b4d3a['isFile']()){_0x4624c5[_0x5ded09(0x192)](_0x5ded09(0x136)+_0x153911);continue;}_0x3b53b3[_0x5ded09(0x192)](_0x20c936);}catch(_0x32ec67){_0x4624c5[_0x5ded09(0x192)](_0x5ded09(0x198)+_0x153911+_0x5ded09(0xec)+(_0x32ec67 instanceof Error?_0x32ec67[_0x5ded09(0x180)]:_0x5ded09(0x166)+'ror'));}}if(_0x3b53b3[_0x5ded09(0x1aa)]===0x0)throw new Error(_0x5ded09(0x155)+'니다:\x0a'+_0x4624c5[_0x5ded09(0x184)]('\x0a'));_0x4624c5[_0x5ded09(0x1aa)]>0x0&&logger[_0x5ded09(0x177)](_0x4624c5[_0x5ded09(0x1aa)]+('개\x20파일을\x20건너뛰었'+_0x5ded09(0x123))+_0x4624c5[_0x5ded09(0x184)]('\x0a'));const _0x43d1fc=await this[_0x5ded09(0x1bb)+'romFilePat'+'hs'](_0x3b53b3),_0x457742=0x64*0x400*0x400;if(_0x43d1fc[_0x5ded09(0x1aa)]>_0x457742)throw new Error('압축된\x20파일\x20크기가'+_0x5ded09(0x1ce)+'대\x20'+_0x457742/0x400/0x400+('MB까지\x20허용됩니다'+'.'));const _0x43dbaa=Date[_0x5ded09(0x145)](),_0x453726=_0x589b48?this[_0x5ded09(0x153)+'leName'](_0x589b48,'.zip'):'multiple-f'+_0x5ded09(0x11e)+_0x43dbaa+_0x5ded09(0xf9),_0x58d2d7=_0x5ded09(0x19b)+_0x43dbaa+'-'+_0x453726;return await this['s3'][_0x5ded09(0x101)](new PutObjectCommand({'Bucket':this[_0x5ded09(0x168)],'Key':_0x58d2d7,'Body':_0x43d1fc,'ContentType':_0x5ded09(0x15d)+_0x5ded09(0x167)})),logger[_0x5ded09(0x176)](_0x5ded09(0x131)+'로드\x20성공:\x20'+_0x58d2d7+'\x20('+_0x3b53b3[_0x5ded09(0x1aa)]+_0x5ded09(0x138)),{'success':!![],'key':_0x58d2d7,'url':this[_0x5ded09(0x137)+_0x5ded09(0x16c)](_0x58d2d7)};}catch(_0x2e4116){logger[_0x5ded09(0x1a8)](_0x5ded09(0x12c)+_0x5ded09(0x15c)+':',_0x2e4116);const _0x318c6d={};return _0x318c6d['success']=![],_0x318c6d[_0x5ded09(0x1a8)]=_0x2e4116 instanceof Error?_0x2e4116['message']:_0x5ded09(0x166)+'ror',_0x318c6d;}}async[a29_0x4bf212(0x1bb)+'romFilePat'+'hs'](_0x4824d9){const _0x3e1f09=a29_0x4bf212,_0x43aff9={};_0x43aff9[_0x3e1f09(0x182)]=function(_0x69db46,_0x181e3e){return _0x69db46>=_0x181e3e;},_0x43aff9[_0x3e1f09(0x1c1)]=function(_0x1f8fac,_0x8c8a5){return _0x1f8fac<_0x8c8a5;},_0x43aff9[_0x3e1f09(0x170)]=_0x3e1f09(0x10a);const _0x2c360a=_0x43aff9,_0x43b8d5=await import(_0x3e1f09(0x1ab)),_0x225dd4=await import('fs'),_0x5905d4=await import('path');return new Promise((_0x5e2a9a,_0x43d3da)=>{const _0x5487a0=_0x3e1f09,_0x3ca93e=[],_0x4d3936={};_0x4d3936['level']=0x9;const _0x2224bd={};_0x2224bd[_0x5487a0(0x1b5)]=_0x4d3936;const _0x55aede=_0x43b8d5['default'](_0x5487a0(0x10d),_0x2224bd);_0x55aede['on']('data',_0xea5dee=>_0x3ca93e[_0x5487a0(0x192)](_0xea5dee)),_0x55aede['on'](_0x5487a0(0x1ba),()=>_0x5e2a9a(Buffer[_0x5487a0(0x172)](_0x3ca93e))),_0x55aede['on'](_0x5487a0(0x1a8),_0x43d3da);const _0x31c668=0x14;let _0x3d16d5=0x0,_0x2cadf1=0x0,_0x5c54dc=![];const _0x56320a=()=>{const _0x3365de=_0x5487a0;if(_0x5c54dc||_0x2c360a[_0x3365de(0x182)](_0x3d16d5,_0x4824d9[_0x3365de(0x1aa)])){_0x2cadf1===0x0&&_0x3d16d5>=_0x4824d9['length']&&_0x55aede[_0x3365de(0x12b)]();return;}while(_0x2c360a['YpRrk'](_0x2cadf1,_0x31c668)&&_0x3d16d5<_0x4824d9[_0x3365de(0x1aa)]){const _0x58f04f=_0x4824d9[_0x3d16d5++];_0x2cadf1++;try{const _0x1693dc=_0x5905d4[_0x3365de(0x1cc)][_0x3365de(0x1cd)](_0x58f04f),_0x79b103=this[_0x3365de(0x153)+_0x3365de(0x1ad)](_0x1693dc),_0x2432f4=_0x225dd4[_0x3365de(0x140)+_0x3365de(0x1ca)](_0x58f04f);_0x2432f4['on'](_0x3365de(0x1a8),_0x4a6cbd=>{const _0x528bd8=_0x3365de;_0x2cadf1--,logger['warn'](_0x528bd8(0x178)+_0x528bd8(0x195)+_0x58f04f,_0x4a6cbd),_0x56320a();}),_0x2432f4['on'](_0x2c360a[_0x3365de(0x170)],()=>{_0x2cadf1--,_0x56320a();});const _0x4e537a={};_0x4e537a[_0x3365de(0x19f)]=_0x79b103,_0x55aede[_0x3365de(0x18a)](_0x2432f4,_0x4e537a);}catch(_0x1778d9){_0x2cadf1--,logger[_0x3365de(0x1a8)](_0x3365de(0x17d)+_0x3365de(0xed)+_0x58f04f,_0x1778d9),_0x56320a();}}};_0x56320a(),_0x55aede['on'](_0x5487a0(0x1a8),()=>{_0x5c54dc=!![];});});}async[a29_0x4bf212(0x100)+'ile'](_0x7dc382,_0x20225a){const _0xe260e4=a29_0x4bf212,_0x54e7e1={};_0x54e7e1[_0xe260e4(0x144)]=function(_0x484d5a,_0x4de727){return _0x484d5a/_0x4de727;},_0x54e7e1[_0xe260e4(0x1ae)]=function(_0x1bc601,_0x270a27){return _0x1bc601/_0x270a27;};const _0x28cdab=_0x54e7e1;try{const _0x49095b=await import('fs'),_0x4258b9=await import('path'),_0x407967=_0x4258b9[_0xe260e4(0x1cc)][_0xe260e4(0x124)](_0x7dc382)?_0x7dc382:_0x4258b9[_0xe260e4(0x1cc)][_0xe260e4(0x149)](process[_0xe260e4(0x132)](),_0x7dc382);if(!_0x49095b[_0xe260e4(0x174)](_0x407967))throw new Error(_0xe260e4(0x158)+'\x20수\x20없습니다:\x20'+_0x7dc382);const _0x1a24e0=_0x49095b[_0xe260e4(0x197)](_0x407967);if(!_0x1a24e0[_0xe260e4(0x179)]())throw new Error(_0xe260e4(0xf3)+_0xe260e4(0x1a2)+_0x7dc382);const _0x13b4e1=_0x1a24e0[_0xe260e4(0x146)],_0x323bb8=0xc8*0x400*0x400;if(_0x13b4e1>_0x323bb8)throw new Error('ZIP\x20파일\x20크기가'+_0xe260e4(0x1ce)+'대\x20'+_0x28cdab['zBCPR'](_0x323bb8/0x400,0x400)+(_0xe260e4(0x1a0)+'.'));const _0x1fedee=_0x49095b['createRead'+'Stream'](_0x407967),_0x3f9a64=[];for await(const _0x3dbcd3 of _0x1fedee){_0x3f9a64[_0xe260e4(0x192)](_0x3dbcd3);}const _0xdf1cb0=Buffer[_0xe260e4(0x172)](_0x3f9a64),_0x105c09=Date[_0xe260e4(0x145)](),_0x54eb47=_0x4258b9[_0xe260e4(0x1cc)][_0xe260e4(0x1cd)](_0x407967),_0xe5d9ed=this[_0xe260e4(0x153)+_0xe260e4(0x1ad)](_0x54eb47,'.zip'),_0x108764=_0x20225a||_0xe260e4(0x19b)+_0x105c09+'-'+_0xe5d9ed;return await this['s3'][_0xe260e4(0x101)](new PutObjectCommand({'Bucket':this['bucket'],'Key':_0x108764,'Body':_0xdf1cb0,'ContentType':_0xe260e4(0x15d)+_0xe260e4(0x167)})),logger[_0xe260e4(0x176)](_0xe260e4(0x1b7)+'\x20성공:\x20'+_0x108764+'\x20('+_0x28cdab[_0xe260e4(0x1ae)](_0x13b4e1,0x400)[_0xe260e4(0x1a3)](0x2)+'\x20KB)'),{'success':!![],'key':_0x108764,'url':this['buildObjec'+'tUrl'](_0x108764)};}catch(_0x7195f7){logger[_0xe260e4(0x1a8)](_0xe260e4(0x130)+'지\x20업로드\x20실패:',_0x7195f7);const _0x5f0012={};return _0x5f0012[_0xe260e4(0x1b8)]=![],_0x5f0012['error']=_0x7195f7 instanceof Error?_0x7195f7[_0xe260e4(0x180)]:'Unknown\x20er'+_0xe260e4(0x120),_0x5f0012;}}async['uploadFold'+a29_0x4bf212(0x186)](_0x1eb90e,_0x3b932b){const _0x1cba8e=a29_0x4bf212,_0x86d53a={};_0x86d53a[_0x1cba8e(0x1b6)]=function(_0x343515,_0x1082e3){return _0x343515>_0x1082e3;},_0x86d53a[_0x1cba8e(0x1c3)]=function(_0x5e61ff,_0x527bcf){return _0x5e61ff>_0x527bcf;},_0x86d53a[_0x1cba8e(0x141)]=function(_0x2ee229,_0x5b7578){return _0x2ee229/_0x5b7578;},_0x86d53a[_0x1cba8e(0xf7)]='Unknown\x20er'+_0x1cba8e(0x120);const _0x570fc0=_0x86d53a;try{const _0x40f615=await import('fs'),_0x565689=await import(_0x1cba8e(0x115)),_0x4576cb=_0x565689[_0x1cba8e(0x1cc)][_0x1cba8e(0x124)](_0x1eb90e)?_0x1eb90e:_0x565689[_0x1cba8e(0x1cc)]['resolve'](process[_0x1cba8e(0x132)](),_0x1eb90e);if(!_0x40f615[_0x1cba8e(0x174)](_0x4576cb))throw new Error('폴더를\x20찾을\x20수\x20없'+_0x1cba8e(0x126)+_0x1eb90e);const _0x3f8772=_0x40f615[_0x1cba8e(0x197)](_0x4576cb);if(!_0x3f8772['isDirector'+'y']())throw new Error('폴더가\x20아닙니다:\x20'+_0x1eb90e);const _0x2455b8=await this[_0x1cba8e(0x1bb)+_0x1cba8e(0x109)](_0x4576cb),{buffer:_0x3a1a08,skippedFolders:_0x5e1e5d}=_0x2455b8;_0x570fc0[_0x1cba8e(0x1b6)](_0x5e1e5d[_0x1cba8e(0x1aa)],0x0)&&logger[_0x1cba8e(0x176)](_0x1cba8e(0x165)+_0x5e1e5d[_0x1cba8e(0x1aa)]+_0x1cba8e(0x14e)+_0x5e1e5d[_0x1cba8e(0x184)](',\x20'));const _0x239caf=0xc8*0x400*0x400;if(_0x570fc0['zySxp'](_0x3a1a08[_0x1cba8e(0x1aa)],_0x239caf))throw new Error(_0x1cba8e(0x14f)+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0x239caf/0x400/0x400+(_0x1cba8e(0x1a0)+'.'));const _0x38dcc4=Date['now'](),_0xc93342=_0x565689[_0x1cba8e(0x1cc)][_0x1cba8e(0x1cd)](_0x4576cb),_0x18cfe4=_0x3b932b?this[_0x1cba8e(0x153)+_0x1cba8e(0x1ad)](_0x3b932b,'.zip'):_0xc93342+'-'+_0x38dcc4+_0x1cba8e(0xf9),_0x127700=_0x1cba8e(0x19b)+_0x38dcc4+'-'+_0x18cfe4;return await this['s3'][_0x1cba8e(0x101)](new PutObjectCommand({'Bucket':this[_0x1cba8e(0x168)],'Key':_0x127700,'Body':_0x3a1a08,'ContentType':_0x1cba8e(0x15d)+_0x1cba8e(0x167)})),logger[_0x1cba8e(0x176)](_0x1cba8e(0x143)+_0x1cba8e(0x181)+_0x127700+'\x20('+_0x570fc0[_0x1cba8e(0x141)](_0x3a1a08['length'],0x400)[_0x1cba8e(0x1a3)](0x2)+_0x1cba8e(0x15f)),{'success':!![],'key':_0x127700,'url':this['buildObjec'+_0x1cba8e(0x16c)](_0x127700),'skippedFolders':_0x5e1e5d[_0x1cba8e(0x1aa)]>0x0?_0x5e1e5d:undefined};}catch(_0x25748c){logger[_0x1cba8e(0x1a8)](_0x1cba8e(0x157)+_0x1cba8e(0x135),_0x25748c);const _0x2f5a7b={};return _0x2f5a7b[_0x1cba8e(0x1b8)]=![],_0x2f5a7b[_0x1cba8e(0x1a8)]=_0x25748c instanceof Error?_0x25748c[_0x1cba8e(0x180)]:_0x570fc0[_0x1cba8e(0xf7)],_0x2f5a7b;}}async[a29_0x4bf212(0x1bb)+a29_0x4bf212(0x109)](_0x480628){const _0xe507ad=a29_0x4bf212,_0xc3bc53=await import(_0xe507ad(0x1ab)),_0x1f1ba1=await import('fs'),_0x11201e=await import(_0xe507ad(0x115));return new Promise((_0x5d9ecc,_0x41483e)=>{const _0x4d8cd4=_0xe507ad,_0x387d41={};_0x387d41[_0x4d8cd4(0x1be)]=function(_0x5ab96c,_0x5dde27){return _0x5ab96c>_0x5dde27;},_0x387d41[_0x4d8cd4(0x18f)]=_0x4d8cd4(0x1c6)+_0x4d8cd4(0xf2),_0x387d41[_0x4d8cd4(0x112)]=function(_0x440c4b,_0x435ad3){return _0x440c4b+_0x435ad3;};const _0x491e96=_0x387d41,_0x22d8f4=[],_0x12370f={};_0x12370f[_0x4d8cd4(0x148)]=0x9;const _0x561a3e={};_0x561a3e[_0x4d8cd4(0x1b5)]=_0x12370f;const _0x3a6491=_0xc3bc53[_0x4d8cd4(0x1cc)](_0x4d8cd4(0x10d),_0x561a3e);_0x3a6491['on'](_0x4d8cd4(0xfe),_0x6386c9=>_0x22d8f4[_0x4d8cd4(0x192)](_0x6386c9)),_0x3a6491['on']('end',()=>_0x5d9ecc({'buffer':Buffer[_0x4d8cd4(0x172)](_0x22d8f4),'skippedFolders':_0x5c792d})),_0x3a6491['on'](_0x4d8cd4(0x1a8),_0x41483e);const _0x175ca0=0x32,_0x41b7d9=new Set(),_0x5c792d=[],_0x39d005=(_0xec37db,_0x5da0e7)=>{const _0x1053e4=_0x4d8cd4;try{const _0x53ecae=_0x11201e[_0x1053e4(0x149)](_0xec37db),_0x3bed4f=_0x11201e['resolve'](_0x5da0e7);if(!_0x53ecae['startsWith'](_0x3bed4f+_0x11201e[_0x1053e4(0x1a1)])&&_0x53ecae!==_0x3bed4f)return logger[_0x1053e4(0x177)]('경로가\x20기준\x20폴더\x20'+_0x1053e4(0x104)+'뜀):\x20'+_0xec37db),null;return _0x53ecae;}catch(_0x268203){return logger[_0x1053e4(0x177)](_0x1053e4(0x12d)+'(건너뜀):\x20'+_0xec37db,_0x268203),null;}};let _0x152624=0x0;const _0x579674=0x3e8,_0x5aeb47=0x64*0x400*0x400;let _0x5b7c0e=0x0;const _0x5dc671=(_0x79286b,_0x5659e5,_0x44fb82=0x0)=>{const _0x584590=_0x4d8cd4;if(_0x44fb82>_0x175ca0){const _0x191fae={};return _0x191fae[_0x584590(0x118)]=0x0,_0x191fae['totalSize']=0x0,_0x191fae;}let _0x96eade=0x0,_0x206c72=0x0;try{const _0x3a9127=_0x39d005(_0x79286b,_0x5659e5);if(!_0x3a9127){const _0x43f1a0={};return _0x43f1a0[_0x584590(0x118)]=0x0,_0x43f1a0[_0x584590(0xfb)]=0x0,_0x43f1a0;}const _0x2b3c1e={};_0x2b3c1e['withFileTy'+'pes']=!![];const _0x3d95e7=_0x1f1ba1['readdirSyn'+'c'](_0x3a9127,_0x2b3c1e);for(const _0x3157ee of _0x3d95e7){const _0x14d93d=_0x11201e['join'](_0x3a9127,_0x3157ee['name']),_0x2bc6b6=_0x39d005(_0x14d93d,_0x5659e5);if(!_0x2bc6b6)continue;try{const _0x576037=_0x1f1ba1[_0x584590(0x102)](_0x2bc6b6);if(_0x576037['isSymbolic'+_0x584590(0x142)]())continue;const _0x4fc88c=_0x1f1ba1['statSync'](_0x2bc6b6);if(_0x4fc88c[_0x584590(0x103)+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x584590(0x113)](_0x3157ee[_0x584590(0x19f)])){const _0x301469=_0x11201e['relative'](_0x5659e5,_0x2bc6b6);!_0x5c792d[_0x584590(0x113)](_0x301469)&&_0x5c792d[_0x584590(0x192)](_0x301469);continue;}const _0x4963ca=_0x5dc671(_0x2bc6b6,_0x5659e5,_0x44fb82+0x1);_0x96eade+=_0x4963ca[_0x584590(0x118)],_0x206c72+=_0x4963ca['totalSize'];}else{if(_0x4fc88c['isFile']()){_0x96eade++,_0x206c72+=_0x4fc88c[_0x584590(0x146)];if(_0x96eade>_0x579674||_0x491e96[_0x584590(0x1be)](_0x206c72,_0x5aeb47)){const _0x10d69c={};return _0x10d69c[_0x584590(0x118)]=_0x96eade,_0x10d69c[_0x584590(0xfb)]=_0x206c72,_0x10d69c;}}}}catch(_0x8effe2){logger[_0x584590(0x177)](_0x491e96[_0x584590(0x18f)],_0x8effe2);}}}catch(_0x5bbb0b){logger[_0x584590(0x177)](_0x584590(0x18e)+_0x584590(0x1cb),_0x5bbb0b);}const _0x40e388={};return _0x40e388[_0x584590(0x118)]=_0x96eade,_0x40e388['totalSize']=_0x206c72,_0x40e388;},_0x568bfc=_0x11201e[_0x4d8cd4(0x149)](_0x480628),_0x706f7=_0x5dc671(_0x480628,_0x568bfc);if(_0x706f7[_0x4d8cd4(0xfb)]>_0x5aeb47){_0x41483e(new Error('총\x20파일\x20크기가\x20너'+'무\x20큽니다.\x20최대\x20'+_0x5aeb47/0x400/0x400+(_0x4d8cd4(0x1a0)+_0x4d8cd4(0x114))+(_0x706f7[_0x4d8cd4(0xfb)]/0x400/0x400)[_0x4d8cd4(0x1a3)](0x2)+_0x4d8cd4(0x189)));return;}const _0x9f07b2=[],_0x543c26=(_0x128b21,_0x5c9eef,_0x5c8c92=0x0)=>{const _0x244d47=_0x4d8cd4;if(_0x5c8c92>_0x175ca0){logger['warn']('최대\x20디렉토리\x20깊이'+_0x244d47(0x122)+_0x175ca0+_0x244d47(0x13b)+_0x128b21);return;}try{const _0x561943=_0x39d005(_0x128b21,_0x5c9eef);if(!_0x561943)return;const _0x9c44ad={};_0x9c44ad[_0x244d47(0x1c4)+_0x244d47(0xf0)]=!![];const _0x4a863e=_0x1f1ba1['readdirSyn'+'c'](_0x561943,_0x9c44ad);for(const _0x50c448 of _0x4a863e){const _0x29ea3e=_0x11201e['join'](_0x561943,_0x50c448[_0x244d47(0x19f)]),_0x1cff50=_0x39d005(_0x29ea3e,_0x5c9eef);if(!_0x1cff50)continue;try{let _0xe39129=_0x1f1ba1[_0x244d47(0x102)](_0x1cff50);const _0x28197a=_0xe39129[_0x244d47(0x162)+_0x244d47(0x142)]();if(_0x28197a){const _0x480748=_0x1f1ba1['realpathSy'+'nc'][_0x244d47(0x10c)](_0x1cff50),_0x33e720=_0x39d005(_0x480748,_0x5c9eef);if(!_0x33e720){logger[_0x244d47(0x177)](_0x244d47(0x107)+_0x244d47(0x15e)+'\x20(건너뜀):\x20'+_0x29ea3e+'\x20->\x20'+_0x480748);continue;}const _0x503dab=_0x1cff50+'->'+_0x33e720;if(_0x41b7d9['has'](_0x503dab)){logger[_0x244d47(0x177)](_0x244d47(0x1a4)+'감지\x20(건너뜀):\x20'+_0x29ea3e);continue;}_0x41b7d9[_0x244d47(0xe4)](_0x503dab);try{_0xe39129=_0x1f1ba1[_0x244d47(0x197)](_0x33e720);}catch(_0x33478c){logger[_0x244d47(0x177)](_0x244d47(0x1b9)+_0x244d47(0xe6)+_0x244d47(0x13b)+_0x29ea3e,_0x33478c);continue;}}const _0x3e66f4=_0xe39129;if(_0x3e66f4[_0x244d47(0x103)+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x244d47(0x113)](_0x50c448[_0x244d47(0x19f)]))continue;const _0x35622f=_0x28197a?_0x39d005(_0x1f1ba1[_0x244d47(0x108)+'nc']['native'](_0x1cff50),_0x5c9eef):_0x1cff50;_0x35622f&&_0x543c26(_0x35622f,_0x5c9eef,_0x491e96[_0x244d47(0x112)](_0x5c8c92,0x1));}else{if(_0x3e66f4[_0x244d47(0x179)]()){const _0x46f0e9=_0x28197a?_0x39d005(_0x1f1ba1['realpathSy'+'nc'][_0x244d47(0x10c)](_0x1cff50),_0x5c9eef):_0x1cff50;if(_0x46f0e9){const _0x404107=_0x11201e[_0x244d47(0x194)](_0x5c9eef,_0x1cff50),_0x11ffdf=_0x404107[_0x244d47(0x16f)](/\\/g,'/'),_0x1cfee7=this[_0x244d47(0x156)+_0x244d47(0x12a)](_0x11ffdf),_0x1b8150={};_0x1b8150[_0x244d47(0x12e)]=_0x46f0e9,_0x1b8150[_0x244d47(0x169)]=_0x1cfee7,_0x9f07b2[_0x244d47(0x192)](_0x1b8150);}}}}catch(_0x499002){logger[_0x244d47(0x177)](_0x244d47(0x11b)+_0x244d47(0x191)+_0x29ea3e,_0x499002);}}}catch(_0x20f7e0){logger[_0x244d47(0x1a8)]('폴더\x20탐색\x20실패:\x20'+_0x128b21,_0x20f7e0);}};_0x543c26(_0x568bfc,_0x568bfc);const _0x532dde=0x14;let _0xeda474=0x0,_0x2e0628=0x0,_0x5d814a=![];const _0x1a814f=()=>{const _0x476237=_0x4d8cd4;if(_0x5d814a||_0xeda474>=_0x9f07b2[_0x476237(0x1aa)]){_0x2e0628===0x0&&_0xeda474>=_0x9f07b2[_0x476237(0x1aa)]&&_0x3a6491[_0x476237(0x12b)]();return;}while(_0x2e0628<_0x532dde&&_0xeda474<_0x9f07b2[_0x476237(0x1aa)]){const _0x3f91a2=_0x9f07b2[_0xeda474++];_0x2e0628++;try{const _0x15e9c8=_0x1f1ba1[_0x476237(0x140)+_0x476237(0x1ca)](_0x3f91a2[_0x476237(0x12e)]);_0x15e9c8['on']('error',_0x3004fc=>{const _0xa54359=_0x476237;_0x2e0628--,logger[_0xa54359(0x177)](_0xa54359(0x178)+_0xa54359(0x195)+_0x3f91a2[_0xa54359(0x12e)],_0x3004fc),_0x1a814f();}),_0x15e9c8['on'](_0x476237(0x10a),()=>{_0x2e0628--,_0x1a814f();});const _0x1d9020={};_0x1d9020[_0x476237(0x19f)]=_0x3f91a2[_0x476237(0x169)],_0x3a6491['append'](_0x15e9c8,_0x1d9020);}catch(_0x57a1c4){_0x2e0628--,logger['error'](_0x476237(0x17d)+'패:\x20'+_0x3f91a2['filePath'],_0x57a1c4),_0x1a814f();}}};_0x1a814f(),_0x3a6491['on'](_0x4d8cd4(0x1a8),()=>{_0x5d814a=!![];});});}['sanitizePa'+a29_0x4bf212(0x12a)](_0x54781a){const _0x2e6a1c=a29_0x4bf212;if(!_0x54781a||_0x54781a['trim']()[_0x2e6a1c(0x1aa)]===0x0)return'file_'+Date[_0x2e6a1c(0x145)]();let _0x1b186f=_0x54781a[_0x2e6a1c(0x16f)](/\.\./g,'')[_0x2e6a1c(0x16f)](/^[\/\\]+/,'')[_0x2e6a1c(0x133)]();_0x1b186f=_0x1b186f[_0x2e6a1c(0x16f)](/\\/g,'/'),_0x1b186f=_0x1b186f['replace'](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x1b186f['length']>0x1f4){const _0x2a949b=_0x1b186f[_0x2e6a1c(0x119)]('/'),_0xf604d0=_0x2a949b[_0x2a949b['length']-0x1];_0x1b186f=_0x2a949b[_0x2e6a1c(0x187)](0x0,-0x1)['join']('/')['slice'](0x0,0x1f4-_0xf604d0[_0x2e6a1c(0x1aa)])+'/'+_0xf604d0;}return _0x1b186f||_0x2e6a1c(0x190)+Date[_0x2e6a1c(0x145)]();}async['downloadFi'+'le'](_0x4f548c){const _0x297de9=a29_0x4bf212;try{const _0x92cefb=await this['s3'][_0x297de9(0x101)](new GetObjectCommand({'Bucket':this[_0x297de9(0x168)],'Key':_0x4f548c}));if(!_0x92cefb['Body'])throw new Error(_0x297de9(0x159)+_0x297de9(0x17f));const _0x46a4dd=[];for await(const _0x124422 of _0x92cefb[_0x297de9(0xfc)]){_0x46a4dd[_0x297de9(0x192)](_0x124422);}const _0x5e46a6=Buffer[_0x297de9(0x172)](_0x46a4dd),_0x390377=_0x5e46a6[_0x297de9(0x1a6)](_0x297de9(0x17c));logger[_0x297de9(0x176)]('파일\x20다운로드\x20성공'+':\x20'+_0x4f548c);const _0x33f44e={};return _0x33f44e[_0x297de9(0x1b8)]=!![],_0x33f44e['content']=_0x390377,_0x33f44e;}catch(_0x4491da){logger[_0x297de9(0x1a8)]('파일\x20다운로드\x20실패'+':',_0x4491da);const _0xac6e3={};return _0xac6e3['success']=![],_0xac6e3['error']=_0x4491da instanceof Error?_0x4491da['message']:_0x297de9(0x166)+_0x297de9(0x120),_0xac6e3;}}[a29_0x4bf212(0x137)+'tUrl'](_0x4426fe){const _0x44b1c3=a29_0x4bf212;if(this[_0x44b1c3(0x116)]){const _0x3e770d=this[_0x44b1c3(0x116)][_0x44b1c3(0x16f)](/\/$/,'');return _0x3e770d+'/'+this['bucket']+'/'+_0x4426fe;}return'https://'+this[_0x44b1c3(0x168)]+'.s3.'+this[_0x44b1c3(0x16b)]+('.amazonaws'+'.com/')+_0x4426fe;}}
|