@sparrowai/sparrow-mcp 1.1.13 → 1.1.14
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.d.ts +24 -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.js +1 -1
- 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.d.ts +3 -0
- 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
|
-
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
|
+
const a20_0x1920c5=a20_0x4f96;(function(_0x26d440,_0x482b6c){const _0x293bf7=a20_0x4f96,_0x35dd56=_0x26d440();while(!![]){try{const _0x317e95=-parseInt(_0x293bf7(0xee))/0x1+parseInt(_0x293bf7(0xd6))/0x2*(parseInt(_0x293bf7(0xe9))/0x3)+parseInt(_0x293bf7(0xd2))/0x4*(parseInt(_0x293bf7(0xed))/0x5)+parseInt(_0x293bf7(0xe2))/0x6+-parseInt(_0x293bf7(0xe7))/0x7*(-parseInt(_0x293bf7(0xf2))/0x8)+-parseInt(_0x293bf7(0xb0))/0x9+-parseInt(_0x293bf7(0xcb))/0xa*(parseInt(_0x293bf7(0xa9))/0xb);if(_0x317e95===_0x482b6c)break;else _0x35dd56['push'](_0x35dd56['shift']());}catch(_0x45d08d){_0x35dd56['push'](_0x35dd56['shift']());}}}(a20_0x4777,0xb7442));function a20_0x4777(){const _0x16393c=['readdirSyn','warn','eckers','22vSpish','checkersDi','version','utf-8','rabilities','constructo','info','8119944gXouyJ','sparrow','checkerCac','apiKey','enrichVuln','refreshCac','체커\x20서비스\x20초기화','JmpfY','../../chec','재하지\x20않습니다','\x20실패:','length','체커\x20규칙\x20다운로드','aded','initialize','.rule','lang','\x20완료:\x20','ync','toString','name','size','Info','has','getCachedC','sWithCheck','JGvCH','2288740YhhFzm','push','개\x20파일','join','체커\x20파일\x20파싱\x20실','kersDownlo','용:\x20','8jollFD','nce','checkerKey','checkerInf','4PHaXqN','readFileSy','set','get','writeFileS','error','getLocaliz','parse','groupVulne','erabilitie','ensureChec','apply','7179924VaDYMa','filter','existsSync','mkdirSync','getChecker','48629DaOIMc','loadChecke','2220195FlYvfo','localized','THnFc','dirname','176005adwFwQ','719928olYsQH','key','search','기존\x20체커\x20캐시\x20사','96szHzBX','descriptio','includes','endsWith','kers','unlinkSync','패:\x20','values','nceInfo','tems','map','reference','referenceI','checkers.z','find','개\x20규칙\x20로드','(((.+)+)+)','ByComplian','getComplia','/api/v1/ch','edInfo','clear'];a20_0x4777=function(){return _0x16393c;};return a20_0x4777();}const a20_0x2f354a=(function(){let _0x226ddf=!![];return function(_0x4b45d8,_0x541ef7){const _0x397a60=_0x226ddf?function(){const _0x1c49e8=a20_0x4f96;if(_0x541ef7){const _0x358f10=_0x541ef7[_0x1c49e8(0xe1)](_0x4b45d8,arguments);return _0x541ef7=null,_0x358f10;}}:function(){};return _0x226ddf=![],_0x397a60;};}()),a20_0x57d7c4=a20_0x2f354a(this,function(){const _0x3d6739=a20_0x4f96;return a20_0x57d7c4[_0x3d6739(0xc3)]()[_0x3d6739(0xf0)]('(((.+)+)+)'+'+$')['toString']()[_0x3d6739(0xae)+'r'](a20_0x57d7c4)[_0x3d6739(0xf0)](_0x3d6739(0x102)+'+$');});function a20_0x4f96(_0x4f2251,_0x41c10c){_0x4f2251=_0x4f2251-0xa2;const _0x5ffc26=a20_0x4777();let _0x57d7c4=_0x5ffc26[_0x4f2251];return _0x57d7c4;}a20_0x57d7c4();import a20_0x447785 from'axios';import a20_0x3dd4b3 from'adm-zip';import a20_0x4fb474 from'path';import a20_0x10cdd8 from'fs';import{fileURLToPath}from'url';import{appConfig}from'../config/appConfig.js';import{logger}from'../utils/logger.js';export class CheckerService{[a20_0x1920c5(0xaa)+'r'];[a20_0x1920c5(0xb2)+'he'];[a20_0x1920c5(0xbe)+'d']=![];constructor(_0x2e430c){const _0x1ee471=a20_0x1920c5;if(_0x2e430c)this[_0x1ee471(0xaa)+'r']=_0x2e430c;else{const _0x354775=a20_0x4fb474[_0x1ee471(0xec)](fileURLToPath(import.meta.url));this[_0x1ee471(0xaa)+'r']=a20_0x4fb474['resolve'](_0x354775,_0x1ee471(0xb8)+_0x1ee471(0xf6));}this[_0x1ee471(0xb2)+'he']=new Map();}async[a20_0x1920c5(0xbe)](){const _0x3c2d6b=a20_0x1920c5;if(this['initialize'+'d'])return;try{await this[_0x3c2d6b(0xe0)+_0x3c2d6b(0xd0)+_0x3c2d6b(0xbd)](),await this['loadChecke'+'rs'](),this['initialize'+'d']=!![],logger[_0x3c2d6b(0xaf)](_0x3c2d6b(0xb6)+'\x20완료:\x20'+this[_0x3c2d6b(0xb2)+'he']['size']+_0x3c2d6b(0x101));}catch(_0x2f4046){logger['error'](_0x3c2d6b(0xb6)+_0x3c2d6b(0xba),_0x2f4046),this[_0x3c2d6b(0xbe)+'d']=!![];}}async[a20_0x1920c5(0xe0)+a20_0x1920c5(0xd0)+a20_0x1920c5(0xbd)](){const _0x577f46=a20_0x1920c5;if(a20_0x10cdd8[_0x577f46(0xe4)](this[_0x577f46(0xaa)+'r'])){const _0xfd4e8d=a20_0x10cdd8[_0x577f46(0xa6)+'c'](this[_0x577f46(0xaa)+'r']),_0x185979=_0xfd4e8d[_0x577f46(0xe3)](_0x12c774=>_0x12c774['endsWith']('.rule'));if(_0x185979['length']>0x0){logger[_0x577f46(0xaf)](_0x577f46(0xf1)+_0x577f46(0xd1)+_0x185979[_0x577f46(0xbb)]+_0x577f46(0xcd));return;}}logger['info'](_0x577f46(0xbc)+'\x20시작...');try{const _0x19b505=await a20_0x447785[_0x577f46(0xd9)](appConfig[_0x577f46(0xb1)]['baseUrl']+(_0x577f46(0xa3)+_0x577f46(0xa8)),{'headers':{'Authorization':'Bearer\x20'+appConfig[_0x577f46(0xb1)][_0x577f46(0xb3)]},'responseType':'arraybuffe'+'r','timeout':0xea60});if(!a20_0x10cdd8[_0x577f46(0xe4)](this[_0x577f46(0xaa)+'r'])){const _0x3bee55={};_0x3bee55['recursive']=!![],a20_0x10cdd8[_0x577f46(0xe5)](this[_0x577f46(0xaa)+'r'],_0x3bee55);}const _0x55d263=a20_0x4fb474[_0x577f46(0xce)](this[_0x577f46(0xaa)+'r'],_0x577f46(0xff)+'ip');a20_0x10cdd8[_0x577f46(0xda)+_0x577f46(0xc2)](_0x55d263,Buffer['from'](_0x19b505['data']));const _0x129782=new a20_0x3dd4b3(_0x55d263);_0x129782['extractAll'+'To'](this[_0x577f46(0xaa)+'r'],!![]),a20_0x10cdd8[_0x577f46(0xf7)](_0x55d263);const _0x2cfc37=a20_0x10cdd8[_0x577f46(0xa6)+'c'](this['checkersDi'+'r']),_0x1b113c=_0x2cfc37[_0x577f46(0xe3)](_0x479a6e=>_0x479a6e[_0x577f46(0xf5)]('.rule'));logger['info'](_0x577f46(0xbc)+_0x577f46(0xc1)+_0x1b113c['length']+'개\x20파일');}catch(_0x5d206c){logger[_0x577f46(0xdb)](_0x577f46(0xbc)+_0x577f46(0xba),_0x5d206c);throw _0x5d206c;}}async[a20_0x1920c5(0xe8)+'rs'](){const _0x3bcab7=a20_0x1920c5;if(!a20_0x10cdd8[_0x3bcab7(0xe4)](this[_0x3bcab7(0xaa)+'r'])){logger[_0x3bcab7(0xa7)]('체커\x20디렉토리가\x20존'+_0x3bcab7(0xb9));return;}const _0x3879da=a20_0x10cdd8['readdirSyn'+'c'](this[_0x3bcab7(0xaa)+'r']),_0x401615=_0x3879da[_0x3bcab7(0xe3)](_0x49181f=>_0x49181f['endsWith'](_0x3bcab7(0xbf)));for(const _0x227c1c of _0x401615){try{const _0x3bc884=a20_0x4fb474[_0x3bcab7(0xce)](this[_0x3bcab7(0xaa)+'r'],_0x227c1c),_0x2492e8=a20_0x10cdd8[_0x3bcab7(0xd7)+'nc'](_0x3bc884,_0x3bcab7(0xac)),_0x2eb128=JSON[_0x3bcab7(0xdd)](_0x2492e8);_0x2eb128[_0x3bcab7(0xef)]&&this['checkerCac'+'he'][_0x3bcab7(0xd8)](_0x2eb128[_0x3bcab7(0xef)],_0x2eb128);}catch(_0x505716){logger[_0x3bcab7(0xa7)](_0x3bcab7(0xcf)+_0x3bcab7(0xf8)+_0x227c1c,_0x505716);}}}[a20_0x1920c5(0xe6)+a20_0x1920c5(0xc6)](_0x5183f2,_0x2dd957='ko'){const _0x53e876=a20_0x1920c5;return this[_0x53e876(0xb2)+'he'][_0x53e876(0xd9)](_0x5183f2);}[a20_0x1920c5(0xdc)+a20_0x1920c5(0xa4)](_0xd01bee,_0x30b889='ko'){const _0xc448e3=a20_0x1920c5,_0x3547e7=this[_0xc448e3(0xb2)+'he']['get'](_0xd01bee);if(!_0x3547e7)return undefined;const _0x563f91=_0x3547e7[_0xc448e3(0xea)][_0xc448e3(0x100)](_0x5bc014=>_0x5bc014[_0xc448e3(0xc0)]===_0x30b889)||_0x3547e7[_0xc448e3(0xea)][_0xc448e3(0x100)](_0x29b330=>_0x29b330[_0xc448e3(0xc0)]==='en')||_0x3547e7[_0xc448e3(0xea)][0x0];if(!_0x563f91)return undefined;const _0x1204fd={};return _0x1204fd['name']=_0x563f91[_0xc448e3(0xc4)],_0x1204fd[_0xc448e3(0xf3)+'n']=_0x563f91[_0xc448e3(0xf3)+'n'],_0x1204fd;}[a20_0x1920c5(0xa2)+a20_0x1920c5(0xfa)](_0x5e811b){const _0x36147a=a20_0x1920c5,_0x1e91e2=this['checkerCac'+'he'][_0x36147a(0xd9)](_0x5e811b);return _0x1e91e2?.[_0x36147a(0xfe)+'tems']||[];}[a20_0x1920c5(0xe6)+'sByComplia'+a20_0x1920c5(0xd3)](_0x51baa1){const _0x300482=a20_0x1920c5,_0x41402b=[];for(const _0x11368d of this[_0x300482(0xb2)+'he'][_0x300482(0xf9)]()){const _0x8161c8=_0x11368d[_0x300482(0xfe)+_0x300482(0xfb)]?.['some'](_0x31c86f=>_0x31c86f[_0x300482(0xfd)]['name']['toLowerCas'+'e']()[_0x300482(0xf4)](_0x51baa1['toLowerCas'+'e']()));_0x8161c8&&_0x41402b[_0x300482(0xcc)](_0x11368d);}return _0x41402b;}[a20_0x1920c5(0xb4)+a20_0x1920c5(0xdf)+a20_0x1920c5(0xc9)+'erInfo'](_0xb19376,_0x202661='ko'){const _0x14d363=a20_0x1920c5;return _0xb19376[_0x14d363(0xfc)](_0x54f213=>{const _0xba622d=_0x14d363,_0x309d40=_0x54f213[_0xba622d(0xd4)];if(!_0x309d40)return _0x54f213;const _0x296e7c=this[_0xba622d(0xdc)+'edInfo'](_0x309d40,_0x202661),_0x1b8b6c=this[_0xba622d(0xa2)+_0xba622d(0xfa)](_0x309d40),_0xb271b2={..._0x54f213};return _0xb271b2[_0xba622d(0xd5)+'o']=_0x296e7c?{'name':_0x296e7c[_0xba622d(0xc4)],'description':_0x296e7c[_0xba622d(0xf3)+'n'],'compliance':_0x1b8b6c[_0xba622d(0xbb)]>0x0?_0x1b8b6c:undefined}:undefined,_0xb271b2;});}[a20_0x1920c5(0xde)+a20_0x1920c5(0xad)+a20_0x1920c5(0x103)+'ce'](_0x2bbfde){const _0x4f8a1e=a20_0x1920c5,_0x25479d={};_0x25479d[_0x4f8a1e(0xb7)]=function(_0x5ea5ed,_0x78fc0e){return _0x5ea5ed===_0x78fc0e;};const _0x1eacf8=_0x25479d,_0x40cbcf=new Map();for(const _0x3d2ec3 of _0x2bbfde){const _0x1bede3=this[_0x4f8a1e(0xa2)+_0x4f8a1e(0xfa)](_0x3d2ec3[_0x4f8a1e(0xd4)]);if(_0x1eacf8[_0x4f8a1e(0xb7)](_0x1bede3[_0x4f8a1e(0xbb)],0x0)){const _0x50e2bd='기타';!_0x40cbcf['has'](_0x50e2bd)&&_0x40cbcf[_0x4f8a1e(0xd8)](_0x50e2bd,[]),_0x40cbcf[_0x4f8a1e(0xd9)](_0x50e2bd)[_0x4f8a1e(0xcc)](_0x3d2ec3);}else for(const _0x3e8b0d of _0x1bede3){const _0x5ff2c9=''+_0x3e8b0d['reference'][_0x4f8a1e(0xc4)]+(_0x3e8b0d['reference'][_0x4f8a1e(0xab)]?'\x20('+_0x3e8b0d[_0x4f8a1e(0xfd)][_0x4f8a1e(0xab)]+')':'');!_0x40cbcf[_0x4f8a1e(0xc7)](_0x5ff2c9)&&_0x40cbcf[_0x4f8a1e(0xd8)](_0x5ff2c9,[]),_0x40cbcf['get'](_0x5ff2c9)[_0x4f8a1e(0xcc)](_0x3d2ec3);}}return _0x40cbcf;}[a20_0x1920c5(0xc8)+'heckerCoun'+'t'](){const _0x3e27a6=a20_0x1920c5;return this[_0x3e27a6(0xb2)+'he'][_0x3e27a6(0xc5)];}async[a20_0x1920c5(0xb5)+'he'](){const _0x26382c=a20_0x1920c5;this['checkerCac'+'he'][_0x26382c(0xa5)]();if(a20_0x10cdd8[_0x26382c(0xe4)](this[_0x26382c(0xaa)+'r'])){if(_0x26382c(0xca)===_0x26382c(0xeb))return this[_0x26382c(0xb2)+'he']['size'];else{const _0x5a9213=a20_0x10cdd8[_0x26382c(0xa6)+'c'](this[_0x26382c(0xaa)+'r']);for(const _0x432efc of _0x5a9213){a20_0x10cdd8['unlinkSync'](a20_0x4fb474[_0x26382c(0xce)](this[_0x26382c(0xaa)+'r'],_0x432efc));}}}this[_0x26382c(0xbe)+'d']=![],await this[_0x26382c(0xbe)]();}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a21_0x383e45=a21_0x239e;(function(_0x441763,_0x37e315){const _0xc5470a=a21_0x239e,_0xc87e53=_0x441763();while(!![]){try{const _0x28b990=parseInt(_0xc5470a(0x14d))/0x1+parseInt(_0xc5470a(0x13d))/0x2+-parseInt(_0xc5470a(0x14e))/0x3+-parseInt(_0xc5470a(0x141))/0x4*(-parseInt(_0xc5470a(0x14c))/0x5)+parseInt(_0xc5470a(0x147))/0x6*(parseInt(_0xc5470a(0x152))/0x7)+parseInt(_0xc5470a(0x148))/0x8*(-parseInt(_0xc5470a(0x143))/0x9)+parseInt(_0xc5470a(0x150))/0xa;if(_0x28b990===_0x37e315)break;else _0xc87e53['push'](_0xc87e53['shift']());}catch(_0x196cc6){_0xc87e53['push'](_0xc87e53['shift']());}}}(a21_0x26aa,0x3db0b));const a21_0x31d267=(function(){let _0x4c0771=!![];return function(_0x51c1b6,_0x1aaf0e){const _0x3ec554=_0x4c0771?function(){const _0x52010b=a21_0x239e;if(_0x1aaf0e){const _0x187864=_0x1aaf0e[_0x52010b(0x144)](_0x51c1b6,arguments);return _0x1aaf0e=null,_0x187864;}}:function(){};return _0x4c0771=![],_0x3ec554;};}()),a21_0x29e23b=a21_0x31d267(this,function(){const _0x4d1510=a21_0x239e,_0x10d8ec={};_0x10d8ec[_0x4d1510(0x145)]=_0x4d1510(0x13f)+'+$';const _0x2bd748=_0x10d8ec;return a21_0x29e23b[_0x4d1510(0x13c)]()[_0x4d1510(0x155)](_0x4d1510(0x13f)+'+$')['toString']()[_0x4d1510(0x142)+'r'](a21_0x29e23b)[_0x4d1510(0x155)](_0x2bd748[_0x4d1510(0x145)]);});a21_0x29e23b();import a21_0x41a381 from'@anthropic-ai/sdk';export class AnthropicProvider{['model'];['client'];constructor(_0x19f826,_0x214823){const _0x2487d6=a21_0x239e;this[_0x2487d6(0x154)]=_0x214823;const _0x28c636={};_0x28c636[_0x2487d6(0x14a)]=_0x19f826,this[_0x2487d6(0x140)]=new a21_0x41a381(_0x28c636);}async[a21_0x383e45(0x14f)](_0x13cb1b){const _0x47fea5=a21_0x383e45,_0x23142b={};_0x23142b[_0x47fea5(0x149)]='user',_0x23142b['content']=_0x13cb1b;const _0x16702f=await this['client'][_0x47fea5(0x151)][_0x47fea5(0x153)]({'model':this[_0x47fea5(0x154)],'max_tokens':0x1000,'messages':[_0x23142b]});if(_0x16702f[_0x47fea5(0x13e)][0x0][_0x47fea5(0x146)]===_0x47fea5(0x14b))return _0x16702f[_0x47fea5(0x13e)][0x0]['text'];return'';}}function a21_0x239e(_0x486bee,_0x213b7d){_0x486bee=_0x486bee-0x13c;const _0x448368=a21_0x26aa();let _0x29e23b=_0x448368[_0x486bee];return _0x29e23b;}function a21_0x26aa(){const _0x596696=['messages','42847MdlcFi','create','model','search','toString','83112YNOqnU','content','(((.+)+)+)','client','759548WuuYoa','constructo','10134XQzzNr','apply','lCaGx','type','30zBJqmW','2744YjxEmu','role','apiKey','text','10LbNioW','222413CDYTMT','538854qoXsoz','generate','1441710kmXeYr'];a21_0x26aa=function(){return _0x596696;};return a21_0x26aa();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x12063a,_0x49286a){const _0x3de54d=a22_0x2e66,_0x3d128a=_0x12063a();while(!![]){try{const _0x4a6346=parseInt(_0x3de54d(0x14b))/0x1*(-parseInt(_0x3de54d(0x150))/0x2)+-parseInt(_0x3de54d(0x162))/0x3*(-parseInt(_0x3de54d(0x14d))/0x4)+-parseInt(_0x3de54d(0x13d))/0x5*(parseInt(_0x3de54d(0x144))/0x6)+parseInt(_0x3de54d(0x161))/0x7+parseInt(_0x3de54d(0x154))/0x8+parseInt(_0x3de54d(0x153))/0x9*(parseInt(_0x3de54d(0x147))/0xa)+parseInt(_0x3de54d(0x159))/0xb*(parseInt(_0x3de54d(0x145))/0xc);if(_0x4a6346===_0x49286a)break;else _0x3d128a['push'](_0x3d128a['shift']());}catch(_0x52f335){_0x3d128a['push'](_0x3d128a['shift']());}}}(a22_0x167a,0x698de));function a22_0x167a(){const _0x1d4e42=['model','ciWCf','content','accessKeyI','n/json','(((.+)+)+)','max_tokens','3740933ShxmCp','27urVrpW','10nparLG','body','sessionTok','messages','23-05-31','client','ssKey','2364036mtEclA','36cqECYz','text','1860020tNMIBO','version','toString','credential','680089BGnZae','user','8444GQaNpR','send','type','2lmeoec','role','region','27lTNTmH','5845392TpHEYU','secretAcce','anthropic_','stringify','decode','213961jzGtiX'];a22_0x167a=function(){return _0x1d4e42;};return a22_0x167a();}const a22_0x5c8628=(function(){let _0x5f5c61=!![];return function(_0x4a109b,_0x5caf3a){const _0x278042=_0x5f5c61?function(){if(_0x5caf3a){const _0x21f2b3=_0x5caf3a['apply'](_0x4a109b,arguments);return _0x5caf3a=null,_0x21f2b3;}}:function(){};return _0x5f5c61=![],_0x278042;};}()),a22_0x1d5155=a22_0x5c8628(this,function(){const _0x281c22=a22_0x2e66;return a22_0x1d5155[_0x281c22(0x149)]()['search'](_0x281c22(0x15f)+'+$')[_0x281c22(0x149)]()['constructo'+'r'](a22_0x1d5155)['search'](_0x281c22(0x15f)+'+$');});function a22_0x2e66(_0x4f1500,_0x45bed9){_0x4f1500=_0x4f1500-0x13d;const _0x252e82=a22_0x167a();let _0x1d5155=_0x252e82[_0x4f1500];return _0x1d5155;}a22_0x1d5155();import{BedrockRuntimeClient,InvokeModelCommand}from'@aws-sdk/client-bedrock-runtime';export class BedrockProvider{['client'];['model'];constructor(_0x30c042,_0x3adfd1,_0x369139,_0x9c7e7d,_0x2793a4){const _0x173567=a22_0x2e66;this[_0x173567(0x15a)]=_0x30c042;const _0x43bbda={};_0x43bbda[_0x173567(0x152)]=_0x3adfd1;const _0x3d2211=_0x43bbda;if(_0x369139&&_0x9c7e7d){const _0x521474={};_0x521474[_0x173567(0x15d)+'d']=_0x369139,_0x521474[_0x173567(0x155)+_0x173567(0x143)]=_0x9c7e7d,_0x521474[_0x173567(0x13f)+'en']=_0x2793a4,_0x3d2211[_0x173567(0x14a)+'s']=_0x521474;}this[_0x173567(0x142)]=new BedrockRuntimeClient(_0x3d2211);}async['generate'](_0xfe23d6){const _0xfbaa76=a22_0x2e66,_0x18a437={};_0x18a437['ciWCf']='applicatio'+_0xfbaa76(0x15e);const _0x538dbe=_0x18a437,_0x159c86={};_0x159c86[_0xfbaa76(0x14f)]=_0xfbaa76(0x146),_0x159c86[_0xfbaa76(0x146)]=_0xfe23d6;const _0x3e5773={};_0x3e5773[_0xfbaa76(0x151)]=_0xfbaa76(0x14c),_0x3e5773[_0xfbaa76(0x15c)]=[_0x159c86];const _0x51af93={};_0x51af93[_0xfbaa76(0x156)+_0xfbaa76(0x148)]='bedrock-20'+_0xfbaa76(0x141),_0x51af93[_0xfbaa76(0x160)]=0x1000,_0x51af93[_0xfbaa76(0x140)]=[_0x3e5773];const _0x1d1d47=_0x51af93,_0x18b20d=new InvokeModelCommand({'modelId':this[_0xfbaa76(0x15a)],'contentType':'applicatio'+'n/json','accept':_0x538dbe[_0xfbaa76(0x15b)],'body':JSON[_0xfbaa76(0x157)](_0x1d1d47)}),_0xea2edd=await this['client'][_0xfbaa76(0x14e)](_0x18b20d),_0x35abe4=new TextDecoder()[_0xfbaa76(0x158)](_0xea2edd[_0xfbaa76(0x13e)]),_0x4b4393=JSON['parse'](_0x35abe4);if(_0x4b4393['content']&&_0x4b4393['content'][0x0]&&_0x4b4393[_0xfbaa76(0x15c)][0x0][_0xfbaa76(0x146)])return _0x4b4393[_0xfbaa76(0x15c)][0x0][_0xfbaa76(0x146)];return'';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a23_0x14ffd8=a23_0x3f4b;(function(_0x5dc75f,_0xd6ab91){const _0x1f0802=a23_0x3f4b,_0x22a523=_0x5dc75f();while(!![]){try{const _0x30a50c=parseInt(_0x1f0802(0x133))/0x1*(-parseInt(_0x1f0802(0x131))/0x2)+-parseInt(_0x1f0802(0x130))/0x3+-parseInt(_0x1f0802(0x12a))/0x4+-parseInt(_0x1f0802(0x139))/0x5*(-parseInt(_0x1f0802(0x137))/0x6)+parseInt(_0x1f0802(0x134))/0x7+parseInt(_0x1f0802(0x128))/0x8*(parseInt(_0x1f0802(0x13d))/0x9)+-parseInt(_0x1f0802(0x13a))/0xa*(parseInt(_0x1f0802(0x12c))/0xb);if(_0x30a50c===_0xd6ab91)break;else _0x22a523['push'](_0x22a523['shift']());}catch(_0x4e7e7c){_0x22a523['push'](_0x22a523['shift']());}}}(a23_0x29b0,0xf1ee2));const a23_0x48db0a=(function(){let _0x5978dc=!![];return function(_0x51f317,_0x3bcdc2){const _0x2495da=_0x5978dc?function(){if(_0x3bcdc2){const _0x37bc2a=_0x3bcdc2['apply'](_0x51f317,arguments);return _0x3bcdc2=null,_0x37bc2a;}}:function(){};return _0x5978dc=![],_0x2495da;};}()),a23_0x46a765=a23_0x48db0a(this,function(){const _0x3880a9=a23_0x3f4b;return a23_0x46a765[_0x3880a9(0x12d)]()[_0x3880a9(0x129)](_0x3880a9(0x12e)+'+$')[_0x3880a9(0x12d)]()[_0x3880a9(0x138)+'r'](a23_0x46a765)['search'](_0x3880a9(0x12e)+'+$');});function a23_0x29b0(){const _0x507e49=['getGenerat','generateCo','384FxKikG','constructo','136055LbRCJr','34790WzepAi','genAI','generate','81AiRKUB','752872HphLrD','search','2064204gUDzFu','ntent','2057zoXbYx','toString','(((.+)+)+)','model','591519gATphp','3203660taTRIm','text','1yfQyTu','9576616vfDaFS'];a23_0x29b0=function(){return _0x507e49;};return a23_0x29b0();}a23_0x46a765();import{GoogleGenerativeAI}from'@google/generative-ai';function a23_0x3f4b(_0x433854,_0x210b24){_0x433854=_0x433854-0x128;const _0x202a36=a23_0x29b0();let _0x46a765=_0x202a36[_0x433854];return _0x46a765;}export class GeminiProvider{[a23_0x14ffd8(0x13b)];[a23_0x14ffd8(0x12f)];constructor(_0x430050,_0x2d33e6){const _0x1885dc=a23_0x14ffd8;this[_0x1885dc(0x13b)]=new GoogleGenerativeAI(_0x430050),this[_0x1885dc(0x12f)]=_0x2d33e6;}async[a23_0x14ffd8(0x13c)](_0x1739dc){const _0x486be5=a23_0x14ffd8,_0x476a90=this[_0x486be5(0x13b)][_0x486be5(0x135)+'iveModel']({'model':this[_0x486be5(0x12f)]}),_0x5644f7=await _0x476a90[_0x486be5(0x136)+_0x486be5(0x12b)](_0x1739dc),_0x221fc8=await _0x5644f7['response'];return _0x221fc8[_0x486be5(0x132)]();}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x27a009,_0x3305ab){var _0x44aca9=a24_0x3877,_0x487f52=_0x27a009();while(!![]){try{var _0x3a1fe5=parseInt(_0x44aca9(0x73))/0x1+-parseInt(_0x44aca9(0x8c))/0x2*(parseInt(_0x44aca9(0x68))/0x3)+parseInt(_0x44aca9(0x67))/0x4+parseInt(_0x44aca9(0x81))/0x5*(-parseInt(_0x44aca9(0x6e))/0x6)+-parseInt(_0x44aca9(0x7c))/0x7*(parseInt(_0x44aca9(0x70))/0x8)+parseInt(_0x44aca9(0x84))/0x9+parseInt(_0x44aca9(0x87))/0xa;if(_0x3a1fe5===_0x3305ab)break;else _0x487f52['push'](_0x487f52['shift']());}catch(_0x537fc6){_0x487f52['push'](_0x487f52['shift']());}}}(a24_0xee49,0xa4707));var a24_0x47fe63=(function(){var _0x435fc3=!![];return function(_0x12701e,_0x7b9a94){var _0x13df6d=_0x435fc3?function(){var _0x5431ed=a24_0x3877;if(_0x7b9a94){var _0x9f1a38=_0x7b9a94[_0x5431ed(0x79)](_0x12701e,arguments);return _0x7b9a94=null,_0x9f1a38;}}:function(){};return _0x435fc3=![],_0x13df6d;};}()),a24_0x784da7=a24_0x47fe63(this,function(){var _0x2253d0=a24_0x3877;return a24_0x784da7['toString']()[_0x2253d0(0x8d)](_0x2253d0(0x86)+'+$')[_0x2253d0(0x7e)]()['constructo'+'r'](a24_0x784da7)[_0x2253d0(0x8d)](_0x2253d0(0x86)+'+$');});a24_0x784da7();function a24_0xee49(){var _0x557b02=['65agfgQd','apiKey','ollama','2063880xicXIs','anthropic','(((.+)+)+)','8617780szYFxS','igured.','ni\x20Provide','region','accessKeyI','2640124mZtNXO','search','4784940GnrqIa','3ExXsIp','ropic\x20Prov','del:\x20','Using\x20AWS\x20','Using\x20Gemi','sessionTok','20994ydsIJf','Bedrock\x20Pr','16HhqrrZ','baseUrl','warn','350633ZrwPux','l:\x20','model','Using\x20Anth','info','secretAcce','apply','openai','gemini','2096059ZsSHCz','r\x20(model:\x20','toString','Using\x20Open','aws'];a24_0xee49=function(){return _0x557b02;};return a24_0xee49();}import{appConfig}from'../../config/appConfig.js';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';function a24_0x3877(_0x41c286,_0x2cd641){_0x41c286=_0x41c286-0x67;var _0x43e047=a24_0xee49();var _0x784da7=_0x43e047[_0x41c286];return _0x784da7;}import{logger}from'../../utils/logger.js';export class LLMFactory{static['getProvide'+'r'](){var _0x894b86=a24_0x3877;if(appConfig[_0x894b86(0x7a)])return logger[_0x894b86(0x77)](_0x894b86(0x7f)+'AI\x20Provide'+'r\x20(model:\x20'+appConfig['openai'][_0x894b86(0x75)]+')'),new OpenAIProvider(appConfig[_0x894b86(0x7a)][_0x894b86(0x82)],appConfig[_0x894b86(0x7a)]['model']);if(appConfig['anthropic'])return logger[_0x894b86(0x77)](_0x894b86(0x76)+_0x894b86(0x69)+'ider\x20(mode'+_0x894b86(0x74)+appConfig[_0x894b86(0x85)][_0x894b86(0x75)]+')'),new AnthropicProvider(appConfig[_0x894b86(0x85)][_0x894b86(0x82)],appConfig['anthropic'][_0x894b86(0x75)]);if(appConfig['gemini'])return logger[_0x894b86(0x77)](_0x894b86(0x6c)+_0x894b86(0x89)+_0x894b86(0x7d)+appConfig[_0x894b86(0x7b)][_0x894b86(0x75)]+')'),new GeminiProvider(appConfig['gemini']['apiKey'],appConfig['gemini'][_0x894b86(0x75)]);if(appConfig[_0x894b86(0x80)])return logger[_0x894b86(0x77)](_0x894b86(0x6b)+_0x894b86(0x6f)+'ovider\x20(mo'+_0x894b86(0x6a)+appConfig[_0x894b86(0x80)][_0x894b86(0x75)]+')'),new BedrockProvider(appConfig['aws'][_0x894b86(0x75)],appConfig[_0x894b86(0x80)][_0x894b86(0x8a)],appConfig['aws'][_0x894b86(0x8b)+'d'],appConfig[_0x894b86(0x80)][_0x894b86(0x78)+'ssKey'],appConfig[_0x894b86(0x80)][_0x894b86(0x6d)+'en']);if(appConfig['ollama']&&appConfig[_0x894b86(0x83)][_0x894b86(0x71)])return logger[_0x894b86(0x77)]('Using\x20Olla'+'ma\x20Provide'+_0x894b86(0x7d)+appConfig[_0x894b86(0x83)][_0x894b86(0x75)]+')'),new OllamaProvider(appConfig[_0x894b86(0x83)][_0x894b86(0x71)],appConfig[_0x894b86(0x83)][_0x894b86(0x75)]);return logger[_0x894b86(0x72)]('No\x20LLM\x20Pro'+'vider\x20conf'+_0x894b86(0x88)),null;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x13efea,_0x6fa5d8){var _0x1916b6=a25_0x45d3,_0x54e7c7=_0x13efea();while(!![]){try{var _0x10cd23=-parseInt(_0x1916b6(0x7a))/0x1*(parseInt(_0x1916b6(0x7c))/0x2)+-parseInt(_0x1916b6(0x7b))/0x3*(parseInt(_0x1916b6(0x7d))/0x4)+-parseInt(_0x1916b6(0x76))/0x5*(-parseInt(_0x1916b6(0x74))/0x6)+parseInt(_0x1916b6(0x70))/0x7*(parseInt(_0x1916b6(0x6e))/0x8)+parseInt(_0x1916b6(0x71))/0x9+parseInt(_0x1916b6(0x77))/0xa*(-parseInt(_0x1916b6(0x73))/0xb)+parseInt(_0x1916b6(0x78))/0xc*(parseInt(_0x1916b6(0x72))/0xd);if(_0x10cd23===_0x6fa5d8)break;else _0x54e7c7['push'](_0x54e7c7['shift']());}catch(_0x4ee922){_0x54e7c7['push'](_0x54e7c7['shift']());}}}(a25_0x143c,0xd689e));function a25_0x143c(){var _0x44fa6d=['(((.+)+)+)','175MgykbX','1411119xjQHos','7098QunrNi','1642366aYxvNy','42BiiSgF','apply','492625NbrKuX','110MdtaYo','36744IljRWN','search','70763aNpemK','2238jAeVwR','22Cvbmuo','1816SaGKSd','toString','358360lDNvEL'];a25_0x143c=function(){return _0x44fa6d;};return a25_0x143c();}var a25_0x3d959b=(function(){var _0x1a49e3=!![];return function(_0x1998b3,_0x27f3c1){var _0x20fb92=_0x1a49e3?function(){var _0x1243c0=a25_0x45d3;if(_0x27f3c1){var _0x441fc6=_0x27f3c1[_0x1243c0(0x75)](_0x1998b3,arguments);return _0x27f3c1=null,_0x441fc6;}}:function(){};return _0x1a49e3=![],_0x20fb92;};}()),a25_0x44952e=a25_0x3d959b(this,function(){var _0x28cd85=a25_0x45d3;return a25_0x44952e['toString']()[_0x28cd85(0x79)](_0x28cd85(0x6f)+'+$')[_0x28cd85(0x7e)]()['constructo'+'r'](a25_0x44952e)[_0x28cd85(0x79)](_0x28cd85(0x6f)+'+$');});a25_0x44952e();function a25_0x45d3(_0x46188a,_0x184db8){_0x46188a=_0x46188a-0x6e;var _0x252b11=a25_0x143c();var _0x44952e=_0x252b11[_0x46188a];return _0x44952e;}export{};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a26_0x1fb67e=a26_0x112a;(function(_0x3d410e,_0x231995){const _0x3f2a87=a26_0x112a,_0x5979cb=_0x3d410e();while(!![]){try{const _0x37b048=parseInt(_0x3f2a87(0x1c7))/0x1+-parseInt(_0x3f2a87(0x1df))/0x2+parseInt(_0x3f2a87(0x1e0))/0x3*(-parseInt(_0x3f2a87(0x1cb))/0x4)+-parseInt(_0x3f2a87(0x1e5))/0x5*(-parseInt(_0x3f2a87(0x1db))/0x6)+-parseInt(_0x3f2a87(0x1c6))/0x7*(parseInt(_0x3f2a87(0x1ce))/0x8)+-parseInt(_0x3f2a87(0x1e3))/0x9+parseInt(_0x3f2a87(0x1cc))/0xa;if(_0x37b048===_0x231995)break;else _0x5979cb['push'](_0x5979cb['shift']());}catch(_0x5eeaa9){_0x5979cb['push'](_0x5979cb['shift']());}}}(a26_0x30da,0x42447));const a26_0x39fdfd=(function(){let _0x4b2f67=!![];return function(_0x4a6cfe,_0x86855){const _0x227afe=_0x4b2f67?function(){const _0x7214a6=a26_0x112a;if(_0x86855){const _0x2e06c5=_0x86855[_0x7214a6(0x1e6)](_0x4a6cfe,arguments);return _0x86855=null,_0x2e06c5;}}:function(){};return _0x4b2f67=![],_0x227afe;};}()),a26_0x536e89=a26_0x39fdfd(this,function(){const _0x19ca7a=a26_0x112a;return a26_0x536e89[_0x19ca7a(0x1e1)]()[_0x19ca7a(0x1c3)](_0x19ca7a(0x1d7)+'+$')['toString']()[_0x19ca7a(0x1cf)+'r'](a26_0x536e89)[_0x19ca7a(0x1c3)]('(((.+)+)+)'+'+$');});function a26_0x112a(_0x636fb6,_0x99e63b){_0x636fb6=_0x636fb6-0x1c2;const _0x2a91fd=a26_0x30da();let _0x536e89=_0x2a91fd[_0x636fb6];return _0x536e89;}a26_0x536e89();function a26_0x30da(){const _0x2494a0=['1041324KOiOsI','nect\x20to\x20Ol','r.\x20Please\x20','he\x20server\x20','947808ccNlxz','3MizfUm','toString','model','2527011DjSSpm','Cannot\x20con','10mvbtPK','apply','ECONNREFUS','code','search','baseUrl','Ollama\x20API','129346yeVNOn','25130wHEcnU','ate','\x20-\x20','ver\x20connec','472912HliDOb','7905820hjwbuD','response','8JymsUL','constructo','/api/gener','data','status','check\x20if\x20t','lama\x20serve','\x20error:\x20','ETIMEDOUT','(((.+)+)+)','generate','tion\x20timeo','timeout'];a26_0x30da=function(){return _0x2494a0;};return a26_0x30da();}import a26_0x449f1 from'axios';export class OllamaProvider{[a26_0x1fb67e(0x1c4)];[a26_0x1fb67e(0x1e2)];constructor(_0x43f042,_0x143eda){const _0x444c1a=a26_0x1fb67e;this['baseUrl']=_0x43f042,this[_0x444c1a(0x1e2)]=_0x143eda;}async[a26_0x1fb67e(0x1d8)](_0x42fbe8){const _0x521bdc=a26_0x1fb67e;try{const _0x29e702={};_0x29e702[_0x521bdc(0x1da)]=0x493e0;const _0x1945ea=await a26_0x449f1['post'](this[_0x521bdc(0x1c4)]+(_0x521bdc(0x1d0)+_0x521bdc(0x1c8)),{'model':this[_0x521bdc(0x1e2)],'prompt':_0x42fbe8,'stream':![]},_0x29e702);return _0x1945ea[_0x521bdc(0x1d1)][_0x521bdc(0x1cd)];}catch(_0x1e530a){if(a26_0x449f1['isAxiosErr'+'or'](_0x1e530a)){if(_0x1e530a[_0x521bdc(0x1c2)]===_0x521bdc(0x1e7)+'ED')throw new Error(_0x521bdc(0x1e4)+_0x521bdc(0x1dc)+_0x521bdc(0x1d4)+_0x521bdc(0x1dd)+_0x521bdc(0x1d3)+_0x521bdc(0x1de)+'is\x20running'+'.');else{if(_0x1e530a[_0x521bdc(0x1c2)]===_0x521bdc(0x1d6))throw new Error('Ollama\x20ser'+_0x521bdc(0x1ca)+_0x521bdc(0x1d9)+'ut');else{if(_0x1e530a['response'])throw new Error(_0x521bdc(0x1c5)+_0x521bdc(0x1d5)+_0x1e530a[_0x521bdc(0x1cd)][_0x521bdc(0x1d2)]+_0x521bdc(0x1c9)+JSON['stringify'](_0x1e530a[_0x521bdc(0x1cd)][_0x521bdc(0x1d1)]));}}}throw _0x1e530a;}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a27_0x2a8f69=a27_0x28cf;(function(_0x513344,_0x13bbc7){const _0x2b0684=a27_0x28cf,_0x2a3eab=_0x513344();while(!![]){try{const _0x8a5a35=parseInt(_0x2b0684(0x1c3))/0x1*(-parseInt(_0x2b0684(0x1c1))/0x2)+-parseInt(_0x2b0684(0x1c4))/0x3*(parseInt(_0x2b0684(0x1c7))/0x4)+-parseInt(_0x2b0684(0x1bc))/0x5+parseInt(_0x2b0684(0x1c0))/0x6+-parseInt(_0x2b0684(0x1b9))/0x7*(parseInt(_0x2b0684(0x1cc))/0x8)+-parseInt(_0x2b0684(0x1c6))/0x9*(parseInt(_0x2b0684(0x1b8))/0xa)+parseInt(_0x2b0684(0x1c8))/0xb*(parseInt(_0x2b0684(0x1ca))/0xc);if(_0x8a5a35===_0x13bbc7)break;else _0x2a3eab['push'](_0x2a3eab['shift']());}catch(_0x47cb42){_0x2a3eab['push'](_0x2a3eab['shift']());}}}(a27_0x2815,0x44a99));function a27_0x2815(){const _0xfde963=['content','7299996ZArqUB','apply','152IypCfO','create','user','constructo','2112670QrDLkE','36981xHPMwQ','client','toString','2346645PsImgS','apiKey','(((.+)+)+)','choices','2197548HGLRyh','2012pLksUc','message','11Lkyopq','2313dKoylY','model','18doqYop','1548ggPmTo','22TNEfVb'];a27_0x2815=function(){return _0xfde963;};return a27_0x2815();}const a27_0x349293=(function(){let _0x3d7460=!![];return function(_0x483afb,_0x166cc5){const _0x5355ad=_0x3d7460?function(){const _0x492e38=a27_0x28cf;if(_0x166cc5){const _0x5b96e1=_0x166cc5[_0x492e38(0x1cb)](_0x483afb,arguments);return _0x166cc5=null,_0x5b96e1;}}:function(){};return _0x3d7460=![],_0x5355ad;};}()),a27_0x10c9e8=a27_0x349293(this,function(){const _0x543e7e=a27_0x28cf;return a27_0x10c9e8[_0x543e7e(0x1bb)]()['search'](_0x543e7e(0x1be)+'+$')['toString']()[_0x543e7e(0x1b7)+'r'](a27_0x10c9e8)['search'](_0x543e7e(0x1be)+'+$');});a27_0x10c9e8();import a27_0x4acc99 from'openai';function a27_0x28cf(_0x4b8a9b,_0x3835d5){_0x4b8a9b=_0x4b8a9b-0x1b6;const _0x1c3fba=a27_0x2815();let _0x10c9e8=_0x1c3fba[_0x4b8a9b];return _0x10c9e8;}export class OpenAIProvider{[a27_0x2a8f69(0x1c5)];[a27_0x2a8f69(0x1ba)];constructor(_0x3b42bb,_0x3962dd){const _0x59e533=a27_0x2a8f69;this['model']=_0x3962dd;const _0x16005={};_0x16005[_0x59e533(0x1bd)]=_0x3b42bb,this['client']=new a27_0x4acc99(_0x16005);}async['generate'](_0x3ccbf7){const _0x4d5bca=a27_0x2a8f69,_0x3043bb={};_0x3043bb['role']=_0x4d5bca(0x1b6),_0x3043bb['content']=_0x3ccbf7;const _0x7300b=await this['client']['chat']['completion'+'s'][_0x4d5bca(0x1cd)]({'model':this[_0x4d5bca(0x1c5)],'messages':[_0x3043bb]});return _0x7300b[_0x4d5bca(0x1bf)][0x0][_0x4d5bca(0x1c2)][_0x4d5bca(0x1c9)]||'';}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a28_0x116b53=a28_0xd791;(function(_0x5a5c00,_0x1efc04){const _0x212f09=a28_0xd791,_0x18cea7=_0x5a5c00();while(!![]){try{const _0x58592a=parseInt(_0x212f09(0x10c))/0x1*(-parseInt(_0x212f09(0x9a))/0x2)+-parseInt(_0x212f09(0xff))/0x3*(parseInt(_0x212f09(0x118))/0x4)+parseInt(_0x212f09(0x11e))/0x5*(-parseInt(_0x212f09(0xd3))/0x6)+-parseInt(_0x212f09(0x11f))/0x7*(parseInt(_0x212f09(0x93))/0x8)+parseInt(_0x212f09(0xc3))/0x9*(parseInt(_0x212f09(0xf6))/0xa)+-parseInt(_0x212f09(0x109))/0xb*(-parseInt(_0x212f09(0xba))/0xc)+parseInt(_0x212f09(0x101))/0xd;if(_0x58592a===_0x1efc04)break;else _0x18cea7['push'](_0x18cea7['shift']());}catch(_0x367fb5){_0x18cea7['push'](_0x18cea7['shift']());}}}(a28_0x2ff4,0xa8eeb));function a28_0xd791(_0x6bd543,_0x54de69){_0x6bd543=_0x6bd543-0x93;const _0x449b35=a28_0x2ff4();let _0x20249d=_0x449b35[_0x6bd543];return _0x20249d;}const a28_0x506a8e=(function(){let _0x1e9cab=!![];return function(_0x38876d,_0x41e8a7){const _0x44db88=_0x1e9cab?function(){const _0x2d6854=a28_0xd791;if(_0x41e8a7){const _0x23c8d5=_0x41e8a7[_0x2d6854(0xad)](_0x38876d,arguments);return _0x41e8a7=null,_0x23c8d5;}}:function(){};return _0x1e9cab=![],_0x44db88;};}()),a28_0x20249d=a28_0x506a8e(this,function(){const _0x17674b=a28_0xd791;return a28_0x20249d['toString']()['search'](_0x17674b(0xee)+'+$')[_0x17674b(0xef)]()[_0x17674b(0xaf)+'r'](a28_0x20249d)['search'](_0x17674b(0xee)+'+$');});a28_0x20249d();import{logger}from'../utils/logger.js';function a28_0x2ff4(){const _0x5b993f=['uration\x20no','\x20major\x20vul','sed\x20on\x20the','(((.+)+)+)','toString','e\x20and\x20clea','generateAn','\x20code\x20read','abilities\x0a','\x0a\x0aRequirem','r\x20briefing','82130fIJYFr','te\x20a\x20simpl','cure\x20code\x20','led.','se\x20write\x20t','utomated\x20s','that\x20need\x20','LLM\x20config','\x20analysis\x20','1395030THIYfi','\x0a4.\x20Areas\x20','7540078hUHaBG','ecure\x20code','enerate\x20se','content','\x0a1.\x20Number','\x20functiona','all\x20securi','iefing.','759FbtqNC','message','that\x20fixes','18991mytKuz','\x20best\x20prac','success','\x20security\x20','he\x20briefin','re\x20code\x20ba','ions\x20or\x20ad','found\x20and\x20','lity\x20as\x20th','.\x20Maintain','ities:\x0a\x0aOr','riefing\x20ge','8iNScXV','kipped.','jor\x20securi','ity\x20vulner','\x20Add\x20comme','verity\x0a2.\x20','321335YeeRAl','2525761ciyUpd','generateSe','\x0a```\x0a\x0aThe\x20','8fMLjrr','ately\x20200-','t\x20found.\x20A','\x20generatio','ription\x20of','AsVBS','Code:\x0a```j','82akkiAA','t\x0a\x0aPlease\x20','\x20briefing:','is\x20results','racters.','\x20all\x20secur','h\x20based\x20on','s\x20briefing','generate\x20s','2.\x20Maintai','ew\x20the\x20raw','n\x20is\x20disab','classifica','ure\x20code:\x0a','generate',':\x0a\x0aAnalysi','results.','nts\x20to\x20exp','nerabiliti','apply','briefing\x20s','constructo','n\x20the\x20same','ximately\x203','t\x20explanat','ters.','ents:\x0a1.\x20G','s\x20Results:','re\x20Code:\x0a`','error','Please\x20wri','stringify','233364UBveXp','vulnerabil','abilities\x20','te\x20a\x20brief','alysisBrie','oKTys','300\x20charac','riginal\x20co','erate\x20secu','1413Biitcj','ollowing\x20o','\x0a```\x0a\x0aSecu','hould\x20incl','ity\x20best\x20p','\x0a3.\x20Applie','cureCode','pply\x20secur','ents\x0a\x0aPlea','ring\x20the\x20f','fing\x20shoul','t\x20found.\x20B','ability\x0a5.','Brief\x20desc','ditional\x20t','rabilities','42akzIOA','provider','\x20code\x20and\x20','d\x20security','\x20following','ief','y\x20improvem','LM\x20analysi','ements\x0a\x0aPl','briefing\x20i','cureCodeBr','tion\x20by\x20se','ity\x20improv','Failed\x20to\x20','n\x20approxim','ity\x20analys','ror','d\x20include:','\x20briefing.','discovered','\x20the\x20follo','Please\x20gen','Unknown\x20er','generate\x20L'];a28_0x2ff4=function(){return _0x5b993f;};return a28_0x2ff4();}import{LLMFactory}from'./llm/LLMFactory.js';export class LLMService{[a28_0x116b53(0xd4)];constructor(){const _0xd28dae=a28_0x116b53;this[_0xd28dae(0xd4)]=LLMFactory['getProvide'+'r']();}async[a28_0x116b53(0xf1)+a28_0x116b53(0xbe)+'f'](_0xa509ba){const _0x32347c=a28_0x116b53;if(!this[_0x32347c(0xd4)]){const _0x1cf01f={};return _0x1cf01f[_0x32347c(0x104)]='LLM\x20config'+_0x32347c(0xeb)+'t\x20found.\x20P'+'lease\x20revi'+_0x32347c(0xa4)+_0x32347c(0xfe)+_0x32347c(0xaa),_0x1cf01f[_0x32347c(0x10e)]=!![],_0x1cf01f;}try{const _0x27fcf0=_0x32347c(0xb8)+_0x32347c(0xf7)+_0x32347c(0xf0)+_0x32347c(0xf5)+'\x20in\x20Englis'+_0x32347c(0xa0)+_0x32347c(0xe7)+'wing\x20secur'+_0x32347c(0xe2)+_0x32347c(0x9d)+_0x32347c(0xa9)+_0x32347c(0xb5)+'\x0a'+JSON['stringify'](_0xa509ba,null,0x2)+('\x0a\x0aThe\x20brie'+_0x32347c(0xcd)+_0x32347c(0xe4)+_0x32347c(0x105)+'\x20of\x20vulner'+_0x32347c(0xbc)+_0x32347c(0x113)+_0x32347c(0xa6)+_0x32347c(0xde)+_0x32347c(0x11d)+_0x32347c(0xd0)+_0x32347c(0x97)+_0x32347c(0xec)+_0x32347c(0xac)+'es\x0a3.\x20Over'+_0x32347c(0x107)+'ty\x20status\x20'+'assessment'+_0x32347c(0x100)+_0x32347c(0xfc)+'improvemen'+_0x32347c(0x9b)+'write\x20the\x20'+_0x32347c(0xdc)+_0x32347c(0xe1)+_0x32347c(0x94)+_0x32347c(0xc0)+_0x32347c(0xb3)),_0x235de4=await this[_0x32347c(0xd4)][_0x32347c(0xa8)](_0x27fcf0),_0x4186f1={};return _0x4186f1[_0x32347c(0x104)]=_0x235de4,_0x4186f1['success']=!![],_0x4186f1;}catch(_0x5bab6c){logger[_0x32347c(0xb7)](_0x32347c(0xe0)+_0x32347c(0xea)+_0x32347c(0xda)+_0x32347c(0xa1)+':',_0x5bab6c);const _0x3cfe89={};return _0x3cfe89['content']=_0x32347c(0xe0)+'generate\x20a'+'nalysis\x20br'+_0x32347c(0x108),_0x3cfe89['success']=![],_0x3cfe89[_0x32347c(0xb7)]=_0x5bab6c instanceof Error?_0x5bab6c[_0x32347c(0x10a)]:_0x32347c(0xe9)+'ror',_0x3cfe89;}}async[a28_0x116b53(0x120)+a28_0x116b53(0xc9)](_0x41b2c8,_0x6ed436){const _0x2d421f=a28_0x116b53,_0x496639={};_0x496639['AsVBS']=function(_0x1f2dfa,_0x34d4fc){return _0x1f2dfa instanceof _0x34d4fc;};const _0x7f3f6b=_0x496639;if(!this[_0x2d421f(0xd4)]){const _0x1ace1c={};return _0x1ace1c[_0x2d421f(0x104)]=_0x41b2c8,_0x1ace1c[_0x2d421f(0x10e)]=![],_0x1ace1c[_0x2d421f(0xb7)]='LLM\x20config'+'uration\x20no'+_0x2d421f(0x95)+_0x2d421f(0xfb)+'ecure\x20code'+_0x2d421f(0x96)+_0x2d421f(0xa5)+_0x2d421f(0xf9),_0x1ace1c;}try{const _0x4eaf00=_0x2d421f(0xe8)+_0x2d421f(0xc2)+_0x2d421f(0x111)+_0x2d421f(0xed)+_0x2d421f(0xd7)+_0x2d421f(0xd5)+_0x2d421f(0xe6)+_0x2d421f(0x10f)+_0x2d421f(0xbb)+_0x2d421f(0x116)+'iginal\x20Cod'+'e:\x0a```java'+'\x0a'+_0x41b2c8+('\x0a```\x0a\x0aDisc'+'overed\x20Vul'+'nerabiliti'+'es:\x0a')+JSON[_0x2d421f(0xb9)](_0x6ed436,null,0x2)+(_0x2d421f(0xf4)+_0x2d421f(0xb4)+_0x2d421f(0x103)+_0x2d421f(0xf8)+_0x2d421f(0x10b)+_0x2d421f(0x9f)+_0x2d421f(0x11b)+_0x2d421f(0xf3)+_0x2d421f(0xa3)+_0x2d421f(0xb0)+_0x2d421f(0x106)+_0x2d421f(0x114)+'e\x20original'+'\x20code\x0a3.\x20A'+_0x2d421f(0xca)+_0x2d421f(0xc7)+'ractices\x0a4'+_0x2d421f(0x115)+_0x2d421f(0xf2)+_0x2d421f(0xcf)+_0x2d421f(0x11c)+_0x2d421f(0xab)+'lain\x20secur'+_0x2d421f(0xdf)+_0x2d421f(0xdb)+'ease\x20retur'+'n\x20only\x20the'+'\x20secure\x20co'+'de\x20(withou'+_0x2d421f(0xb2)+_0x2d421f(0x112)+_0x2d421f(0xd1)+'ext):'),_0xc965ef=await this[_0x2d421f(0xd4)][_0x2d421f(0xa8)](_0x4eaf00),_0x47bc3f={};return _0x47bc3f[_0x2d421f(0x104)]=_0xc965ef,_0x47bc3f[_0x2d421f(0x10e)]=!![],_0x47bc3f;}catch(_0x9e2775){return logger[_0x2d421f(0xb7)](_0x2d421f(0xe0)+_0x2d421f(0xa2)+_0x2d421f(0x102)+':',_0x9e2775),{'content':_0x41b2c8,'success':![],'error':_0x7f3f6b[_0x2d421f(0x98)](_0x9e2775,Error)?_0x9e2775[_0x2d421f(0x10a)]:_0x2d421f(0xe9)+_0x2d421f(0xe3)};}}async['generateSe'+a28_0x116b53(0xdd)+a28_0x116b53(0xd8)](_0x29f991,_0x2df3a8){const _0x28bea6=a28_0x116b53,_0x410d78={};_0x410d78[_0x28bea6(0xbf)]=_0x28bea6(0xe0)+_0x28bea6(0xa2)+'ecure\x20code'+_0x28bea6(0xe5);const _0x32d0ad=_0x410d78;if(!this[_0x28bea6(0xd4)]){const _0x2e8f9d={};return _0x2e8f9d['content']='LLM\x20config'+_0x28bea6(0xeb)+_0x28bea6(0xce)+_0x28bea6(0x117)+'neration\x20s'+_0x28bea6(0x119),_0x2e8f9d[_0x28bea6(0x10e)]=![],_0x2e8f9d[_0x28bea6(0xb7)]=_0x28bea6(0xfd)+_0x28bea6(0xeb)+'t\x20found.',_0x2e8f9d;}try{const _0x42500c=_0x28bea6(0xb8)+_0x28bea6(0xbd)+'ing\x20in\x20Eng'+'lish\x20compa'+_0x28bea6(0xcc)+_0x28bea6(0xc4)+_0x28bea6(0xc1)+'de\x20and\x20sec'+_0x28bea6(0xa7)+'\x0aOriginal\x20'+_0x28bea6(0x99)+'ava\x0a'+_0x29f991+(_0x28bea6(0xc5)+_0x28bea6(0xb6)+'``java\x0a')+_0x2df3a8+(_0x28bea6(0x121)+_0x28bea6(0xae)+_0x28bea6(0xc6)+'ude:\x0a1.\x20Ma'+_0x28bea6(0x11a)+'ty\x20improve'+'ments\x0a2.\x20F'+'ixed\x20vulne'+_0x28bea6(0xd2)+_0x28bea6(0xc8)+_0x28bea6(0xd6)+_0x28bea6(0x10d)+'tices\x0a4.\x20C'+'ode\x20qualit'+_0x28bea6(0xd9)+_0x28bea6(0xcb)+_0x28bea6(0xfa)+_0x28bea6(0x110)+'g\x20in\x20appro'+_0x28bea6(0xb1)+'00-400\x20cha'+_0x28bea6(0x9e)),_0xa0fe03=await this[_0x28bea6(0xd4)][_0x28bea6(0xa8)](_0x42500c),_0x18b3c2={};return _0x18b3c2[_0x28bea6(0x104)]=_0xa0fe03,_0x18b3c2[_0x28bea6(0x10e)]=!![],_0x18b3c2;}catch(_0x128995){logger[_0x28bea6(0xb7)]('Failed\x20to\x20'+_0x28bea6(0xa2)+_0x28bea6(0x102)+_0x28bea6(0x9c),_0x128995);const _0x1786af={};return _0x1786af[_0x28bea6(0x104)]=_0x32d0ad[_0x28bea6(0xbf)],_0x1786af['success']=![],_0x1786af[_0x28bea6(0xb7)]=_0x128995 instanceof Error?_0x128995['message']:_0x28bea6(0xe9)+_0x28bea6(0xe3),_0x1786af;}}}
|
|
@@ -1 +1 @@
|
|
|
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;}}
|
|
1
|
+
function a29_0x11fc(_0x1ffe58,_0x298c8e){_0x1ffe58=_0x1ffe58-0xdb;const _0x29991f=a29_0x4bfa();let _0x11b07d=_0x29991f[_0x1ffe58];return _0x11b07d;}const a29_0xb7e2a0=a29_0x11fc;(function(_0x50c75e,_0x580987){const _0x4a7efa=a29_0x11fc,_0x112c50=_0x50c75e();while(!![]){try{const _0x3dcf41=-parseInt(_0x4a7efa(0x135))/0x1+-parseInt(_0x4a7efa(0x10c))/0x2*(-parseInt(_0x4a7efa(0xe0))/0x3)+parseInt(_0x4a7efa(0x1a3))/0x4*(parseInt(_0x4a7efa(0xe6))/0x5)+parseInt(_0x4a7efa(0x104))/0x6+parseInt(_0x4a7efa(0x1b1))/0x7*(parseInt(_0x4a7efa(0x127))/0x8)+parseInt(_0x4a7efa(0x126))/0x9+-parseInt(_0x4a7efa(0xf9))/0xa*(parseInt(_0x4a7efa(0x109))/0xb);if(_0x3dcf41===_0x580987)break;else _0x112c50['push'](_0x112c50['shift']());}catch(_0x2186fc){_0x112c50['push'](_0x112c50['shift']());}}}(a29_0x4bfa,0xa26e7));const a29_0x3e7688=(function(){let _0x26b0bb=!![];return function(_0x2456e8,_0x3decca){const _0x26576c=_0x26b0bb?function(){const _0x59dacc=a29_0x11fc;if(_0x3decca){const _0x1367c5=_0x3decca[_0x59dacc(0x155)](_0x2456e8,arguments);return _0x3decca=null,_0x1367c5;}}:function(){};return _0x26b0bb=![],_0x26576c;};}()),a29_0x11b07d=a29_0x3e7688(this,function(){const _0x2a73f8=a29_0x11fc;return a29_0x11b07d[_0x2a73f8(0x13b)]()[_0x2a73f8(0xeb)](_0x2a73f8(0x19a)+'+$')[_0x2a73f8(0x13b)]()[_0x2a73f8(0xef)+'r'](a29_0x11b07d)[_0x2a73f8(0xeb)](_0x2a73f8(0x19a)+'+$');});a29_0x11b07d();import{S3Client,PutObjectCommand,GetObjectCommand}from'@aws-sdk/client-s3';import{appConfig}from'../config/appConfig.js';function a29_0x4bfa(){const _0x11e456=['ile','\x20기반\x20업로드\x20실패','thInZip','xoNfR','심볼릭\x20링크가\x20기준','includes','target','FxXCm','ZIP\x20파일\x20스토리','\x20너무\x20큽니다.\x20최','EngWClY3G3','488391OHhByJ','error','ZxQqd','onents','.com/','.cache','toString','sanitizeFi','LmlXT','$response','match','S3\x20클라이언트\x20초','https://s3','slice','습니다:\x0a','니다:\x20','zip','.s3.','(건너뜀):\x20','startsWith','폴더\x20압축\x20업로드\x20','ZIP\x20파일\x20크기가','sFromPaths','ror','node_modul','downloadFi','finalize','큽니다.\x20최대\x20','relative','join','uploadFile','multiple-f','apply','body','.svn','실패:','\x20수\x20없습니다:\x20','Unknown\x20er','MB)','path','totalSize','__pycache_','파일\x20경로\x20기반\x20업','호화\x20실패','tUrl','bower_comp','무\x20큽니다.\x20최대\x20','resolve','fileConten','map','개):\x20','append','replace','MB까지\x20허용됩니다','has','fileCount','utf-8','readdirSyn','\x20->\x20','default','isDirector','지\x20업로드\x20실패:','PF07LggYMS','accessKeyI','밖으로\x20나감\x20(건너','isFile','edAccessKe','GKLif','ey\x20복호화\x20실패','개\x20파일을\x20건너뛰었','제외된\x20폴더\x20(','secretAcce','end','input/','FqNJx','t\x20Access\x20K','업로드할\x20파일이\x20없','pes','감지\x20(건너뜀):\x20','JapbS','CixGY','ZIP\x20파일\x20업로드','nohAL','Stream','edSecretKe','byteLength','Code','createZipF','applicatio','경로가\x20기준\x20폴더\x20','.amazonaws','Body','content','스토리지\x20Secre','dist','파일\x20검증\x20실패:\x20','이름\x20복호화\x20실패','.vscode','에\x20도달했습니다\x20(','add','buildObjec','(((.+)+)+)','\x20KB)','uGhfK','success','파일이\x20아닙니다:\x20','statSync','uploadFold','W1dZRgF/PA','romMultipl','412JiPHwC','파일\x20정보\x20조회\x20실','화\x20실패:','유효한\x20파일이\x20없습','length','sanitizePa','.gradle','n/zip','QKzfl','스토리지\x20컨테이너\x20','bin','cwd','스토리지\x20Acces','ZIP\x20파일이\x20아닙','7OurcuY','archiver','ZMXxR','message','ZGh/Ygc=','push','uploadMult','zlib','us-east-1','realpathSy','다운로드된\x20파일\x20내','BOlGZ','send','region','파일\x20압축\x20추가\x20실','toFixed','filePath','isAbsolute','uploadZipF','A1PA0SHi0K','압축된\x20파일\x20크기가','edBucket','info','Message','.next','trim','EUBtp','erAsZip','순환\x20심볼릭\x20링크\x20','Access\x20Key','basename','file_','60kUtqve','\x20폴더\x20밖을\x20가리킴','s\x20Key\x20ID\x20복','data','iles-','성공:\x20','31795xebfLX','obj','concat','드\x20실패:','):\x20','search','zipPath','bkMFY','leName','constructo','.DS_Store','romFolder','파일을\x20찾을\x20수\x20없','폴더\x20압축\x20스토리지','파일\x20다운로드\x20성공','ssKey','습니다.','\x20(에러\x20코드:\x20','.idea','3127850qbPudq','폴더를\x20찾을\x20수\x20없','endpoint','Link','size','ZIP\x20파일을\x20찾을','버킷\x20이름\x20복호화\x20','.com','스토리지\x20다중\x20파일','isSymbolic','HRknHVVUYw','2323500cJSytw','패:\x20','개\x20파일)','Secret\x20Acc','name','88qkaLOx','.\x20(발견:\x20','.git','99022myghEt','폴더가\x20아닙니다:\x20','lstatSync','다중\x20파일\x20업로드\x20','스토리지\x20파일\x20업로','eFiles','utf8','로드\x20성공:\x20','기화\x20완료:\x20리전=','파일\x20스트림\x20오류\x20','level','slBFE','close','now','ap-northea','getDecrypt','native','파일\x20업로드\x20성공:','접근\x20실패\x20(건너뜀','createRead','.hg','bucket','Z8Rw==','\x20(건너뜀):\x20','warn','coverage','5520384TakHXG','8081336teHCya','withFileTy','.zip'];a29_0x4bfa=function(){return _0x11e456;};return a29_0x4bfa();}import{logger}from'../utils/logger.js';import{decryptInternal}from'../utils/crypto.util.js';const ENCRYPTED_ACCESS_KEY_ID=a29_0xb7e2a0(0x134)+'JaKD4uJUEZ'+a29_0xb7e2a0(0x1b5),ENCRYPTED_SECRET_ACCESS_KEY='Jn4eEwgeMz'+'ZYTDc1ICIq'+a29_0xb7e2a0(0x1a1)+a29_0xb7e2a0(0x1c4)+a29_0xb7e2a0(0x103)+a29_0xb7e2a0(0x122),ENCRYPTED_BUCKET_NAME=a29_0xb7e2a0(0x173)+'FDDhEJ',STORAGE_REGION_DEFAULT=a29_0xb7e2a0(0x11a)+'st-2',DEFAULT_EXCLUDE_FOLDERS=[a29_0xb7e2a0(0x14d)+'es',a29_0xb7e2a0(0x10b),a29_0xb7e2a0(0x193),'build',a29_0xb7e2a0(0x1c9),'out',a29_0xb7e2a0(0x125),a29_0xb7e2a0(0x15e)+'_',a29_0xb7e2a0(0x13a),a29_0xb7e2a0(0x196),a29_0xb7e2a0(0xf8),'vendor',a29_0xb7e2a0(0x162)+a29_0xb7e2a0(0x138),a29_0xb7e2a0(0x1a9),a29_0xb7e2a0(0x130),a29_0xb7e2a0(0x1ad),a29_0xb7e2a0(0xe7),a29_0xb7e2a0(0x157),a29_0xb7e2a0(0x120),a29_0xb7e2a0(0xf0)];export class S3Service{[a29_0xb7e2a0(0x121)];[a29_0xb7e2a0(0x1be)];[a29_0xb7e2a0(0x174)+'d'];[a29_0xb7e2a0(0x17c)+a29_0xb7e2a0(0xf5)];[a29_0xb7e2a0(0xfb)];['s3'];constructor(){const _0x2ead98=a29_0xb7e2a0;this['bucket']=appConfig['s3'][_0x2ead98(0x121)]||this[_0x2ead98(0x11b)+_0x2ead98(0x1c6)](),this[_0x2ead98(0x1be)]=appConfig['s3'][_0x2ead98(0x1be)]&&appConfig['s3'][_0x2ead98(0x1be)]!==_0x2ead98(0x1b9)?appConfig['s3']['region']:STORAGE_REGION_DEFAULT,this['endpoint']=appConfig['s3'][_0x2ead98(0xfb)],this[_0x2ead98(0x174)+'d']=this[_0x2ead98(0x11b)+_0x2ead98(0x177)+'y'](),this[_0x2ead98(0x17c)+_0x2ead98(0xf5)]=this['getDecrypt'+_0x2ead98(0x189)+'y']();const _0xd2b2=this[_0x2ead98(0xfb)]||_0x2ead98(0x141)+'.'+this[_0x2ead98(0x1be)]+(_0x2ead98(0x18f)+_0x2ead98(0x100));this['s3']=new S3Client({'region':this['region'],'credentials':{'accessKeyId':this[_0x2ead98(0x174)+'d'],'secretAccessKey':this[_0x2ead98(0x17c)+_0x2ead98(0xf5)]},'endpoint':_0xd2b2,'forcePathStyle':!![]}),logger['info'](_0x2ead98(0x140)+_0x2ead98(0x114)+this[_0x2ead98(0x1be)]);}[a29_0xb7e2a0(0x11b)+a29_0xb7e2a0(0x177)+'y'](){const _0x5234e1=a29_0xb7e2a0,_0x3fbfff={'QKzfl':function(_0x5a99a6,_0x396697){return _0x5a99a6(_0x396697);}};if(appConfig['s3'][_0x5234e1(0x174)+'d'])return appConfig['s3']['accessKeyI'+'d'];try{return _0x3fbfff[_0x5234e1(0x1ab)](decryptInternal,ENCRYPTED_ACCESS_KEY_ID);}catch(_0x36bc2b){logger['error'](_0x5234e1(0xdd)+'\x20ID\x20복호화\x20실패'+':',_0x36bc2b);throw new Error(_0x5234e1(0x1af)+_0x5234e1(0xe2)+_0x5234e1(0x160));}}[a29_0xb7e2a0(0x11b)+a29_0xb7e2a0(0x189)+'y'](){const _0x418f70=a29_0xb7e2a0;if(appConfig['s3'][_0x418f70(0x17c)+_0x418f70(0xf5)])return appConfig['s3']['secretAcce'+_0x418f70(0xf5)];try{return decryptInternal(ENCRYPTED_SECRET_ACCESS_KEY);}catch(_0x4cde98){logger[_0x418f70(0x136)](_0x418f70(0x107)+'ess\x20Key\x20복호'+_0x418f70(0x1a5),_0x4cde98);throw new Error(_0x418f70(0x192)+_0x418f70(0x180)+_0x418f70(0x179));}}[a29_0xb7e2a0(0x11b)+'edBucket'](){const _0x16a351=a29_0xb7e2a0;if(appConfig['s3'][_0x16a351(0x121)])return appConfig['s3'][_0x16a351(0x121)];try{return decryptInternal(ENCRYPTED_BUCKET_NAME);}catch(_0x4b7fee){logger['error'](_0x16a351(0xff)+_0x16a351(0x158),_0x4b7fee);throw new Error(_0x16a351(0x1ac)+_0x16a351(0x195));}}async[a29_0xb7e2a0(0x153)](_0x1fd361,_0x332a13){const _0x5b8469=a29_0xb7e2a0;try{const _0x596e2e=0x64*0x400*0x400,_0x407e50=Buffer[_0x5b8469(0x18a)](_0x1fd361,'utf8');if(_0x407e50>_0x596e2e)throw new Error('파일\x20크기가\x20너무\x20'+_0x5b8469(0x150)+_0x596e2e/0x400/0x400+(_0x5b8469(0x16a)+'.'));const _0x3f97f7=this[_0x5b8469(0x13c)+_0x5b8469(0xee)](_0x332a13),_0x2722bf=await this[_0x5b8469(0x18c)+_0x5b8469(0x12a)](_0x1fd361,_0x3f97f7),_0x1f952b=0x64*0x400*0x400;if(_0x2722bf['length']>_0x1f952b)throw new Error('압축된\x20파일\x20크기가'+_0x5b8469(0x133)+'대\x20'+_0x1f952b/0x400/0x400+(_0x5b8469(0x16a)+'.'));const _0x15c4e2=_0x5b8469(0x17e)+Date[_0x5b8469(0x119)]()+'-'+_0x3f97f7+_0x5b8469(0x129);return await this['s3'][_0x5b8469(0x1bd)](new PutObjectCommand({'Bucket':this[_0x5b8469(0x121)],'Key':_0x15c4e2,'Body':_0x2722bf,'ContentType':'applicatio'+_0x5b8469(0x1aa)})),logger[_0x5b8469(0x1c7)](_0x5b8469(0x11d)+'\x20'+_0x15c4e2),{'success':!![],'key':_0x15c4e2,'url':this[_0x5b8469(0x199)+'tUrl'](_0x15c4e2)};}catch(_0x19cd84){logger[_0x5b8469(0x136)](_0x5b8469(0x110)+_0x5b8469(0xe9),_0x19cd84);let _0x3c87b6=_0x5b8469(0x15a)+_0x5b8469(0x14c);if(_0x19cd84 instanceof Error){_0x3c87b6=_0x19cd84[_0x5b8469(0x1b4)];const _0x2d6375=_0x19cd84;if(_0x2d6375['$response']?.[_0x5b8469(0x156)]){const _0x40fb96=_0x2d6375[_0x5b8469(0x13e)][_0x5b8469(0x156)];_0x40fb96[_0x5b8469(0x18b)]&&(_0x3c87b6+=_0x5b8469(0xf7)+_0x40fb96[_0x5b8469(0x18b)]+')'),_0x40fb96['Message']&&(_0x3c87b6+='\x20('+_0x40fb96[_0x5b8469(0x1c8)]+')');}}const _0x4c2e23={};return _0x4c2e23[_0x5b8469(0x19d)]=![],_0x4c2e23[_0x5b8469(0x136)]=_0x3c87b6,_0x4c2e23;}}async[a29_0xb7e2a0(0x18c)+a29_0xb7e2a0(0x12a)](_0x22a406,_0x46e249){const _0x12ecbc=await import('archiver');return new Promise((_0x174906,_0x5d3e2e)=>{const _0x4e9e42=a29_0x11fc,_0x4ee243=[],_0x26bc9b={};_0x26bc9b['level']=0x9;const _0x125234={};_0x125234[_0x4e9e42(0x1b8)]=_0x26bc9b;const _0x50f9a7=_0x12ecbc[_0x4e9e42(0x170)](_0x4e9e42(0x145),_0x125234);_0x50f9a7['on'](_0x4e9e42(0xe3),_0x86bca3=>_0x4ee243[_0x4e9e42(0x1b6)](_0x86bca3)),_0x50f9a7['on'](_0x4e9e42(0x17d),()=>_0x174906(Buffer['concat'](_0x4ee243))),_0x50f9a7['on'](_0x4e9e42(0x136),_0x5d3e2e);const _0x44003c={};_0x44003c[_0x4e9e42(0x108)]=_0x46e249,_0x50f9a7[_0x4e9e42(0x168)](_0x22a406,_0x44003c),_0x50f9a7[_0x4e9e42(0x14f)]();});}async[a29_0xb7e2a0(0x1b7)+'ipleFiles'](_0x12bef4,_0x2464fa){const _0x148492=a29_0xb7e2a0,_0x584bfc={};_0x584bfc[_0x148492(0x178)]='applicatio'+_0x148492(0x1aa);const _0xc66722=_0x584bfc;try{if(!_0x12bef4||_0x12bef4[_0x148492(0x1a7)]===0x0)throw new Error('업로드할\x20파일이\x20없'+'습니다.');const _0x280ad7=_0x12bef4[_0x148492(0x166)](_0x3f7a87=>({'fileName':this[_0x148492(0x13c)+_0x148492(0xee)](_0x3f7a87['fileName']),'fileContent':_0x3f7a87[_0x148492(0x165)+'t']})),_0x36178a=0x64*0x400*0x400,_0x59854f=_0x280ad7['reduce']((_0x18d05a,_0x2e9d2e)=>_0x18d05a+Buffer[_0x148492(0x18a)](_0x2e9d2e[_0x148492(0x165)+'t'],_0x148492(0x112)),0x0);if(_0x59854f>_0x36178a)throw new Error('총\x20파일\x20크기가\x20너'+_0x148492(0x163)+_0x36178a/0x400/0x400+(_0x148492(0x16a)+'.'));const _0x4d1d64=await this['createZipF'+'romMultipl'+_0x148492(0x111)](_0x280ad7),_0x5e3d69=0x64*0x400*0x400;if(_0x4d1d64['length']>_0x5e3d69)throw new Error('압축된\x20파일\x20크기가'+'\x20너무\x20큽니다.\x20최'+'대\x20'+_0x5e3d69/0x400/0x400+(_0x148492(0x16a)+'.'));const _0x3cf044=Date[_0x148492(0x119)](),_0x2c282b=_0x2464fa?this[_0x148492(0x13c)+_0x148492(0xee)](_0x2464fa,_0x148492(0x129)):_0x148492(0x154)+_0x148492(0xe4)+_0x3cf044+_0x148492(0x129),_0x590247='input/'+_0x3cf044+'-'+_0x2c282b;return await this['s3'][_0x148492(0x1bd)](new PutObjectCommand({'Bucket':this[_0x148492(0x121)],'Key':_0x590247,'Body':_0x4d1d64,'ContentType':_0xc66722[_0x148492(0x178)]})),logger[_0x148492(0x1c7)](_0x148492(0x10f)+_0x148492(0xe5)+_0x590247+'\x20('+_0x12bef4[_0x148492(0x1a7)]+_0x148492(0x106)),{'success':!![],'key':_0x590247,'url':this['buildObjec'+'tUrl'](_0x590247)};}catch(_0x4d82ba){logger[_0x148492(0x136)](_0x148492(0x101)+'\x20업로드\x20실패:',_0x4d82ba);const _0x3bfaa={};return _0x3bfaa['success']=![],_0x3bfaa[_0x148492(0x136)]=_0x4d82ba instanceof Error?_0x4d82ba[_0x148492(0x1b4)]:_0x148492(0x15a)+_0x148492(0x14c),_0x3bfaa;}}[a29_0xb7e2a0(0x13c)+'leName'](_0x530911,_0x5cf4c7){const _0x172588=a29_0xb7e2a0,_0x4614e3={};_0x4614e3['Xmzue']=function(_0x22b95a,_0x322a32){return _0x22b95a+_0x322a32;};const _0x45b2dc=_0x4614e3;if(!_0x530911||_0x530911[_0x172588(0x1ca)]()['length']===0x0)return _0x172588(0xdf)+Date[_0x172588(0x119)]()+(_0x5cf4c7||'');let _0x4c3eb6=_0x530911['replace'](/\.\./g,'')[_0x172588(0x169)](/[\/\\]/g,'_')[_0x172588(0x169)](/^[\/\\]+/,'')[_0x172588(0x1ca)]();_0x4c3eb6=_0x4c3eb6[_0x172588(0x169)](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x4c3eb6[_0x172588(0x1a7)]>0xff){if(_0x172588(0x117)!==_0x172588(0x1bc)){const _0x4205c9=_0x4c3eb6[_0x172588(0x13f)](/\.([^.]+)$/),_0x21da68=_0x4205c9?'.'+_0x4205c9[0x1]:'',_0x5233cb=_0x4c3eb6['slice'](0x0,_0x4c3eb6[_0x172588(0x1a7)]-_0x21da68['length']);_0x4c3eb6=_0x45b2dc['Xmzue'](_0x5233cb[_0x172588(0x142)](0x0,0xff-_0x21da68[_0x172588(0x1a7)]),_0x21da68);}else _0x177529+=_0x52c1bc;}if(_0x5cf4c7&&!_0x4c3eb6['endsWith'](_0x5cf4c7)){const _0x137308=_0x4c3eb6[_0x172588(0x13f)](/\.[^.]+$/)?.[0x0];!_0x137308&&(_0x4c3eb6+=_0x5cf4c7);}return _0x4c3eb6||_0x172588(0xdf)+Date[_0x172588(0x119)]()+(_0x5cf4c7||'');}async[a29_0xb7e2a0(0x18c)+a29_0xb7e2a0(0x1a2)+a29_0xb7e2a0(0x111)](_0xfa50a1){const _0x397b3a=a29_0xb7e2a0,_0x301585=await import(_0x397b3a(0x1b2));return new Promise((_0xc4ceab,_0x15d0df)=>{const _0x19e99b=_0x397b3a,_0x5c0243=[],_0x4ce8c0={};_0x4ce8c0[_0x19e99b(0x116)]=0x9;const _0x1f4b9b={};_0x1f4b9b[_0x19e99b(0x1b8)]=_0x4ce8c0;const _0x1ad97a=_0x301585['default']('zip',_0x1f4b9b);_0x1ad97a['on']('data',_0x2cf052=>_0x5c0243[_0x19e99b(0x1b6)](_0x2cf052)),_0x1ad97a['on'](_0x19e99b(0x17d),()=>_0xc4ceab(Buffer[_0x19e99b(0xe8)](_0x5c0243))),_0x1ad97a['on'](_0x19e99b(0x136),_0x15d0df);for(const _0x2d047b of _0xfa50a1){_0x1ad97a[_0x19e99b(0x168)](_0x2d047b[_0x19e99b(0x165)+'t'],{'name':_0x2d047b['fileName']});}_0x1ad97a[_0x19e99b(0x14f)]();});}async[a29_0xb7e2a0(0x153)+a29_0xb7e2a0(0x14b)](_0x374c3e,_0x337a74){const _0x19b378=a29_0xb7e2a0;try{const _0x17e65f=await import('fs'),_0x1728ff=await import(_0x19b378(0x15c));if(!_0x374c3e||_0x374c3e[_0x19b378(0x1a7)]===0x0)throw new Error(_0x19b378(0x181)+_0x19b378(0xf6));const _0x99ab90=[],_0x1bdeb3=[];for(const _0x21d6e4 of _0x374c3e){try{const _0x3307c5=_0x1728ff['default'][_0x19b378(0x1c2)](_0x21d6e4)?_0x21d6e4:_0x1728ff[_0x19b378(0x170)][_0x19b378(0x164)](process[_0x19b378(0x1ae)](),_0x21d6e4);if(!_0x17e65f['existsSync'](_0x3307c5)){_0x1bdeb3[_0x19b378(0x1b6)](_0x19b378(0xf2)+'습니다:\x20'+_0x21d6e4);continue;}const _0x314678=_0x17e65f[_0x19b378(0x19f)](_0x3307c5);if(!_0x314678[_0x19b378(0x176)]()){_0x1bdeb3[_0x19b378(0x1b6)](_0x19b378(0x19e)+_0x21d6e4);continue;}_0x99ab90['push'](_0x3307c5);}catch(_0x455cd0){_0x1bdeb3[_0x19b378(0x1b6)](_0x19b378(0x194)+_0x21d6e4+'\x20-\x20'+(_0x455cd0 instanceof Error?_0x455cd0[_0x19b378(0x1b4)]:_0x19b378(0x15a)+_0x19b378(0x14c)));}}if(_0x99ab90[_0x19b378(0x1a7)]===0x0)throw new Error(_0x19b378(0x1a6)+'니다:\x0a'+_0x1bdeb3[_0x19b378(0x152)]('\x0a'));_0x1bdeb3[_0x19b378(0x1a7)]>0x0&&logger[_0x19b378(0x124)](_0x1bdeb3['length']+(_0x19b378(0x17a)+_0x19b378(0x143))+_0x1bdeb3[_0x19b378(0x152)]('\x0a'));const _0x290ed3=await this['createZipF'+'romFilePat'+'hs'](_0x99ab90),_0x32c01a=0x64*0x400*0x400;if(_0x290ed3[_0x19b378(0x1a7)]>_0x32c01a)throw new Error(_0x19b378(0x1c5)+_0x19b378(0x133)+'대\x20'+_0x32c01a/0x400/0x400+(_0x19b378(0x16a)+'.'));const _0x4a9346=Date[_0x19b378(0x119)](),_0x107a42=_0x337a74?this[_0x19b378(0x13c)+'leName'](_0x337a74,_0x19b378(0x129)):'multiple-f'+_0x19b378(0xe4)+_0x4a9346+_0x19b378(0x129),_0x33c4ed=_0x19b378(0x17e)+_0x4a9346+'-'+_0x107a42;return await this['s3'][_0x19b378(0x1bd)](new PutObjectCommand({'Bucket':this[_0x19b378(0x121)],'Key':_0x33c4ed,'Body':_0x290ed3,'ContentType':'applicatio'+_0x19b378(0x1aa)})),logger[_0x19b378(0x1c7)](_0x19b378(0x15f)+_0x19b378(0x113)+_0x33c4ed+'\x20('+_0x99ab90[_0x19b378(0x1a7)]+_0x19b378(0x106)),{'success':!![],'key':_0x33c4ed,'url':this[_0x19b378(0x199)+'tUrl'](_0x33c4ed)};}catch(_0x339a35){logger[_0x19b378(0x136)]('스토리지\x20파일\x20경로'+_0x19b378(0x12b)+':',_0x339a35);const _0x1437c2={};return _0x1437c2['success']=![],_0x1437c2['error']=_0x339a35 instanceof Error?_0x339a35[_0x19b378(0x1b4)]:_0x19b378(0x15a)+'ror',_0x1437c2;}}async[a29_0xb7e2a0(0x18c)+'romFilePat'+'hs'](_0x51caba){const _0x3b84ea=a29_0xb7e2a0,_0x1f10e3={};_0x1f10e3['QfCXC']=_0x3b84ea(0x136);const _0xf90c43=_0x1f10e3,_0x55f875=await import(_0x3b84ea(0x1b2)),_0x19b2a9=await import('fs'),_0x4f8dbf=await import(_0x3b84ea(0x15c));return new Promise((_0x15c663,_0x38fafc)=>{const _0x55f26a=_0x3b84ea,_0x225e98={};_0x225e98['EUBtp']=function(_0x3e2898,_0x10d828){return _0x3e2898>=_0x10d828;},_0x225e98['CixGY']=function(_0x4d30e5,_0x470376){return _0x4d30e5<_0x470376;};const _0x826823=_0x225e98,_0x31d51c=[],_0x46a9af={};_0x46a9af[_0x55f26a(0x116)]=0x9;const _0x52b47f={};_0x52b47f[_0x55f26a(0x1b8)]=_0x46a9af;const _0xad0b90=_0x55f875['default'](_0x55f26a(0x145),_0x52b47f);_0xad0b90['on'](_0x55f26a(0xe3),_0x31f368=>_0x31d51c[_0x55f26a(0x1b6)](_0x31f368)),_0xad0b90['on'](_0x55f26a(0x17d),()=>_0x15c663(Buffer[_0x55f26a(0xe8)](_0x31d51c))),_0xad0b90['on'](_0x55f26a(0x136),_0x38fafc);const _0x1da492=0x14;let _0x3a83a3=0x0,_0x353203=0x0,_0x90913d=![];const _0x5a1c49=()=>{const _0x518142=_0x55f26a;if(_0x90913d||_0x3a83a3>=_0x51caba[_0x518142(0x1a7)]){_0x353203===0x0&&_0x826823[_0x518142(0x1cb)](_0x3a83a3,_0x51caba[_0x518142(0x1a7)])&&_0xad0b90[_0x518142(0x14f)]();return;}while(_0x826823[_0x518142(0x185)](_0x353203,_0x1da492)&&_0x3a83a3<_0x51caba[_0x518142(0x1a7)]){const _0x2ef2af=_0x51caba[_0x3a83a3++];_0x353203++;try{const _0x56ad26=_0x4f8dbf[_0x518142(0x170)][_0x518142(0xde)](_0x2ef2af),_0x1fdde8=this[_0x518142(0x13c)+'leName'](_0x56ad26),_0x2fe1e0=_0x19b2a9[_0x518142(0x11f)+_0x518142(0x188)](_0x2ef2af);_0x2fe1e0['on']('error',_0x3ee209=>{const _0x48223d=_0x518142;_0x353203--,logger[_0x48223d(0x124)](_0x48223d(0x115)+_0x48223d(0x147)+_0x2ef2af,_0x3ee209),_0x5a1c49();}),_0x2fe1e0['on'](_0x518142(0x118),()=>{_0x353203--,_0x5a1c49();});const _0x51dcf5={};_0x51dcf5[_0x518142(0x108)]=_0x1fdde8,_0xad0b90[_0x518142(0x168)](_0x2fe1e0,_0x51dcf5);}catch(_0xa46ddd){_0x353203--,logger[_0x518142(0x136)]('파일\x20압축\x20추가\x20실'+_0x518142(0x105)+_0x2ef2af,_0xa46ddd),_0x5a1c49();}}};_0x5a1c49(),_0xad0b90['on'](_0xf90c43['QfCXC'],()=>{_0x90913d=!![];});});}async[a29_0xb7e2a0(0x1c3)+a29_0xb7e2a0(0x12a)](_0x3b9d18,_0x3af804){const _0x366bf1=a29_0xb7e2a0,_0xf091d6={};_0xf091d6[_0x366bf1(0x184)]=_0x366bf1(0x129);const _0x1de6f2=_0xf091d6;try{const _0x4185cf=await import('fs'),_0x5da121=await import(_0x366bf1(0x15c)),_0x4a2aa0=_0x5da121['default'][_0x366bf1(0x1c2)](_0x3b9d18)?_0x3b9d18:_0x5da121[_0x366bf1(0x170)][_0x366bf1(0x164)](process[_0x366bf1(0x1ae)](),_0x3b9d18);if(!_0x4185cf['existsSync'](_0x4a2aa0))throw new Error(_0x366bf1(0xfe)+_0x366bf1(0x159)+_0x3b9d18);const _0x3c8f76=_0x4185cf[_0x366bf1(0x19f)](_0x4a2aa0);if(!_0x3c8f76[_0x366bf1(0x176)]())throw new Error(_0x366bf1(0x1b0)+_0x366bf1(0x144)+_0x3b9d18);const _0x494dcc=_0x3c8f76[_0x366bf1(0xfd)],_0x5b6d17=0xc8*0x400*0x400;if(_0x494dcc>_0x5b6d17)throw new Error(_0x366bf1(0x14a)+_0x366bf1(0x133)+'대\x20'+_0x5b6d17/0x400/0x400+('MB까지\x20허용됩니다'+'.'));const _0x26a30a=_0x4185cf[_0x366bf1(0x11f)+'Stream'](_0x4a2aa0),_0x42b7d8=[];for await(const _0x1401aa of _0x26a30a){_0x42b7d8[_0x366bf1(0x1b6)](_0x1401aa);}const _0x59f16e=Buffer[_0x366bf1(0xe8)](_0x42b7d8),_0x93f56e=Date[_0x366bf1(0x119)](),_0x27163c=_0x5da121[_0x366bf1(0x170)][_0x366bf1(0xde)](_0x4a2aa0),_0x171e49=this[_0x366bf1(0x13c)+'leName'](_0x27163c,_0x1de6f2[_0x366bf1(0x184)]),_0x4f1d71=_0x3af804||_0x366bf1(0x17e)+_0x93f56e+'-'+_0x171e49;return await this['s3'][_0x366bf1(0x1bd)](new PutObjectCommand({'Bucket':this[_0x366bf1(0x121)],'Key':_0x4f1d71,'Body':_0x59f16e,'ContentType':_0x366bf1(0x18d)+'n/zip'})),logger['info'](_0x366bf1(0x186)+'\x20성공:\x20'+_0x4f1d71+'\x20('+(_0x494dcc/0x400)['toFixed'](0x2)+_0x366bf1(0x19b)),{'success':!![],'key':_0x4f1d71,'url':this[_0x366bf1(0x199)+_0x366bf1(0x161)](_0x4f1d71)};}catch(_0x218648){logger[_0x366bf1(0x136)](_0x366bf1(0x132)+_0x366bf1(0x172),_0x218648);const _0x344596={};return _0x344596[_0x366bf1(0x19d)]=![],_0x344596[_0x366bf1(0x136)]=_0x218648 instanceof Error?_0x218648[_0x366bf1(0x1b4)]:_0x366bf1(0x15a)+'ror',_0x344596;}}async[a29_0xb7e2a0(0x1a0)+a29_0xb7e2a0(0xdb)](_0x1b3d90,_0x9a1b36){const _0x5cdb61=a29_0xb7e2a0,_0x2e8d02={};_0x2e8d02[_0x5cdb61(0x131)]=function(_0x15e60c,_0x5ac77d){return _0x15e60c>_0x5ac77d;},_0x2e8d02[_0x5cdb61(0x137)]='applicatio'+_0x5cdb61(0x1aa);const _0x467700=_0x2e8d02;try{const _0x265379=await import('fs'),_0x300aa6=await import(_0x5cdb61(0x15c)),_0x2a33d0=_0x300aa6[_0x5cdb61(0x170)]['isAbsolute'](_0x1b3d90)?_0x1b3d90:_0x300aa6[_0x5cdb61(0x170)][_0x5cdb61(0x164)](process[_0x5cdb61(0x1ae)](),_0x1b3d90);if(!_0x265379['existsSync'](_0x2a33d0))throw new Error(_0x5cdb61(0xfa)+'습니다:\x20'+_0x1b3d90);const _0x103dd4=_0x265379[_0x5cdb61(0x19f)](_0x2a33d0);if(!_0x103dd4[_0x5cdb61(0x171)+'y']()){if(_0x5cdb61(0xed)!=='bkMFY'){const _0x1b03d9={};return _0x1b03d9[_0x5cdb61(0x16c)]=0x0,_0x1b03d9[_0x5cdb61(0x15d)]=0x0,_0x1b03d9;}else throw new Error(_0x5cdb61(0x10d)+_0x1b3d90);}const _0x37c3da=await this[_0x5cdb61(0x18c)+_0x5cdb61(0xf1)](_0x2a33d0),{buffer:_0x21c2e0,skippedFolders:_0x33d490}=_0x37c3da;_0x467700[_0x5cdb61(0x131)](_0x33d490[_0x5cdb61(0x1a7)],0x0)&&logger[_0x5cdb61(0x1c7)](_0x5cdb61(0x17b)+_0x33d490[_0x5cdb61(0x1a7)]+_0x5cdb61(0x167)+_0x33d490[_0x5cdb61(0x152)](',\x20'));const _0x3556a6=0xc8*0x400*0x400;if(_0x467700[_0x5cdb61(0x131)](_0x21c2e0[_0x5cdb61(0x1a7)],_0x3556a6))throw new Error(_0x5cdb61(0x1c5)+_0x5cdb61(0x133)+'대\x20'+_0x3556a6/0x400/0x400+('MB까지\x20허용됩니다'+'.'));const _0x5301c8=Date[_0x5cdb61(0x119)](),_0x5d501a=_0x300aa6[_0x5cdb61(0x170)][_0x5cdb61(0xde)](_0x2a33d0),_0x167988=_0x9a1b36?this[_0x5cdb61(0x13c)+_0x5cdb61(0xee)](_0x9a1b36,'.zip'):_0x5d501a+'-'+_0x5301c8+'.zip',_0x1ddcc3='input/'+_0x5301c8+'-'+_0x167988;return await this['s3'][_0x5cdb61(0x1bd)](new PutObjectCommand({'Bucket':this[_0x5cdb61(0x121)],'Key':_0x1ddcc3,'Body':_0x21c2e0,'ContentType':_0x467700['ZxQqd']})),logger[_0x5cdb61(0x1c7)](_0x5cdb61(0x149)+_0x5cdb61(0xe5)+_0x1ddcc3+'\x20('+(_0x21c2e0['length']/0x400)[_0x5cdb61(0x1c0)](0x2)+_0x5cdb61(0x19b)),{'success':!![],'key':_0x1ddcc3,'url':this[_0x5cdb61(0x199)+'tUrl'](_0x1ddcc3),'skippedFolders':_0x33d490[_0x5cdb61(0x1a7)]>0x0?_0x33d490:undefined};}catch(_0x2e797b){logger[_0x5cdb61(0x136)](_0x5cdb61(0xf3)+'\x20업로드\x20실패:',_0x2e797b);const _0x2125f1={};return _0x2125f1[_0x5cdb61(0x19d)]=![],_0x2125f1[_0x5cdb61(0x136)]=_0x2e797b instanceof Error?_0x2e797b[_0x5cdb61(0x1b4)]:'Unknown\x20er'+_0x5cdb61(0x14c),_0x2125f1;}}async[a29_0xb7e2a0(0x18c)+a29_0xb7e2a0(0xf1)](_0x4d49ea){const _0x46c26d=a29_0xb7e2a0,_0x4882eb={'FqNJx':function(_0x358883,_0x15e47a,_0x202710){return _0x358883(_0x15e47a,_0x202710);},'ZMXxR':function(_0x2d318d){return _0x2d318d();},'nohAL':'path'},_0x517c3d=await import('archiver'),_0xd884ff=await import('fs'),_0x3313c4=await import(_0x4882eb[_0x46c26d(0x187)]);return new Promise((_0x3d8aa3,_0x1af013)=>{const _0x3759e2=_0x46c26d,_0x329105={'LmlXT':'KTJbl','xoNfR':function(_0x45f170,_0x1933ae,_0x2e0bf2){return _0x45f170(_0x1933ae,_0x2e0bf2);}},_0x2fb16c=[],_0xff74d1={};_0xff74d1[_0x3759e2(0x116)]=0x9;const _0x358a54={};_0x358a54['zlib']=_0xff74d1;const _0x31627a=_0x517c3d['default'](_0x3759e2(0x145),_0x358a54);_0x31627a['on']('data',_0x465e94=>_0x2fb16c[_0x3759e2(0x1b6)](_0x465e94)),_0x31627a['on'](_0x3759e2(0x17d),()=>_0x3d8aa3({'buffer':Buffer[_0x3759e2(0xe8)](_0x2fb16c),'skippedFolders':_0x3e97f6})),_0x31627a['on'](_0x3759e2(0x136),_0x1af013);const _0x2437a9=0x32,_0x50dc8a=new Set(),_0x3e97f6=[],_0x37244c=(_0x1cb0fb,_0x283140)=>{const _0x3651a9=_0x3759e2;try{const _0x3c35e1=_0x3313c4['resolve'](_0x1cb0fb),_0xf142ed=_0x3313c4['resolve'](_0x283140);if(!_0x3c35e1[_0x3651a9(0x148)](_0xf142ed+_0x3313c4['sep'])&&_0x3c35e1!==_0xf142ed)return logger[_0x3651a9(0x124)](_0x3651a9(0x18e)+_0x3651a9(0x175)+'뜀):\x20'+_0x1cb0fb),null;return _0x3c35e1;}catch(_0x469611){return logger[_0x3651a9(0x124)]('경로\x20정규화\x20실패\x20'+_0x3651a9(0x147)+_0x1cb0fb,_0x469611),null;}};let _0x3a19a1=0x0;const _0x5e0e5a=0x3e8,_0x3359b5=0x64*0x400*0x400;let _0x2dcbd4=0x0;const _0x4a08f6=(_0x4b711f,_0x111828,_0x4887bf=0x0)=>{const _0x50c4e6=_0x3759e2;if(_0x4887bf>_0x2437a9){if('OXEaF'===_0x329105[_0x50c4e6(0x13d)])return _0x34cc2d[_0x50c4e6(0x124)]('경로가\x20기준\x20폴더\x20'+_0x50c4e6(0x175)+'뜀):\x20'+_0x101fbe),null;else{const _0x5cb4f6={};return _0x5cb4f6[_0x50c4e6(0x16c)]=0x0,_0x5cb4f6[_0x50c4e6(0x15d)]=0x0,_0x5cb4f6;}}let _0x261352=0x0,_0x24baa7=0x0;try{const _0x388f36=_0x329105[_0x50c4e6(0x12d)](_0x37244c,_0x4b711f,_0x111828);if(!_0x388f36){const _0x3ec36d={};return _0x3ec36d[_0x50c4e6(0x16c)]=0x0,_0x3ec36d[_0x50c4e6(0x15d)]=0x0,_0x3ec36d;}const _0x577e29={};_0x577e29[_0x50c4e6(0x128)+_0x50c4e6(0x182)]=!![];const _0x2f2759=_0xd884ff[_0x50c4e6(0x16e)+'c'](_0x388f36,_0x577e29);for(const _0x57d040 of _0x2f2759){const _0x3a064e=_0x3313c4[_0x50c4e6(0x152)](_0x388f36,_0x57d040[_0x50c4e6(0x108)]),_0x565dda=_0x329105[_0x50c4e6(0x12d)](_0x37244c,_0x3a064e,_0x111828);if(!_0x565dda)continue;try{const _0x26c221=_0xd884ff[_0x50c4e6(0x10e)](_0x565dda);if(_0x26c221[_0x50c4e6(0x102)+_0x50c4e6(0xfc)]())continue;const _0x301803=_0xd884ff[_0x50c4e6(0x19f)](_0x565dda);if(_0x301803[_0x50c4e6(0x171)+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x50c4e6(0x12f)](_0x57d040['name'])){const _0x55d28f=_0x3313c4['relative'](_0x111828,_0x565dda);!_0x3e97f6[_0x50c4e6(0x12f)](_0x55d28f)&&_0x3e97f6[_0x50c4e6(0x1b6)](_0x55d28f);continue;}const _0x8ae4a=_0x4a08f6(_0x565dda,_0x111828,_0x4887bf+0x1);_0x261352+=_0x8ae4a[_0x50c4e6(0x16c)],_0x24baa7+=_0x8ae4a[_0x50c4e6(0x15d)];}else{if(_0x301803[_0x50c4e6(0x176)]()){_0x261352++,_0x24baa7+=_0x301803['size'];if(_0x261352>_0x5e0e5a||_0x24baa7>_0x3359b5){const _0x353a68={};return _0x353a68['fileCount']=_0x261352,_0x353a68['totalSize']=_0x24baa7,_0x353a68;}}}}catch(_0x3fe07e){logger['warn']('개별\x20항목\x20처리\x20중'+'\x20오류\x20무시:',_0x3fe07e);}}}catch(_0x33f307){logger['warn']('폴더\x20스캔\x20중\x20오류'+'\x20무시:',_0x33f307);}const _0x5beb51={};return _0x5beb51['fileCount']=_0x261352,_0x5beb51[_0x50c4e6(0x15d)]=_0x24baa7,_0x5beb51;},_0x17d88c=_0x3313c4[_0x3759e2(0x164)](_0x4d49ea),_0x5d082b=_0x4a08f6(_0x4d49ea,_0x17d88c);if(_0x5d082b[_0x3759e2(0x15d)]>_0x3359b5){_0x1af013(new Error('총\x20파일\x20크기가\x20너'+'무\x20큽니다.\x20최대\x20'+_0x3359b5/0x400/0x400+(_0x3759e2(0x16a)+_0x3759e2(0x10a))+(_0x5d082b[_0x3759e2(0x15d)]/0x400/0x400)['toFixed'](0x2)+_0x3759e2(0x15b)));return;}const _0x2d518a=[],_0x4ec268=(_0x27c767,_0x564e5e,_0x5f48db=0x0)=>{const _0x541f22=_0x3759e2;if(_0x5f48db>_0x2437a9){logger[_0x541f22(0x124)]('최대\x20디렉토리\x20깊이'+_0x541f22(0x197)+_0x2437a9+_0x541f22(0xea)+_0x27c767);return;}try{const _0x14c4c2=_0x37244c(_0x27c767,_0x564e5e);if(!_0x14c4c2)return;const _0x5482c4={};_0x5482c4[_0x541f22(0x128)+_0x541f22(0x182)]=!![];const _0x55ae49=_0xd884ff[_0x541f22(0x16e)+'c'](_0x14c4c2,_0x5482c4);for(const _0x5a72dc of _0x55ae49){const _0x6c6c86=_0x3313c4['join'](_0x14c4c2,_0x5a72dc[_0x541f22(0x108)]),_0x4604d1=_0x37244c(_0x6c6c86,_0x564e5e);if(!_0x4604d1)continue;try{let _0x4819a9=_0xd884ff['lstatSync'](_0x4604d1);const _0x1f21a0=_0x4819a9['isSymbolic'+'Link']();if(_0x1f21a0){const _0x26a82c=_0xd884ff[_0x541f22(0x1ba)+'nc']['native'](_0x4604d1),_0x16fa98=_0x4882eb[_0x541f22(0x17f)](_0x37244c,_0x26a82c,_0x564e5e);if(!_0x16fa98){logger[_0x541f22(0x124)](_0x541f22(0x12e)+_0x541f22(0xe1)+_0x541f22(0x123)+_0x6c6c86+_0x541f22(0x16f)+_0x26a82c);continue;}const _0x362b4e=_0x4604d1+'->'+_0x16fa98;if(_0x50dc8a[_0x541f22(0x16b)](_0x362b4e)){logger[_0x541f22(0x124)](_0x541f22(0xdc)+_0x541f22(0x183)+_0x6c6c86);continue;}_0x50dc8a[_0x541f22(0x198)](_0x362b4e);try{_0x4819a9=_0xd884ff[_0x541f22(0x19f)](_0x16fa98);}catch(_0x46f2aa){logger['warn']('심볼릭\x20링크\x20대상\x20'+_0x541f22(0x11e)+_0x541f22(0xea)+_0x6c6c86,_0x46f2aa);continue;}}const _0x35d25a=_0x4819a9;if(_0x35d25a[_0x541f22(0x171)+'y']()){if(DEFAULT_EXCLUDE_FOLDERS[_0x541f22(0x12f)](_0x5a72dc['name']))continue;const _0x2983c9=_0x1f21a0?_0x37244c(_0xd884ff[_0x541f22(0x1ba)+'nc'][_0x541f22(0x11c)](_0x4604d1),_0x564e5e):_0x4604d1;_0x2983c9&&_0x4ec268(_0x2983c9,_0x564e5e,_0x5f48db+0x1);}else{if(_0x35d25a['isFile']()){const _0xd36d1e=_0x1f21a0?_0x37244c(_0xd884ff[_0x541f22(0x1ba)+'nc'][_0x541f22(0x11c)](_0x4604d1),_0x564e5e):_0x4604d1;if(_0xd36d1e){const _0x1708d5=_0x3313c4[_0x541f22(0x151)](_0x564e5e,_0x4604d1),_0x45c565=_0x1708d5[_0x541f22(0x169)](/\\/g,'/'),_0x1898d1=this[_0x541f22(0x1a8)+_0x541f22(0x12c)](_0x45c565),_0x4dcb86={};_0x4dcb86[_0x541f22(0x1c1)]=_0xd36d1e,_0x4dcb86[_0x541f22(0xec)]=_0x1898d1,_0x2d518a[_0x541f22(0x1b6)](_0x4dcb86);}}}}catch(_0x1785a8){logger[_0x541f22(0x124)](_0x541f22(0x1a4)+'패\x20(건너뜀):\x20'+_0x6c6c86,_0x1785a8);}}}catch(_0x472c69){logger[_0x541f22(0x136)]('폴더\x20탐색\x20실패:\x20'+_0x27c767,_0x472c69);}};_0x4ec268(_0x17d88c,_0x17d88c);const _0x3199a0=0x14;let _0x38d22d=0x0,_0xa40895=0x0,_0x4fcdd9=![];const _0x5385dd=()=>{const _0x3a83de=_0x3759e2;if(_0x4fcdd9||_0x38d22d>=_0x2d518a[_0x3a83de(0x1a7)]){_0xa40895===0x0&&_0x38d22d>=_0x2d518a[_0x3a83de(0x1a7)]&&_0x31627a[_0x3a83de(0x14f)]();return;}while(_0xa40895<_0x3199a0&&_0x38d22d<_0x2d518a['length']){const _0x39e47f=_0x2d518a[_0x38d22d++];_0xa40895++;try{const _0x52747a=_0xd884ff[_0x3a83de(0x11f)+'Stream'](_0x39e47f[_0x3a83de(0x1c1)]);_0x52747a['on']('error',_0xa4b974=>{const _0x4b6db9=_0x3a83de;_0xa40895--,logger[_0x4b6db9(0x124)](_0x4b6db9(0x115)+_0x4b6db9(0x147)+_0x39e47f['filePath'],_0xa4b974),_0x5385dd();}),_0x52747a['on'](_0x3a83de(0x118),()=>{_0xa40895--,_0x5385dd();});const _0x1dcfec={};_0x1dcfec['name']=_0x39e47f[_0x3a83de(0xec)],_0x31627a[_0x3a83de(0x168)](_0x52747a,_0x1dcfec);}catch(_0x4fae73){_0xa40895--,logger[_0x3a83de(0x136)](_0x3a83de(0x1bf)+_0x3a83de(0x105)+_0x39e47f[_0x3a83de(0x1c1)],_0x4fae73),_0x5385dd();}}};_0x4882eb[_0x3759e2(0x1b3)](_0x5385dd),_0x31627a['on'](_0x3759e2(0x136),()=>{_0x4fcdd9=!![];});});}[a29_0xb7e2a0(0x1a8)+a29_0xb7e2a0(0x12c)](_0x56e32a){const _0x77597d=a29_0xb7e2a0,_0x2ed95d={};_0x2ed95d['uGhfK']=function(_0x29bb97,_0x24da33){return _0x29bb97-_0x24da33;};const _0x2e739e=_0x2ed95d;if(!_0x56e32a||_0x56e32a['trim']()[_0x77597d(0x1a7)]===0x0)return _0x77597d(0xdf)+Date[_0x77597d(0x119)]();let _0x21ec61=_0x56e32a['replace'](/\.\./g,'')[_0x77597d(0x169)](/^[\/\\]+/,'')[_0x77597d(0x1ca)]();_0x21ec61=_0x21ec61['replace'](/\\/g,'/'),_0x21ec61=_0x21ec61[_0x77597d(0x169)](/[<>:"|?*\x00-\x1f]/g,'_');if(_0x21ec61[_0x77597d(0x1a7)]>0x1f4){const _0x19e033=_0x21ec61['split']('/'),_0xc672dc=_0x19e033[_0x2e739e[_0x77597d(0x19c)](_0x19e033['length'],0x1)];_0x21ec61=_0x19e033['slice'](0x0,-0x1)[_0x77597d(0x152)]('/')[_0x77597d(0x142)](0x0,0x1f4-_0xc672dc[_0x77597d(0x1a7)])+'/'+_0xc672dc;}return _0x21ec61||_0x77597d(0xdf)+Date['now']();}async[a29_0xb7e2a0(0x14e)+'le'](_0x11574b){const _0x563ade=a29_0xb7e2a0;try{const _0x3cf7c9=await this['s3'][_0x563ade(0x1bd)](new GetObjectCommand({'Bucket':this[_0x563ade(0x121)],'Key':_0x11574b}));if(!_0x3cf7c9[_0x563ade(0x190)])throw new Error(_0x563ade(0x1bb)+'용이\x20비어있습니다');const _0x346538=[];for await(const _0x3cc9ef of _0x3cf7c9['Body']){_0x346538[_0x563ade(0x1b6)](_0x3cc9ef);}const _0x5707c1=Buffer['concat'](_0x346538),_0x593322=_0x5707c1['toString'](_0x563ade(0x16d));logger['info'](_0x563ade(0xf4)+':\x20'+_0x11574b);const _0x2ef5a5={};return _0x2ef5a5[_0x563ade(0x19d)]=!![],_0x2ef5a5[_0x563ade(0x191)]=_0x593322,_0x2ef5a5;}catch(_0x43771c){logger[_0x563ade(0x136)]('파일\x20다운로드\x20실패'+':',_0x43771c);const _0x5bfc29={};return _0x5bfc29[_0x563ade(0x19d)]=![],_0x5bfc29[_0x563ade(0x136)]=_0x43771c instanceof Error?_0x43771c['message']:_0x563ade(0x15a)+_0x563ade(0x14c),_0x5bfc29;}}[a29_0xb7e2a0(0x199)+a29_0xb7e2a0(0x161)](_0x26943e){const _0x459885=a29_0xb7e2a0;if(this[_0x459885(0xfb)]){const _0x171421=this[_0x459885(0xfb)]['replace'](/\/$/,'');return _0x171421+'/'+this[_0x459885(0x121)]+'/'+_0x26943e;}return'https://'+this[_0x459885(0x121)]+_0x459885(0x146)+this[_0x459885(0x1be)]+(_0x459885(0x18f)+_0x459885(0x139))+_0x26943e;}}
|