@sparrowai/sparrow-mcp 1.1.11 → 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_0xbf08c8=a20_0x5a3b;(function(_0x202c99,_0x18bf8d){const _0x41a9fd=a20_0x5a3b,_0x373559=_0x202c99();while(!![]){try{const _0x1bd765=parseInt(_0x41a9fd(0x106))/0x1*(parseInt(_0x41a9fd(0x118))/0x2)+-parseInt(_0x41a9fd(0xff))/0x3+-parseInt(_0x41a9fd(0x120))/0x4*(parseInt(_0x41a9fd(0x10a))/0x5)+-parseInt(_0x41a9fd(0xfa))/0x6+parseInt(_0x41a9fd(0x12f))/0x7+parseInt(_0x41a9fd(0x111))/0x8*(parseInt(_0x41a9fd(0xd6))/0x9)+parseInt(_0x41a9fd(0xcf))/0xa;if(_0x1bd765===_0x18bf8d)break;else _0x373559['push'](_0x373559['shift']());}catch(_0x3b83bf){_0x373559['push'](_0x373559['shift']());}}}(a20_0x9ac8,0xf2096));function a20_0x9ac8(){const _0x24a386=['Info','erabilitie','join','../../chec','패:\x20','warn','재하지\x20않습니다','getLocaliz','.rule','sparrow','baseUrl','constructo','version','search','loadChecke','existsSync','/api/v1/ch','체커\x20규칙\x20다운로드','referenceI','checkers.z','kersDownlo','nceInfo','get','apiKey','kers','6036096cSQklf','unlinkSync','ensureChec','getCachedC','writeFileS','4266246qECVCi','filter','(((.+)+)+)','endsWith','용:\x20','arraybuffe','checkerKey','318rxGrmA','\x20실패:','initialize','recursive','4608655ZpcqXJ','map','checkerCac','eckers','dirname','from','name','16SNTIqD','getComplia','edInfo','utf-8','개\x20파일','개\x20규칙\x20로드','reference','8726SYltWr','nce','sByComplia','기존\x20체커\x20캐시\x20사','localized','key','erInfo','체커\x20서비스\x20초기화','4odRNSB','error','체커\x20디렉토리가\x20존','refreshCac','groupVulne','checkerInf','readFileSy','set','Bearer\x20','sWithCheck','length','parse','getChecker','readdirSyn','info','5935034XzZCyS','17784810NSaWcA','includes','apply','mJoAv','push','ync','find','1473453ayCukH','ByComplian','\x20완료:\x20','\x20시작...','toLowerCas','aded','tems','descriptio','rabilities','checkersDi','mkdirSync'];a20_0x9ac8=function(){return _0x24a386;};return a20_0x9ac8();}const a20_0x5e8908=(function(){let _0x301a2b=!![];return function(_0x6e696c,_0x457a8b){const _0x3dfc77=_0x301a2b?function(){const _0x3bf5ac=a20_0x5a3b;if(_0x457a8b){const _0x1c2f05=_0x457a8b[_0x3bf5ac(0xd1)](_0x6e696c,arguments);return _0x457a8b=null,_0x1c2f05;}}:function(){};return _0x301a2b=![],_0x3dfc77;};}()),a20_0x5ebfe1=a20_0x5e8908(this,function(){const _0x135050=a20_0x5a3b;return a20_0x5ebfe1['toString']()['search']('(((.+)+)+)'+'+$')['toString']()[_0x135050(0xec)+'r'](a20_0x5ebfe1)[_0x135050(0xee)](_0x135050(0x101)+'+$');});a20_0x5ebfe1();import a20_0x1bede3 from'axios';import a20_0xe4a3c8 from'adm-zip';import a20_0x465a8c from'path';import a20_0x42a91d from'fs';import{fileURLToPath}from'url';import{appConfig}from'../config/appConfig.js';import{logger}from'../utils/logger.js';function a20_0x5a3b(_0x570b7d,_0x5ec720){_0x570b7d=_0x570b7d-0xcf;const _0x1a7a1e=a20_0x9ac8();let _0x5ebfe1=_0x1a7a1e[_0x570b7d];return _0x5ebfe1;}export class CheckerService{[a20_0xbf08c8(0xdf)+'r'];[a20_0xbf08c8(0x10c)+'he'];[a20_0xbf08c8(0x108)+'d']=![];constructor(_0x319e74){const _0x26ca5a=a20_0xbf08c8;if(_0x319e74)this[_0x26ca5a(0xdf)+'r']=_0x319e74;else{const _0x74722a=a20_0x465a8c[_0x26ca5a(0x10e)](fileURLToPath(import.meta.url));this['checkersDi'+'r']=a20_0x465a8c['resolve'](_0x74722a,_0x26ca5a(0xe4)+_0x26ca5a(0xf9));}this[_0x26ca5a(0x10c)+'he']=new Map();}async[a20_0xbf08c8(0x108)](){const _0x5e258d=a20_0xbf08c8;if(this[_0x5e258d(0x108)+'d'])return;try{await this[_0x5e258d(0xfc)+_0x5e258d(0xf5)+_0x5e258d(0xdb)](),await this['loadChecke'+'rs'](),this[_0x5e258d(0x108)+'d']=!![],logger['info'](_0x5e258d(0x11f)+_0x5e258d(0xd8)+this[_0x5e258d(0x10c)+'he']['size']+_0x5e258d(0x116));}catch(_0x4dd926){logger[_0x5e258d(0x121)](_0x5e258d(0x11f)+'\x20실패:',_0x4dd926),this[_0x5e258d(0x108)+'d']=!![];}}async[a20_0xbf08c8(0xfc)+a20_0xbf08c8(0xf5)+'aded'](){const _0x44b26c=a20_0xbf08c8;if(a20_0x42a91d[_0x44b26c(0xf0)](this[_0x44b26c(0xdf)+'r'])){const _0x21d330=a20_0x42a91d[_0x44b26c(0x12d)+'c'](this[_0x44b26c(0xdf)+'r']),_0x2b30ec=_0x21d330[_0x44b26c(0x100)](_0x4e2b43=>_0x4e2b43[_0x44b26c(0x102)](_0x44b26c(0xe9)));if(_0x2b30ec[_0x44b26c(0x12a)]>0x0){logger[_0x44b26c(0x12e)](_0x44b26c(0x11b)+_0x44b26c(0x103)+_0x2b30ec[_0x44b26c(0x12a)]+_0x44b26c(0x115));return;}}logger['info'](_0x44b26c(0xf2)+_0x44b26c(0xd9));try{const _0x3de875=await a20_0x1bede3[_0x44b26c(0xf7)](appConfig[_0x44b26c(0xea)][_0x44b26c(0xeb)]+(_0x44b26c(0xf1)+_0x44b26c(0x10d)),{'headers':{'Authorization':_0x44b26c(0x128)+appConfig['sparrow'][_0x44b26c(0xf8)]},'responseType':_0x44b26c(0x104)+'r','timeout':0xea60});if(!a20_0x42a91d[_0x44b26c(0xf0)](this[_0x44b26c(0xdf)+'r'])){const _0x30b5e1={};_0x30b5e1[_0x44b26c(0x109)]=!![],a20_0x42a91d[_0x44b26c(0xe0)](this['checkersDi'+'r'],_0x30b5e1);}const _0x13f17b=a20_0x465a8c[_0x44b26c(0xe3)](this[_0x44b26c(0xdf)+'r'],_0x44b26c(0xf4)+'ip');a20_0x42a91d[_0x44b26c(0xfe)+_0x44b26c(0xd4)](_0x13f17b,Buffer[_0x44b26c(0x10f)](_0x3de875['data']));const _0x8421c4=new a20_0xe4a3c8(_0x13f17b);_0x8421c4['extractAll'+'To'](this[_0x44b26c(0xdf)+'r'],!![]),a20_0x42a91d[_0x44b26c(0xfb)](_0x13f17b);const _0x1a6df4=a20_0x42a91d[_0x44b26c(0x12d)+'c'](this[_0x44b26c(0xdf)+'r']),_0x5a9a77=_0x1a6df4[_0x44b26c(0x100)](_0x533780=>_0x533780[_0x44b26c(0x102)](_0x44b26c(0xe9)));logger[_0x44b26c(0x12e)]('체커\x20규칙\x20다운로드'+_0x44b26c(0xd8)+_0x5a9a77[_0x44b26c(0x12a)]+'개\x20파일');}catch(_0x2ffb2b){logger[_0x44b26c(0x121)]('체커\x20규칙\x20다운로드'+_0x44b26c(0x107),_0x2ffb2b);throw _0x2ffb2b;}}async[a20_0xbf08c8(0xef)+'rs'](){const _0x5ddf9e=a20_0xbf08c8,_0x22b2f2={};_0x22b2f2[_0x5ddf9e(0xd2)]=_0x5ddf9e(0x122)+_0x5ddf9e(0xe7);const _0x2e00c6=_0x22b2f2;if(!a20_0x42a91d[_0x5ddf9e(0xf0)](this[_0x5ddf9e(0xdf)+'r'])){logger[_0x5ddf9e(0xe6)](_0x2e00c6['mJoAv']);return;}const _0x49295a=a20_0x42a91d[_0x5ddf9e(0x12d)+'c'](this[_0x5ddf9e(0xdf)+'r']),_0x26c603=_0x49295a[_0x5ddf9e(0x100)](_0x222a7f=>_0x222a7f[_0x5ddf9e(0x102)](_0x5ddf9e(0xe9)));for(const _0x1af365 of _0x26c603){try{const _0x386db9=a20_0x465a8c[_0x5ddf9e(0xe3)](this['checkersDi'+'r'],_0x1af365),_0xbb3444=a20_0x42a91d[_0x5ddf9e(0x126)+'nc'](_0x386db9,_0x5ddf9e(0x114)),_0x52dda7=JSON[_0x5ddf9e(0x12b)](_0xbb3444);_0x52dda7[_0x5ddf9e(0x11d)]&&this[_0x5ddf9e(0x10c)+'he'][_0x5ddf9e(0x127)](_0x52dda7[_0x5ddf9e(0x11d)],_0x52dda7);}catch(_0x48687e){logger['warn']('체커\x20파일\x20파싱\x20실'+_0x5ddf9e(0xe5)+_0x1af365,_0x48687e);}}}[a20_0xbf08c8(0x12c)+a20_0xbf08c8(0xe1)](_0x5bfade,_0x53f88b='ko'){const _0x4d3414=a20_0xbf08c8;return this[_0x4d3414(0x10c)+'he'][_0x4d3414(0xf7)](_0x5bfade);}[a20_0xbf08c8(0xe8)+a20_0xbf08c8(0x113)](_0x529ce6,_0x557a4a='ko'){const _0x3dd3a6=a20_0xbf08c8,_0x5ec869=this['checkerCac'+'he'][_0x3dd3a6(0xf7)](_0x529ce6);if(!_0x5ec869)return undefined;const _0x48124d=_0x5ec869[_0x3dd3a6(0x11c)][_0x3dd3a6(0xd5)](_0x1e6937=>_0x1e6937['lang']===_0x557a4a)||_0x5ec869['localized'][_0x3dd3a6(0xd5)](_0x30da90=>_0x30da90['lang']==='en')||_0x5ec869[_0x3dd3a6(0x11c)][0x0];if(!_0x48124d)return undefined;const _0x599e04={};return _0x599e04[_0x3dd3a6(0x110)]=_0x48124d[_0x3dd3a6(0x110)],_0x599e04['descriptio'+'n']=_0x48124d[_0x3dd3a6(0xdd)+'n'],_0x599e04;}[a20_0xbf08c8(0x112)+'nceInfo'](_0x3a6481){const _0x3f553a=a20_0xbf08c8,_0x60ccd5=this[_0x3f553a(0x10c)+'he']['get'](_0x3a6481);return _0x60ccd5?.[_0x3f553a(0xf3)+'tems']||[];}[a20_0xbf08c8(0x12c)+a20_0xbf08c8(0x11a)+a20_0xbf08c8(0x119)](_0x351cb0){const _0x176e96=a20_0xbf08c8,_0x5f0af9=[];for(const _0x4700fa of this[_0x176e96(0x10c)+'he']['values']()){const _0x2968e6=_0x4700fa[_0x176e96(0xf3)+_0x176e96(0xdc)]?.['some'](_0x57258a=>_0x57258a['reference']['name'][_0x176e96(0xda)+'e']()[_0x176e96(0xd0)](_0x351cb0[_0x176e96(0xda)+'e']()));_0x2968e6&&_0x5f0af9['push'](_0x4700fa);}return _0x5f0af9;}['enrichVuln'+a20_0xbf08c8(0xe2)+a20_0xbf08c8(0x129)+a20_0xbf08c8(0x11e)](_0x1998a0,_0x3ebc86='ko'){const _0x2d6160=a20_0xbf08c8;return _0x1998a0[_0x2d6160(0x10b)](_0x3e8073=>{const _0x3bf7ac=_0x2d6160,_0x925a6e=_0x3e8073[_0x3bf7ac(0x105)];if(!_0x925a6e)return _0x3e8073;const _0x7e6b2e=this[_0x3bf7ac(0xe8)+_0x3bf7ac(0x113)](_0x925a6e,_0x3ebc86),_0x22903d=this[_0x3bf7ac(0x112)+_0x3bf7ac(0xf6)](_0x925a6e),_0x97cb4d={..._0x3e8073};return _0x97cb4d[_0x3bf7ac(0x125)+'o']=_0x7e6b2e?{'name':_0x7e6b2e[_0x3bf7ac(0x110)],'description':_0x7e6b2e[_0x3bf7ac(0xdd)+'n'],'compliance':_0x22903d[_0x3bf7ac(0x12a)]>0x0?_0x22903d:undefined}:undefined,_0x97cb4d;});}[a20_0xbf08c8(0x124)+a20_0xbf08c8(0xde)+a20_0xbf08c8(0xd7)+'ce'](_0x1f1841){const _0x39ac27=a20_0xbf08c8,_0x2f4803=new Map();for(const _0x244ccb of _0x1f1841){const _0x188c28=this['getComplia'+_0x39ac27(0xf6)](_0x244ccb[_0x39ac27(0x105)]);if(_0x188c28[_0x39ac27(0x12a)]===0x0){const _0x5f05d9='기타';!_0x2f4803['has'](_0x5f05d9)&&_0x2f4803[_0x39ac27(0x127)](_0x5f05d9,[]),_0x2f4803['get'](_0x5f05d9)[_0x39ac27(0xd3)](_0x244ccb);}else for(const _0x554d13 of _0x188c28){const _0x3c599c=''+_0x554d13[_0x39ac27(0x117)]['name']+(_0x554d13['reference'][_0x39ac27(0xed)]?'\x20('+_0x554d13[_0x39ac27(0x117)][_0x39ac27(0xed)]+')':'');!_0x2f4803['has'](_0x3c599c)&&_0x2f4803[_0x39ac27(0x127)](_0x3c599c,[]),_0x2f4803[_0x39ac27(0xf7)](_0x3c599c)[_0x39ac27(0xd3)](_0x244ccb);}}return _0x2f4803;}[a20_0xbf08c8(0xfd)+'heckerCoun'+'t'](){const _0x3bc2d6=a20_0xbf08c8;return this[_0x3bc2d6(0x10c)+'he']['size'];}async[a20_0xbf08c8(0x123)+'he'](){const _0x328412=a20_0xbf08c8;this['checkerCac'+'he']['clear']();if(a20_0x42a91d[_0x328412(0xf0)](this[_0x328412(0xdf)+'r'])){const _0x2ccf14=a20_0x42a91d['readdirSyn'+'c'](this[_0x328412(0xdf)+'r']);for(const _0x1e208c of _0x2ccf14){a20_0x42a91d['unlinkSync'](a20_0x465a8c[_0x328412(0xe3)](this['checkersDi'+'r'],_0x1e208c));}}this[_0x328412(0x108)+'d']=![],await this[_0x328412(0x108)]();}}
|
|
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
|
-
const
|
|
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
|
-
|
|
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
|
-
const
|
|
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
|
-
const
|
|
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
|
-
const a29_0x2de708=a29_0x40ef;(function(_0x4244eb,_0xb3cda4){const _0x2945ff=a29_0x40ef,_0x5c9774=_0x4244eb();while(!![]){try{const _0x17a1ea=-parseInt(_0x2945ff(0x110))/0x1+-parseInt(_0x2945ff(0x1b8))/0x2+parseInt(_0x2945ff(0x155))/0x3*(-parseInt(_0x2945ff(0x15a))/0x4)+-parseInt(_0x2945ff(0xfe))/0x5*(parseInt(_0x2945ff(0x190))/0x6)+parseInt(_0x2945ff(0x14d))/0x7+-parseInt(_0x2945ff(0x129))/0x8+parseInt(_0x2945ff(0x17b))/0x9*(parseInt(_0x2945ff(0x1ab))/0xa);if(_0x17a1ea===_0xb3cda4)break;else _0x5c9774['push'](_0x5c9774['shift']());}catch(_0x30a7bc){_0x5c9774['push'](_0x5c9774['shift']());}}}(a29_0x3190,0x8e10f));const a29_0x5ae87c=(function(){let _0xc9055a=!![];return function(_0x21594d,_0x5eed9b){const _0xc209d1=_0xc9055a?function(){const _0x5762ea=a29_0x40ef;if(_0x5eed9b){const _0x595acc=_0x5eed9b[_0x5762ea(0x13f)](_0x21594d,arguments);return _0x5eed9b=null,_0x595acc;}}:function(){};return _0xc9055a=![],_0xc209d1;};}()),a29_0x3c03b4=a29_0x5ae87c(this,function(){const _0xd25390=a29_0x40ef;return a29_0x3c03b4[_0xd25390(0x11c)]()['search'](_0xd25390(0x179)+'+$')[_0xd25390(0x11c)]()[_0xd25390(0x168)+'r'](a29_0x3c03b4)[_0xd25390(0x159)](_0xd25390(0x179)+'+$');});a29_0x3c03b4();import{S3Client,PutObjectCommand,GetObjectCommand}from'@aws-sdk/client-s3';import{appConfig}from'../config/appConfig.js';import{logger}from'../utils/logger.js';function a29_0x40ef(_0x2a350a,_0x506a89){_0x2a350a=_0x2a350a-0xd3;const _0x275628=a29_0x3190();let _0x3c03b4=_0x275628[_0x2a350a];return _0x3c03b4;}import{decryptInternal}from'../utils/crypto.util.js';const ENCRYPTED_ACCESS_KEY_ID=a29_0x2de708(0x11e)+a29_0x2de708(0xe9)+'ZGh/Ygc=',ENCRYPTED_SECRET_ACCESS_KEY='Jn4eEwgeMz'+'ZYTDc1ICIq'+'W1dZRgF/PA'+a29_0x2de708(0xeb)+'HRknHVVUYw'+a29_0x2de708(0xd3),ENCRYPTED_BUCKET_NAME=a29_0x2de708(0x10f)+'FDDhEJ',STORAGE_REGION_DEFAULT=a29_0x2de708(0x14c)+a29_0x2de708(0x186),DEFAULT_EXCLUDE_FOLDERS=[a29_0x2de708(0x10b)+'es',a29_0x2de708(0xfc),a29_0x2de708(0x163),'build',a29_0x2de708(0xdc),'out','coverage','__pycache_'+'_',a29_0x2de708(0x13b),a29_0x2de708(0x132),a29_0x2de708(0x116),a29_0x2de708(0x147),a29_0x2de708(0x15e)+a29_0x2de708(0x143),a29_0x2de708(0x199),a29_0x2de708(0x137),a29_0x2de708(0xf6),a29_0x2de708(0x16d),a29_0x2de708(0x198),a29_0x2de708(0x131),a29_0x2de708(0x1c1)];function a29_0x3190(){const _0x4b5472=['패\x20(건너뜀):\x20','fileName','withFileTy','.cache','push','zipPath','secretAcce','apply','.\x20(발견:\x20','isAbsolute','업로드할\x20파일이\x20없','onents','습니다:\x0a','downloadFi','\x20ID\x20복호화\x20실패','vendor','n/zip','totalSize','basename','utf8','ap-northea','3104941ztpHcb','applicatio','existsSync','native','HAGuW','includes','패:\x20','니다:\x20','335217nGBKBh','https://','has','psMwu','search','28GgnQIi','getDecrypt','IBHnn','default','bower_comp','스토리지\x20Acces','join','ssKey','이름\x20복호화\x20실패','dist','filePath','createRead','폴더가\x20아닙니다:\x20','toFixed','constructo','sanitizeFi','다중\x20파일\x20업로드\x20','https://s3','\x20너무\x20큽니다.\x20최','obj','file_','success','무\x20큽니다.\x20최대\x20','length','resolve','name','us-east-1','error','wBuAQ','size','스토리지\x20파일\x20업로','(((.+)+)+)','accessKeyI','18wrFfTY','MB까지\x20허용됩니다','.zip','isFile','실패:','\x20KB)','파일\x20다운로드\x20실패','심볼릭\x20링크가\x20기준','uploadMult','sMXsX','파일\x20스트림\x20오류\x20','st-2','leName','제외된\x20폴더\x20(','순환\x20심볼릭\x20링크\x20','pes','sep','bucket','파일\x20업로드\x20성공:','스토리지\x20컨테이너\x20','경로\x20정규화\x20실패\x20','28710rgddSm','match','버킷\x20이름\x20복호화\x20','Message','warn','파일\x20압축\x20추가\x20실','sanitizePa','VTHvh','.svn','.gradle','append','ybvoH','ZIP\x20파일을\x20찾을','ile','tUrl','큽니다.\x20최대\x20','개\x20파일을\x20건너뛰었','fileCount','level','호화\x20실패','utf-8','파일이\x20아닙니다:\x20','스토리지\x20파일\x20경로','\x20(에러\x20코드:\x20','파일을\x20찾을\x20수\x20없','폴더\x20탐색\x20실패:\x20','S3\x20클라이언트\x20초','13017950skeUft','ZeqCZ','$response','multiple-f','심볼릭\x20링크\x20대상\x20','PUnEi','ZIP\x20파일\x20크기가','폴더\x20압축\x20스토리지','ZIP\x20파일\x20업로드','뜀):\x20','Unknown\x20er','화\x20실패:','realpathSy','1766162TDEkSq','endsWith','content','\x20기반\x20업로드\x20실패','):\x20','reduce','close','ipleFiles','slice','.DS_Store','Z8Rw==','스토리지\x20다중\x20파일','thInZip','vlQus','cKFzj','byteLength','uploadFold','Stream','bbAkK','.next','romFolder','유효한\x20파일이\x20없습','isDirector','buildObjec','edAccessKe','uploadFile','다운로드된\x20파일\x20내','replace','에\x20도달했습니다\x20(','fileConten','Link','\x20업로드\x20실패:','JaKD4uJUEZ','습니다.','A1PA0SHi0K','input/','finalize','파일\x20크기가\x20너무\x20','romFilePat','romMultipl','archiver','Body','파일\x20경로\x20기반\x20업','폴더\x20압축\x20업로드\x20','cwd','bin','eFiles','\x20-\x20','zlib','createZipF','지\x20업로드\x20실패:','.git','\x20->\x20','355QaBrTE','\x20수\x20없습니다:\x20','.com','니다:\x0a','mKuAR','ror','\x20폴더\x20밖을\x20가리킴','okQPy','concat','info','trim','Code','VPDjs','node_modul','경로가\x20기준\x20폴더\x20','.amazonaws','data','PF07LggYMS','96531ftNrur','message','스토리지\x20Secre','습니다:\x20','lstatSync','region','.idea','end','접근\x20실패\x20(건너뜀','tRuJH','now','send','toString','폴더를\x20찾을\x20수\x20없','EngWClY3G3','압축된\x20파일\x20크기가','readdirSyn','map','edSecretKe','path','isSymbolic','statSync','ZIP\x20파일\x20스토리','(건너뜀):\x20','ess\x20Key\x20복호','2909840nyYdgT','개별\x20항목\x20처리\x20중','.com/','body','성공:\x20','zip','LuWFk','endpoint','.hg','.vscode','파일\x20검증\x20실패:\x20','erAsZip','s\x20Key\x20ID\x20복','t\x20Access\x20K','target'];a29_0x3190=function(){return _0x4b5472;};return a29_0x3190();}export class S3Service{['bucket'];[a29_0x2de708(0x115)];['accessKeyI'+'d'];[a29_0x2de708(0x13e)+a29_0x2de708(0x161)];['endpoint'];['s3'];constructor(){const _0x506111=a29_0x2de708;this[_0x506111(0x18c)]=appConfig['s3']['bucket']||this[_0x506111(0x15b)+'edBucket'](),this[_0x506111(0x115)]=appConfig['s3'][_0x506111(0x115)]&&appConfig['s3']['region']!==_0x506111(0x174)?appConfig['s3'][_0x506111(0x115)]:STORAGE_REGION_DEFAULT,this[_0x506111(0x130)]=appConfig['s3'][_0x506111(0x130)],this['accessKeyI'+'d']=this[_0x506111(0x15b)+_0x506111(0xe1)+'y'](),this[_0x506111(0x13e)+_0x506111(0x161)]=this[_0x506111(0x15b)+_0x506111(0x122)+'y']();const _0x1172a0=this[_0x506111(0x130)]||_0x506111(0x16b)+'.'+this[_0x506111(0x115)]+(_0x506111(0x10d)+_0x506111(0x100));this['s3']=new S3Client({'region':this['region'],'credentials':{'accessKeyId':this['accessKeyI'+'d'],'secretAccessKey':this[_0x506111(0x13e)+'ssKey']},'endpoint':_0x1172a0,'forcePathStyle':!![]}),logger['info'](_0x506111(0x1aa)+'기화\x20완료:\x20리전='+this[_0x506111(0x115)]);}[a29_0x2de708(0x15b)+'edAccessKe'+'y'](){const _0x322208=a29_0x2de708;if(appConfig['s3'][_0x322208(0x17a)+'d'])return appConfig['s3'][_0x322208(0x17a)+'d'];try{return decryptInternal(ENCRYPTED_ACCESS_KEY_ID);}catch(_0x10aa1f){logger[_0x322208(0x175)]('Access\x20Key'+_0x322208(0x146)+':',_0x10aa1f);throw new Error('스토리지\x20Acces'+_0x322208(0x135)+_0x322208(0x1a3));}}[a29_0x2de708(0x15b)+a29_0x2de708(0x122)+'y'](){const _0x3c300f=a29_0x2de708;if(appConfig['s3'][_0x3c300f(0x13e)+_0x3c300f(0x161)])return appConfig['s3'][_0x3c300f(0x13e)+_0x3c300f(0x161)];try{return decryptInternal(ENCRYPTED_SECRET_ACCESS_KEY);}catch(_0x413941){logger['error']('Secret\x20Acc'+_0x3c300f(0x128)+_0x3c300f(0x1b6),_0x413941);throw new Error(_0x3c300f(0x112)+_0x3c300f(0x136)+'ey\x20복호화\x20실패');}}[a29_0x2de708(0x15b)+'edBucket'](){const _0x1f33ff=a29_0x2de708;if(appConfig['s3'][_0x1f33ff(0x18c)])return appConfig['s3'][_0x1f33ff(0x18c)];try{return decryptInternal(ENCRYPTED_BUCKET_NAME);}catch(_0x268208){logger['error'](_0x1f33ff(0x192)+_0x1f33ff(0x17f),_0x268208);throw new Error(_0x1f33ff(0x18e)+_0x1f33ff(0x162));}}async[a29_0x2de708(0xe2)](_0x110433,_0x5d431b){const _0x3af50a=a29_0x2de708,_0x33e258={};_0x33e258[_0x3af50a(0xdb)]=_0x3af50a(0x178)+'드\x20실패:';const _0x34be2b=_0x33e258;try{const _0x9104fd=0x64*0x400*0x400,_0x184cc7=Buffer[_0x3af50a(0xd8)](_0x110433,_0x3af50a(0x14b));if(_0x184cc7>_0x9104fd)throw new Error(_0x3af50a(0xee)+_0x3af50a(0x19f)+_0x9104fd/0x400/0x400+(_0x3af50a(0x17c)+'.'));const _0x1eb840=this[_0x3af50a(0x169)+'leName'](_0x5d431b),_0x2adf9b=await this[_0x3af50a(0xfa)+_0x3af50a(0x19d)](_0x110433,_0x1eb840),_0x43359e=0x64*0x400*0x400;if(_0x2adf9b[_0x3af50a(0x171)]>_0x43359e)throw new Error(_0x3af50a(0x11f)+_0x3af50a(0x16c)+'대\x20'+_0x43359e/0x400/0x400+(_0x3af50a(0x17c)+'.'));const _0x492310='input/'+Date[_0x3af50a(0x11a)]()+'-'+_0x1eb840+_0x3af50a(0x17d);return await this['s3'][_0x3af50a(0x11b)](new PutObjectCommand({'Bucket':this[_0x3af50a(0x18c)],'Key':_0x492310,'Body':_0x2adf9b,'ContentType':'applicatio'+_0x3af50a(0x148)})),logger['info'](_0x3af50a(0x18d)+'\x20'+_0x492310),{'success':!![],'key':_0x492310,'url':this['buildObjec'+'tUrl'](_0x492310)};}catch(_0x1bfb11){logger[_0x3af50a(0x175)](_0x34be2b[_0x3af50a(0xdb)],_0x1bfb11);let _0xf62cdd=_0x3af50a(0x1b5)+_0x3af50a(0x103);if(_0x1bfb11 instanceof Error){_0xf62cdd=_0x1bfb11[_0x3af50a(0x111)];const _0x6f1001=_0x1bfb11;if(_0x6f1001['$response']?.[_0x3af50a(0x12c)]){const _0x2c47b4=_0x6f1001[_0x3af50a(0x1ad)][_0x3af50a(0x12c)];_0x2c47b4[_0x3af50a(0x109)]&&(_0xf62cdd+=_0x3af50a(0x1a7)+_0x2c47b4[_0x3af50a(0x109)]+')'),_0x2c47b4[_0x3af50a(0x193)]&&(_0xf62cdd+='\x20('+_0x2c47b4[_0x3af50a(0x193)]+')');}}const _0x5744c0={};return _0x5744c0[_0x3af50a(0x16f)]=![],_0x5744c0[_0x3af50a(0x175)]=_0xf62cdd,_0x5744c0;}}async[a29_0x2de708(0xfa)+a29_0x2de708(0x19d)](_0x644e5d,_0x33d80b){const _0x35721a=a29_0x2de708,_0x333f9a=await import(_0x35721a(0xf1));return new Promise((_0x3d3677,_0x10e139)=>{const _0x2890be=_0x35721a,_0x41dd5b=[],_0x8fa19f={};_0x8fa19f['level']=0x9;const _0x83de4b={};_0x83de4b[_0x2890be(0xf9)]=_0x8fa19f;const _0xcbb41a=_0x333f9a[_0x2890be(0x15d)]('zip',_0x83de4b);_0xcbb41a['on'](_0x2890be(0x10e),_0x380b7f=>_0x41dd5b[_0x2890be(0x13c)](_0x380b7f)),_0xcbb41a['on'](_0x2890be(0x117),()=>_0x3d3677(Buffer[_0x2890be(0x106)](_0x41dd5b))),_0xcbb41a['on'](_0x2890be(0x175),_0x10e139);const _0xef5fb2={};_0xef5fb2[_0x2890be(0x173)]=_0x33d80b,_0xcbb41a[_0x2890be(0x19a)](_0x644e5d,_0xef5fb2),_0xcbb41a[_0x2890be(0xed)]();});}async[a29_0x2de708(0x183)+a29_0x2de708(0x1bf)](_0x406e42,_0x2f1dd5){const _0x242cf9=a29_0x2de708,_0x4c0573={};_0x4c0573[_0x242cf9(0x15c)]=_0x242cf9(0xd4)+_0x242cf9(0xe8),_0x4c0573[_0x242cf9(0x1ac)]=function(_0x1a1f31,_0x5c45d5){return _0x1a1f31 instanceof _0x5c45d5;};const _0x256b1a=_0x4c0573;try{if(!_0x406e42||_0x406e42[_0x242cf9(0x171)]===0x0)throw new Error(_0x242cf9(0x142)+_0x242cf9(0xea));const _0x107b1b=_0x406e42[_0x242cf9(0x121)](_0x4588d3=>({'fileName':this['sanitizeFi'+_0x242cf9(0x187)](_0x4588d3[_0x242cf9(0x139)]),'fileContent':_0x4588d3['fileConten'+'t']})),_0x546a14=0x64*0x400*0x400,_0x13a315=_0x107b1b[_0x242cf9(0x1bd)]((_0x34dde8,_0x2262a0)=>_0x34dde8+Buffer['byteLength'](_0x2262a0[_0x242cf9(0xe6)+'t'],'utf8'),0x0);if(_0x13a315>_0x546a14)throw new Error('총\x20파일\x20크기가\x20너'+_0x242cf9(0x170)+_0x546a14/0x400/0x400+(_0x242cf9(0x17c)+'.'));const _0x3bf7c5=await this[_0x242cf9(0xfa)+'romMultipl'+_0x242cf9(0xf7)](_0x107b1b),_0x3e5d40=0x64*0x400*0x400;if(_0x3bf7c5['length']>_0x3e5d40)throw new Error(_0x242cf9(0x11f)+_0x242cf9(0x16c)+'대\x20'+_0x3e5d40/0x400/0x400+(_0x242cf9(0x17c)+'.'));const _0x1a0d7d=Date[_0x242cf9(0x11a)](),_0x57ce1d=_0x2f1dd5?this[_0x242cf9(0x169)+_0x242cf9(0x187)](_0x2f1dd5,_0x242cf9(0x17d)):'multiple-f'+'iles-'+_0x1a0d7d+_0x242cf9(0x17d),_0x5dd66e=_0x242cf9(0xec)+_0x1a0d7d+'-'+_0x57ce1d;return await this['s3'][_0x242cf9(0x11b)](new PutObjectCommand({'Bucket':this[_0x242cf9(0x18c)],'Key':_0x5dd66e,'Body':_0x3bf7c5,'ContentType':_0x242cf9(0x14e)+_0x242cf9(0x148)})),logger[_0x242cf9(0x107)](_0x242cf9(0x16a)+_0x242cf9(0x12d)+_0x5dd66e+'\x20('+_0x406e42['length']+'개\x20파일)'),{'success':!![],'key':_0x5dd66e,'url':this[_0x242cf9(0xe0)+_0x242cf9(0x19e)](_0x5dd66e)};}catch(_0x13f6ac){return logger[_0x242cf9(0x175)](_0x256b1a[_0x242cf9(0x15c)],_0x13f6ac),{'success':![],'error':_0x256b1a[_0x242cf9(0x1ac)](_0x13f6ac,Error)?_0x13f6ac[_0x242cf9(0x111)]:'Unknown\x20er'+_0x242cf9(0x103)};}}[a29_0x2de708(0x169)+a29_0x2de708(0x187)](_0x198399,_0xeb7d19){const _0x42c21c=a29_0x2de708;if(!_0x198399||_0x198399['trim']()[_0x42c21c(0x171)]===0x0)return _0x42c21c(0x16e)+Date[_0x42c21c(0x11a)]()+(_0xeb7d19||'');let _0x491656=_0x198399[_0x42c21c(0xe4)](/\.\./g,'')[_0x42c21c(0xe4)](/[\/\\]/g,'_')[_0x42c21c(0xe4)](/^[\/\\]+/,'')[_0x42c21c(0x108)]();_0x491656=_0x491656[_0x42c21c(0xe4)](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x491656['length']>0xff){const _0xaab374=_0x491656[_0x42c21c(0x191)](/\.([^.]+)$/),_0xeef9ec=_0xaab374?'.'+_0xaab374[0x1]:'',_0x57f707=_0x491656[_0x42c21c(0x1c0)](0x0,_0x491656['length']-_0xeef9ec[_0x42c21c(0x171)]);_0x491656=_0x57f707['slice'](0x0,0xff-_0xeef9ec[_0x42c21c(0x171)])+_0xeef9ec;}if(_0xeb7d19&&!_0x491656[_0x42c21c(0x1b9)](_0xeb7d19)){const _0x4e58cc=_0x491656[_0x42c21c(0x191)](/\.[^.]+$/)?.[0x0];!_0x4e58cc&&(_0x491656+=_0xeb7d19);}return _0x491656||_0x42c21c(0x16e)+Date[_0x42c21c(0x11a)]()+(_0xeb7d19||'');}async[a29_0x2de708(0xfa)+a29_0x2de708(0xf0)+'eFiles'](_0x28ca5a){const _0x25dd28=a29_0x2de708,_0x232582={};_0x232582[_0x25dd28(0x184)]=_0x25dd28(0x175),_0x232582['pEagJ']=_0x25dd28(0xf1);const _0x50fa23=_0x232582,_0x22d5c3=await import(_0x50fa23['pEagJ']);return new Promise((_0x7cae5c,_0xf02ab9)=>{const _0x4f0789=_0x25dd28,_0x1342bb=[],_0x371735={};_0x371735[_0x4f0789(0x1a2)]=0x9;const _0x3107a8={};_0x3107a8['zlib']=_0x371735;const _0x18c857=_0x22d5c3['default'](_0x4f0789(0x12e),_0x3107a8);_0x18c857['on'](_0x4f0789(0x10e),_0x266ea0=>_0x1342bb['push'](_0x266ea0)),_0x18c857['on'](_0x4f0789(0x117),()=>_0x7cae5c(Buffer['concat'](_0x1342bb))),_0x18c857['on'](_0x50fa23[_0x4f0789(0x184)],_0xf02ab9);for(const _0x4ef21c of _0x28ca5a){_0x18c857[_0x4f0789(0x19a)](_0x4ef21c[_0x4f0789(0xe6)+'t'],{'name':_0x4ef21c[_0x4f0789(0x139)]});}_0x18c857[_0x4f0789(0xed)]();});}async[a29_0x2de708(0xe2)+'sFromPaths'](_0x300f23,_0x3743be){const _0x15b59c=a29_0x2de708,_0x39b67e={};_0x39b67e['PUnEi']=function(_0x27ecaa,_0x57e0c0){return _0x27ecaa/_0x57e0c0;},_0x39b67e[_0x15b59c(0xd6)]='.zip';const _0x14da23=_0x39b67e;try{const _0x5ab947=await import('fs'),_0x534416=await import(_0x15b59c(0x123));if(!_0x300f23||_0x300f23[_0x15b59c(0x171)]===0x0)throw new Error('업로드할\x20파일이\x20없'+'습니다.');const _0x290c5c=[],_0x3652d6=[];for(const _0x4cddaa of _0x300f23){try{const _0x49af05=_0x534416[_0x15b59c(0x15d)][_0x15b59c(0x141)](_0x4cddaa)?_0x4cddaa:_0x534416[_0x15b59c(0x15d)][_0x15b59c(0x172)](process[_0x15b59c(0xf5)](),_0x4cddaa);if(!_0x5ab947[_0x15b59c(0x14f)](_0x49af05)){_0x3652d6[_0x15b59c(0x13c)](_0x15b59c(0x1a8)+_0x15b59c(0x113)+_0x4cddaa);continue;}const _0x37616f=_0x5ab947[_0x15b59c(0x125)](_0x49af05);if(!_0x37616f[_0x15b59c(0x17e)]()){_0x3652d6['push'](_0x15b59c(0x1a5)+_0x4cddaa);continue;}_0x290c5c[_0x15b59c(0x13c)](_0x49af05);}catch(_0x48ee00){_0x3652d6[_0x15b59c(0x13c)](_0x15b59c(0x133)+_0x4cddaa+_0x15b59c(0xf8)+(_0x48ee00 instanceof Error?_0x48ee00[_0x15b59c(0x111)]:'Unknown\x20er'+_0x15b59c(0x103)));}}if(_0x290c5c[_0x15b59c(0x171)]===0x0)throw new Error(_0x15b59c(0xde)+_0x15b59c(0x101)+_0x3652d6[_0x15b59c(0x160)]('\x0a'));_0x3652d6['length']>0x0&&logger[_0x15b59c(0x194)](_0x3652d6['length']+(_0x15b59c(0x1a0)+_0x15b59c(0x144))+_0x3652d6['join']('\x0a'));const _0x291689=await this[_0x15b59c(0xfa)+_0x15b59c(0xef)+'hs'](_0x290c5c),_0x19a89f=0x64*0x400*0x400;if(_0x291689[_0x15b59c(0x171)]>_0x19a89f)throw new Error(_0x15b59c(0x11f)+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0x14da23[_0x15b59c(0x1b0)](_0x19a89f/0x400,0x400)+(_0x15b59c(0x17c)+'.'));const _0x3e20e0=Date[_0x15b59c(0x11a)](),_0x2efa86=_0x3743be?this[_0x15b59c(0x169)+'leName'](_0x3743be,_0x14da23[_0x15b59c(0xd6)]):_0x15b59c(0x1ae)+'iles-'+_0x3e20e0+_0x15b59c(0x17d),_0x5372ec=_0x15b59c(0xec)+_0x3e20e0+'-'+_0x2efa86;return await this['s3'][_0x15b59c(0x11b)](new PutObjectCommand({'Bucket':this[_0x15b59c(0x18c)],'Key':_0x5372ec,'Body':_0x291689,'ContentType':_0x15b59c(0x14e)+_0x15b59c(0x148)})),logger[_0x15b59c(0x107)](_0x15b59c(0xf3)+'로드\x20성공:\x20'+_0x5372ec+'\x20('+_0x290c5c['length']+'개\x20파일)'),{'success':!![],'key':_0x5372ec,'url':this[_0x15b59c(0xe0)+_0x15b59c(0x19e)](_0x5372ec)};}catch(_0x1e9e75){logger[_0x15b59c(0x175)](_0x15b59c(0x1a6)+_0x15b59c(0x1bb)+':',_0x1e9e75);const _0x56f2f6={};return _0x56f2f6[_0x15b59c(0x16f)]=![],_0x56f2f6['error']=_0x1e9e75 instanceof Error?_0x1e9e75[_0x15b59c(0x111)]:'Unknown\x20er'+_0x15b59c(0x103),_0x56f2f6;}}async[a29_0x2de708(0xfa)+a29_0x2de708(0xef)+'hs'](_0x2e5b1b){const _0x4157ec=a29_0x2de708,_0x16d77d={};_0x16d77d[_0x4157ec(0x119)]='path';const _0x538bf8=_0x16d77d,_0x479290=await import(_0x4157ec(0xf1)),_0x25f2c8=await import('fs'),_0xf12da7=await import(_0x538bf8[_0x4157ec(0x119)]);return new Promise((_0x2fc521,_0x16120a)=>{const _0x400952=_0x4157ec,_0x352fbd=[],_0x5e1125={};_0x5e1125[_0x400952(0x1a2)]=0x9;const _0x7838cb={};_0x7838cb[_0x400952(0xf9)]=_0x5e1125;const _0x2c9656=_0x479290[_0x400952(0x15d)](_0x400952(0x12e),_0x7838cb);_0x2c9656['on'](_0x400952(0x10e),_0x32777b=>_0x352fbd['push'](_0x32777b)),_0x2c9656['on'](_0x400952(0x117),()=>_0x2fc521(Buffer[_0x400952(0x106)](_0x352fbd))),_0x2c9656['on'](_0x400952(0x175),_0x16120a);const _0x4fb303=0x14;let _0x1cd75e=0x0,_0xd6709b=0x0,_0x4aeb0d=![];const _0x20dbd2=()=>{const _0x3a6020=_0x400952;if(_0x4aeb0d||_0x1cd75e>=_0x2e5b1b[_0x3a6020(0x171)]){_0xd6709b===0x0&&_0x1cd75e>=_0x2e5b1b[_0x3a6020(0x171)]&&_0x2c9656[_0x3a6020(0xed)]();return;}while(_0xd6709b<_0x4fb303&&_0x1cd75e<_0x2e5b1b[_0x3a6020(0x171)]){const _0x4a1777=_0x2e5b1b[_0x1cd75e++];_0xd6709b++;try{const _0x33196a=_0xf12da7[_0x3a6020(0x15d)][_0x3a6020(0x14a)](_0x4a1777),_0x146186=this['sanitizeFi'+_0x3a6020(0x187)](_0x33196a),_0x2c37f3=_0x25f2c8[_0x3a6020(0x165)+_0x3a6020(0xda)](_0x4a1777);_0x2c37f3['on'](_0x3a6020(0x175),_0x1a19ef=>{const _0x43f780=_0x3a6020;_0xd6709b--,logger[_0x43f780(0x194)](_0x43f780(0x185)+_0x43f780(0x127)+_0x4a1777,_0x1a19ef),_0x20dbd2();}),_0x2c37f3['on'](_0x3a6020(0x1be),()=>{_0xd6709b--,_0x20dbd2();});const _0x9206d9={};_0x9206d9['name']=_0x146186,_0x2c9656[_0x3a6020(0x19a)](_0x2c37f3,_0x9206d9);}catch(_0x45962c){_0xd6709b--,logger[_0x3a6020(0x175)](_0x3a6020(0x195)+_0x3a6020(0x153)+_0x4a1777,_0x45962c),_0x20dbd2();}}};_0x20dbd2(),_0x2c9656['on'](_0x400952(0x175),()=>{_0x4aeb0d=!![];});});}async['uploadZipF'+a29_0x2de708(0x19d)](_0x1acf04,_0x1852b2){const _0x41d50e=a29_0x2de708;try{const _0x479b3c=await import('fs'),_0x58a7e8=await import(_0x41d50e(0x123)),_0x1465d6=_0x58a7e8[_0x41d50e(0x15d)]['isAbsolute'](_0x1acf04)?_0x1acf04:_0x58a7e8[_0x41d50e(0x15d)][_0x41d50e(0x172)](process['cwd'](),_0x1acf04);if(!_0x479b3c['existsSync'](_0x1465d6))throw new Error(_0x41d50e(0x19c)+_0x41d50e(0xff)+_0x1acf04);const _0x243830=_0x479b3c[_0x41d50e(0x125)](_0x1465d6);if(!_0x243830[_0x41d50e(0x17e)]())throw new Error('ZIP\x20파일이\x20아닙'+_0x41d50e(0x154)+_0x1acf04);const _0x5b68ab=_0x243830[_0x41d50e(0x177)],_0x34958f=0xc8*0x400*0x400;if(_0x5b68ab>_0x34958f)throw new Error(_0x41d50e(0x1b1)+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0x34958f/0x400/0x400+(_0x41d50e(0x17c)+'.'));const _0xa07942=_0x479b3c[_0x41d50e(0x165)+'Stream'](_0x1465d6),_0x2435e6=[];for await(const _0x472150 of _0xa07942){_0x2435e6[_0x41d50e(0x13c)](_0x472150);}const _0x5c71c1=Buffer['concat'](_0x2435e6),_0x6fac56=Date[_0x41d50e(0x11a)](),_0x4ba6eb=_0x58a7e8[_0x41d50e(0x15d)][_0x41d50e(0x14a)](_0x1465d6),_0x24331c=this[_0x41d50e(0x169)+'leName'](_0x4ba6eb,'.zip'),_0x8699cd=_0x1852b2||'input/'+_0x6fac56+'-'+_0x24331c;return await this['s3'][_0x41d50e(0x11b)](new PutObjectCommand({'Bucket':this['bucket'],'Key':_0x8699cd,'Body':_0x5c71c1,'ContentType':'applicatio'+_0x41d50e(0x148)})),logger[_0x41d50e(0x107)](_0x41d50e(0x1b3)+'\x20성공:\x20'+_0x8699cd+'\x20('+(_0x5b68ab/0x400)['toFixed'](0x2)+_0x41d50e(0x180)),{'success':!![],'key':_0x8699cd,'url':this['buildObjec'+_0x41d50e(0x19e)](_0x8699cd)};}catch(_0x1cb140){logger[_0x41d50e(0x175)](_0x41d50e(0x126)+_0x41d50e(0xfb),_0x1cb140);const _0x3b4ce2={};return _0x3b4ce2[_0x41d50e(0x16f)]=![],_0x3b4ce2[_0x41d50e(0x175)]=_0x1cb140 instanceof Error?_0x1cb140[_0x41d50e(0x111)]:_0x41d50e(0x1b5)+_0x41d50e(0x103),_0x3b4ce2;}}async[a29_0x2de708(0xd9)+a29_0x2de708(0x134)](_0x49b11a,_0xc785ef){const _0x1f0278=a29_0x2de708;try{const _0x1ebd65=await import('fs'),_0x330e4c=await import(_0x1f0278(0x123)),_0x866ac9=_0x330e4c[_0x1f0278(0x15d)][_0x1f0278(0x141)](_0x49b11a)?_0x49b11a:_0x330e4c[_0x1f0278(0x15d)][_0x1f0278(0x172)](process[_0x1f0278(0xf5)](),_0x49b11a);if(!_0x1ebd65[_0x1f0278(0x14f)](_0x866ac9))throw new Error(_0x1f0278(0x11d)+_0x1f0278(0x113)+_0x49b11a);const _0x569406=_0x1ebd65[_0x1f0278(0x125)](_0x866ac9);if(!_0x569406[_0x1f0278(0xdf)+'y']())throw new Error(_0x1f0278(0x166)+_0x49b11a);const _0x126a5c=await this['createZipF'+_0x1f0278(0xdd)](_0x866ac9),{buffer:_0x4a17c3,skippedFolders:_0x154717}=_0x126a5c;_0x154717[_0x1f0278(0x171)]>0x0&&logger[_0x1f0278(0x107)](_0x1f0278(0x188)+_0x154717[_0x1f0278(0x171)]+'개):\x20'+_0x154717['join'](',\x20'));const _0x4c3d39=0xc8*0x400*0x400;if(_0x4a17c3[_0x1f0278(0x171)]>_0x4c3d39)throw new Error(_0x1f0278(0x11f)+_0x1f0278(0x16c)+'대\x20'+_0x4c3d39/0x400/0x400+(_0x1f0278(0x17c)+'.'));const _0x22aaaa=Date[_0x1f0278(0x11a)](),_0x4cbc85=_0x330e4c[_0x1f0278(0x15d)][_0x1f0278(0x14a)](_0x866ac9),_0x1177ca=_0xc785ef?this[_0x1f0278(0x169)+'leName'](_0xc785ef,_0x1f0278(0x17d)):_0x4cbc85+'-'+_0x22aaaa+'.zip',_0x2535ce=_0x1f0278(0xec)+_0x22aaaa+'-'+_0x1177ca;return await this['s3']['send'](new PutObjectCommand({'Bucket':this[_0x1f0278(0x18c)],'Key':_0x2535ce,'Body':_0x4a17c3,'ContentType':_0x1f0278(0x14e)+_0x1f0278(0x148)})),logger[_0x1f0278(0x107)](_0x1f0278(0xf4)+_0x1f0278(0x12d)+_0x2535ce+'\x20('+(_0x4a17c3[_0x1f0278(0x171)]/0x400)[_0x1f0278(0x167)](0x2)+_0x1f0278(0x180)),{'success':!![],'key':_0x2535ce,'url':this[_0x1f0278(0xe0)+_0x1f0278(0x19e)](_0x2535ce),'skippedFolders':_0x154717[_0x1f0278(0x171)]>0x0?_0x154717:undefined};}catch(_0x37d951){logger[_0x1f0278(0x175)](_0x1f0278(0x1b2)+'\x20업로드\x20실패:',_0x37d951);const _0x3d3ca7={};return _0x3d3ca7[_0x1f0278(0x16f)]=![],_0x3d3ca7[_0x1f0278(0x175)]=_0x37d951 instanceof Error?_0x37d951['message']:_0x1f0278(0x1b5)+'ror',_0x3d3ca7;}}async[a29_0x2de708(0xfa)+'romFolder'](_0x332d47){const _0x1e8bc4=a29_0x2de708,_0x1bfb53={'cKFzj':function(_0x3b187a,_0x2e9c4d){return _0x3b187a!==_0x2e9c4d;},'VPDjs':function(_0x4ef752,_0x4393b6){return _0x4ef752===_0x4393b6;},'wBuAQ':function(_0x1e73d5,_0xd8875b){return _0x1e73d5/_0xd8875b;},'LuWFk':function(_0xdd615a){return _0xdd615a();}},_0x3800ac=await import(_0x1e8bc4(0xf1)),_0x39a28d=await import('fs'),_0x4b1f34=await import(_0x1e8bc4(0x123));return new Promise((_0x2029ff,_0x34b8f0)=>{const _0x3c0056=_0x1e8bc4,_0x1022e2={'HPRes':function(_0x509f20,_0x350087){const _0x34968f=a29_0x40ef;return _0x1bfb53[_0x34968f(0x10a)](_0x509f20,_0x350087);},'mKuAR':function(_0x251e49,_0xc01654,_0x141394,_0x237976){return _0x251e49(_0xc01654,_0x141394,_0x237976);}},_0x22d7a0=[],_0x118598={};_0x118598[_0x3c0056(0x1a2)]=0x9;const _0x4aabb6={};_0x4aabb6[_0x3c0056(0xf9)]=_0x118598;const _0x925a20=_0x3800ac[_0x3c0056(0x15d)](_0x3c0056(0x12e),_0x4aabb6);_0x925a20['on'](_0x3c0056(0x10e),_0x56c691=>_0x22d7a0[_0x3c0056(0x13c)](_0x56c691)),_0x925a20['on']('end',()=>_0x2029ff({'buffer':Buffer[_0x3c0056(0x106)](_0x22d7a0),'skippedFolders':_0x21df46})),_0x925a20['on'](_0x3c0056(0x175),_0x34b8f0);const _0x471632=0x32,_0x232a42=new Set(),_0x21df46=[],_0x25d45d=(_0x29acd1,_0x51ec57)=>{const _0x26496d=_0x3c0056;try{const _0x4463bd=_0x4b1f34[_0x26496d(0x172)](_0x29acd1),_0x393dfc=_0x4b1f34[_0x26496d(0x172)](_0x51ec57);if(!_0x4463bd['startsWith'](_0x393dfc+_0x4b1f34[_0x26496d(0x18b)])&&_0x4463bd!==_0x393dfc)return logger[_0x26496d(0x194)](_0x26496d(0x10c)+'밖으로\x20나감\x20(건너'+_0x26496d(0x1b4)+_0x29acd1),null;return _0x4463bd;}catch(_0xc7226d){return logger[_0x26496d(0x194)](_0x26496d(0x18f)+'(건너뜀):\x20'+_0x29acd1,_0xc7226d),null;}};let _0x2d14c9=0x0;const _0x82288e=0x3e8,_0x1a2470=0x64*0x400*0x400;let _0x43d3b4=0x0;const _0x235123=(_0x1928f9,_0x5b85b5,_0x17e49f=0x0)=>{const _0x4f846c=_0x3c0056;if(_0x1022e2['HPRes'](_0x4f846c(0x105),_0x4f846c(0x105))){if(_0x17e49f>_0x471632){const _0x2c5317={};return _0x2c5317[_0x4f846c(0x1a1)]=0x0,_0x2c5317['totalSize']=0x0,_0x2c5317;}let _0x2c4e45=0x0,_0x3c5bc6=0x0;try{const _0x18c74f=_0x25d45d(_0x1928f9,_0x5b85b5);if(!_0x18c74f){const _0x5133b9={};return _0x5133b9['fileCount']=0x0,_0x5133b9[_0x4f846c(0x149)]=0x0,_0x5133b9;}const _0x11ada0={};_0x11ada0[_0x4f846c(0x13a)+_0x4f846c(0x18a)]=!![];const _0x45d036=_0x39a28d['readdirSyn'+'c'](_0x18c74f,_0x11ada0);for(const _0x59de1d of _0x45d036){const _0x1d6840=_0x4b1f34[_0x4f846c(0x160)](_0x18c74f,_0x59de1d[_0x4f846c(0x173)]),_0x4a32d0=_0x25d45d(_0x1d6840,_0x5b85b5);if(!_0x4a32d0)continue;try{const _0x38ba55=_0x39a28d[_0x4f846c(0x114)](_0x4a32d0);if(_0x38ba55[_0x4f846c(0x124)+_0x4f846c(0xe7)]())continue;const _0x2341a0=_0x39a28d[_0x4f846c(0x125)](_0x4a32d0);if(_0x2341a0[_0x4f846c(0xdf)+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x4f846c(0x152)](_0x59de1d[_0x4f846c(0x173)])){const _0x3e490b=_0x4b1f34['relative'](_0x5b85b5,_0x4a32d0);!_0x21df46[_0x4f846c(0x152)](_0x3e490b)&&_0x21df46[_0x4f846c(0x13c)](_0x3e490b);continue;}const _0x58f297=_0x1022e2[_0x4f846c(0x102)](_0x235123,_0x4a32d0,_0x5b85b5,_0x17e49f+0x1);_0x2c4e45+=_0x58f297[_0x4f846c(0x1a1)],_0x3c5bc6+=_0x58f297[_0x4f846c(0x149)];}else{if(_0x2341a0['isFile']()){_0x2c4e45++,_0x3c5bc6+=_0x2341a0[_0x4f846c(0x177)];if(_0x2c4e45>_0x82288e||_0x3c5bc6>_0x1a2470){const _0x3e82c3={};return _0x3e82c3['fileCount']=_0x2c4e45,_0x3e82c3[_0x4f846c(0x149)]=_0x3c5bc6,_0x3e82c3;}}}}catch(_0x1684da){logger[_0x4f846c(0x194)](_0x4f846c(0x12a)+'\x20오류\x20무시:',_0x1684da);}}}catch(_0x1aefd8){logger[_0x4f846c(0x194)]('폴더\x20스캔\x20중\x20오류'+'\x20무시:',_0x1aefd8);}const _0x36f529={};return _0x36f529['fileCount']=_0x2c4e45,_0x36f529[_0x4f846c(0x149)]=_0x3c5bc6,_0x36f529;}else{_0xd9fe94[_0x4f846c(0x175)]('Access\x20Key'+_0x4f846c(0x146)+':',_0x28677c);throw new _0x35462a(_0x4f846c(0x15f)+_0x4f846c(0x135)+_0x4f846c(0x1a3));}},_0x23898f=_0x4b1f34['resolve'](_0x332d47),_0x12a6ea=_0x235123(_0x332d47,_0x23898f);if(_0x12a6ea[_0x3c0056(0x149)]>_0x1a2470){_0x34b8f0(new Error('총\x20파일\x20크기가\x20너'+_0x3c0056(0x170)+_0x1bfb53[_0x3c0056(0x176)](_0x1a2470,0x400)/0x400+(_0x3c0056(0x17c)+_0x3c0056(0x140))+(_0x12a6ea[_0x3c0056(0x149)]/0x400/0x400)['toFixed'](0x2)+'MB)'));return;}const _0x3c15a3=[],_0x49cf33=(_0xc2b5b7,_0x59e1aa,_0x4972fb=0x0)=>{const _0x3cd4ea=_0x3c0056;if(_0x4972fb>_0x471632){logger[_0x3cd4ea(0x194)]('최대\x20디렉토리\x20깊이'+_0x3cd4ea(0xe5)+_0x471632+_0x3cd4ea(0x1bc)+_0xc2b5b7);return;}try{const _0x2daf53=_0x25d45d(_0xc2b5b7,_0x59e1aa);if(!_0x2daf53)return;const _0x8bf825={};_0x8bf825[_0x3cd4ea(0x13a)+_0x3cd4ea(0x18a)]=!![];const _0x2b7d03=_0x39a28d[_0x3cd4ea(0x120)+'c'](_0x2daf53,_0x8bf825);for(const _0x3cba4b of _0x2b7d03){const _0x5ecb61=_0x4b1f34['join'](_0x2daf53,_0x3cba4b[_0x3cd4ea(0x173)]),_0x53b741=_0x25d45d(_0x5ecb61,_0x59e1aa);if(!_0x53b741)continue;try{let _0x413712=_0x39a28d[_0x3cd4ea(0x114)](_0x53b741);const _0x331a90=_0x413712[_0x3cd4ea(0x124)+_0x3cd4ea(0xe7)]();if(_0x331a90){const _0x218b7f=_0x39a28d['realpathSy'+'nc'][_0x3cd4ea(0x150)](_0x53b741),_0x536409=_0x25d45d(_0x218b7f,_0x59e1aa);if(!_0x536409){logger['warn'](_0x3cd4ea(0x182)+_0x3cd4ea(0x104)+'\x20(건너뜀):\x20'+_0x5ecb61+_0x3cd4ea(0xfd)+_0x218b7f);continue;}const _0x2ff96d=_0x53b741+'->'+_0x536409;if(_0x232a42[_0x3cd4ea(0x157)](_0x2ff96d)){logger[_0x3cd4ea(0x194)](_0x3cd4ea(0x189)+'감지\x20(건너뜀):\x20'+_0x5ecb61);continue;}_0x232a42['add'](_0x2ff96d);try{_0x413712=_0x39a28d[_0x3cd4ea(0x125)](_0x536409);}catch(_0x554bd3){logger['warn'](_0x3cd4ea(0x1af)+_0x3cd4ea(0x118)+'):\x20'+_0x5ecb61,_0x554bd3);continue;}}const _0x1db37f=_0x413712;if(_0x1db37f['isDirector'+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x3cd4ea(0x152)](_0x3cba4b[_0x3cd4ea(0x173)]))continue;const _0x2b09e6=_0x331a90?_0x25d45d(_0x39a28d[_0x3cd4ea(0x1b7)+'nc']['native'](_0x53b741),_0x59e1aa):_0x53b741;_0x2b09e6&&_0x49cf33(_0x2b09e6,_0x59e1aa,_0x4972fb+0x1);}else{if(_0x1db37f['isFile']()){if('VTHvh'!==_0x3cd4ea(0x197))_0x5b3b03[_0x3cd4ea(0x175)]('폴더\x20탐색\x20실패:\x20'+_0x1bff07,_0x1aea3f);else{const _0x377d1d=_0x331a90?_0x25d45d(_0x39a28d[_0x3cd4ea(0x1b7)+'nc'][_0x3cd4ea(0x150)](_0x53b741),_0x59e1aa):_0x53b741;if(_0x377d1d){const _0x5ccfdd=_0x4b1f34['relative'](_0x59e1aa,_0x53b741),_0x15ebc7=_0x5ccfdd['replace'](/\\/g,'/'),_0x5efb04=this['sanitizePa'+_0x3cd4ea(0xd5)](_0x15ebc7),_0x540cb5={};_0x540cb5[_0x3cd4ea(0x164)]=_0x377d1d,_0x540cb5[_0x3cd4ea(0x13d)]=_0x5efb04,_0x3c15a3[_0x3cd4ea(0x13c)](_0x540cb5);}}}}}catch(_0x1fa429){logger[_0x3cd4ea(0x194)]('파일\x20정보\x20조회\x20실'+_0x3cd4ea(0x138)+_0x5ecb61,_0x1fa429);}}}catch(_0x167049){logger[_0x3cd4ea(0x175)](_0x3cd4ea(0x1a9)+_0xc2b5b7,_0x167049);}};_0x49cf33(_0x23898f,_0x23898f);const _0x529329=0x14;let _0x457d3b=0x0,_0x4187c8=0x0,_0x4be1d3=![];const _0xf2054b=()=>{const _0x519b1a=_0x3c0056,_0x36b8ad={'psMwu':function(_0x5e32fb){return _0x5e32fb();}};if(_0x4be1d3||_0x457d3b>=_0x3c15a3[_0x519b1a(0x171)]){if(_0x1bfb53[_0x519b1a(0xd7)]('HAGuW',_0x519b1a(0x151)))_0xb12bfa['warn'](_0x46009b[_0x519b1a(0x171)]+(_0x519b1a(0x1a0)+'습니다:\x0a')+_0x65253c[_0x519b1a(0x160)]('\x0a'));else{_0x4187c8===0x0&&_0x457d3b>=_0x3c15a3['length']&&_0x925a20[_0x519b1a(0xed)]();return;}}while(_0x4187c8<_0x529329&&_0x457d3b<_0x3c15a3['length']){const _0x5b460c=_0x3c15a3[_0x457d3b++];_0x4187c8++;try{const _0x4403f8=_0x39a28d[_0x519b1a(0x165)+_0x519b1a(0xda)](_0x5b460c[_0x519b1a(0x164)]);_0x4403f8['on'](_0x519b1a(0x175),_0x23bd4c=>{const _0x39a4b1=_0x519b1a;_0x4187c8--,logger[_0x39a4b1(0x194)](_0x39a4b1(0x185)+'(건너뜀):\x20'+_0x5b460c[_0x39a4b1(0x164)],_0x23bd4c),_0x36b8ad[_0x39a4b1(0x158)](_0xf2054b);}),_0x4403f8['on']('close',()=>{_0x4187c8--,_0xf2054b();});const _0x477aad={};_0x477aad['name']=_0x5b460c[_0x519b1a(0x13d)],_0x925a20[_0x519b1a(0x19a)](_0x4403f8,_0x477aad);}catch(_0x28cf7a){_0x4187c8--,logger[_0x519b1a(0x175)]('파일\x20압축\x20추가\x20실'+_0x519b1a(0x153)+_0x5b460c[_0x519b1a(0x164)],_0x28cf7a),_0xf2054b();}}};_0x1bfb53[_0x3c0056(0x12f)](_0xf2054b),_0x925a20['on'](_0x3c0056(0x175),()=>{_0x4be1d3=!![];});});}[a29_0x2de708(0x196)+a29_0x2de708(0xd5)](_0x1581c6){const _0x32b69e=a29_0x2de708,_0x1bf698={};_0x1bf698[_0x32b69e(0x19b)]=function(_0x1b7c48,_0x135453){return _0x1b7c48-_0x135453;};const _0x3ff14a=_0x1bf698;if(!_0x1581c6||_0x1581c6[_0x32b69e(0x108)]()[_0x32b69e(0x171)]===0x0)return _0x32b69e(0x16e)+Date['now']();let _0x5051b5=_0x1581c6[_0x32b69e(0xe4)](/\.\./g,'')['replace'](/^[\/\\]+/,'')[_0x32b69e(0x108)]();_0x5051b5=_0x5051b5[_0x32b69e(0xe4)](/\\/g,'/'),_0x5051b5=_0x5051b5[_0x32b69e(0xe4)](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x5051b5[_0x32b69e(0x171)]>0x1f4){const _0x2b4aaa=_0x5051b5['split']('/'),_0x47aca5=_0x2b4aaa[_0x3ff14a[_0x32b69e(0x19b)](_0x2b4aaa[_0x32b69e(0x171)],0x1)];_0x5051b5=_0x2b4aaa[_0x32b69e(0x1c0)](0x0,-0x1)[_0x32b69e(0x160)]('/')[_0x32b69e(0x1c0)](0x0,0x1f4-_0x47aca5[_0x32b69e(0x171)])+'/'+_0x47aca5;}return _0x5051b5||_0x32b69e(0x16e)+Date['now']();}async[a29_0x2de708(0x145)+'le'](_0x439906){const _0x47eade=a29_0x2de708;try{const _0x10c3bc=await this['s3']['send'](new GetObjectCommand({'Bucket':this[_0x47eade(0x18c)],'Key':_0x439906}));if(!_0x10c3bc[_0x47eade(0xf2)])throw new Error(_0x47eade(0xe3)+'용이\x20비어있습니다');const _0x3ddf36=[];for await(const _0x3abbb5 of _0x10c3bc[_0x47eade(0xf2)]){_0x3ddf36[_0x47eade(0x13c)](_0x3abbb5);}const _0x5a2f06=Buffer[_0x47eade(0x106)](_0x3ddf36),_0xee8d5b=_0x5a2f06[_0x47eade(0x11c)](_0x47eade(0x1a4));logger['info']('파일\x20다운로드\x20성공'+':\x20'+_0x439906);const _0x463f26={};return _0x463f26['success']=!![],_0x463f26[_0x47eade(0x1ba)]=_0xee8d5b,_0x463f26;}catch(_0x323f00){logger[_0x47eade(0x175)](_0x47eade(0x181)+':',_0x323f00);const _0x1592dc={};return _0x1592dc[_0x47eade(0x16f)]=![],_0x1592dc[_0x47eade(0x175)]=_0x323f00 instanceof Error?_0x323f00[_0x47eade(0x111)]:_0x47eade(0x1b5)+'ror',_0x1592dc;}}[a29_0x2de708(0xe0)+a29_0x2de708(0x19e)](_0x414646){const _0x44e3e7=a29_0x2de708;if(this[_0x44e3e7(0x130)]){const _0x2edcfd=this[_0x44e3e7(0x130)][_0x44e3e7(0xe4)](/\/$/,'');return _0x2edcfd+'/'+this[_0x44e3e7(0x18c)]+'/'+_0x414646;}return _0x44e3e7(0x156)+this[_0x44e3e7(0x18c)]+'.s3.'+this['region']+('.amazonaws'+_0x44e3e7(0x12b))+_0x414646;}}
|
|
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;}}
|