@picoxr/web-cli-core
Version:
Core Library to generate, build and sign TWA projects
1 lines • 13.8 kB
JavaScript
;function _0x7e48(){const _0x3b033e=['host','protocol','reverse','unzipFile','close','pathname','reduce','spawn','abstract','extends','removeDictionary','sizes','replace','7729317OCFCQo','finally','try','execInteractive','this','push','includes','\x20with\x20args\x20','validateVersionName','untar','\x5c\x5c\x5c$&','generateRandomString','strictfp','\x5c$1','match','execute','com.picoxr.webapp','executeFile','0x0','tar','2290wpNxtQ','any','length','purpose','isSameOrigin','random','floor','final','3967840YNgkuc','double','break','portrait-secondary','instanceof','charAt','\x20is\x20a\x20Java\x20keyword\x20and\x20cannot\x20be\x20used','4776uyGIon','isImageBuffer','execFile','long','__esModule','generateManifestId','Invalid\x20appVersionName:\x20\x22','660QFdsbr','assert','continue','void','map','Executing\x20shell:\x20','13489kPiKsi','enum','106LCuuvQ','return','escapeGradleString','interface','unlinkSync','inherit','debug','validateNotEmpty','exec','join','origin','synchronized','isFile','while','2123926YegAqE','landscape','\x5c\x5c\x22','\x20to\x20','ActivityInfo.SCREEN_ORIENTATION_USER_LANDSCAPE','21PhmvLh','transient','rmdir','findSuitableIcon','port','ActivityInfo.SCREEN_ORIENTATION_PORTRAIT','\x20cannot\x20be\x20empty','super','findSixToFiveIcon','float','promisify','145030DnaLQY','child_process','defineProperty','split','landscape-secondary','test','path','max','href','string','ActivityInfo.SCREEN_ORIENTATION_USER_PORTRAIT','trim','catch','volatile','generatePackageId','switch','generateAccessStartURL','image','native','boolean','protected','280664hBmWyT','class','case','log','short','ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789','portrait','ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT','toAndroidScreenOrientation','portrait-primary','for','escapeJsonString','default','size','escapeDoubleQuotedShellString','ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED','existsSync','ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE','ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE','package','import','appVersionName','landspace-primary','promises','as\x20a\x20package\x20section.\x20Consider\x20adding\x20an\x20\x22_\x22\x20before\x20the\x20section\x20name.','implements','throw'];_0x7e48=function(){return _0x3b033e;};return _0x7e48();}const _0x2b7850=_0x5110;(function(_0x29c390,_0x418710){const _0x2929c9=_0x5110,_0x14ef60=_0x29c390();while(!![]){try{const _0x49281e=parseInt(_0x2929c9(0xf0))/0x1*(parseInt(_0x2929c9(0x65))/0x2)+-parseInt(_0x2929c9(0x78))/0x3*(-parseInt(_0x2929c9(0x98))/0x4)+parseInt(_0x2929c9(0xd4))/0x5*(parseInt(_0x2929c9(0xe3))/0x6)+parseInt(_0x2929c9(0x73))/0x7+parseInt(_0x2929c9(0xdc))/0x8+-parseInt(_0x2929c9(0xc0))/0x9+parseInt(_0x2929c9(0x83))/0xa*(-parseInt(_0x2929c9(0xea))/0xb);if(_0x49281e===_0x418710)break;else _0x14ef60['push'](_0x14ef60['shift']());}catch(_0x3b9ea1){_0x14ef60['push'](_0x14ef60['shift']());}}}(_0x7e48,0x9c81c));Object[_0x2b7850(0x85)](exports,_0x2b7850(0xe7),{'value':!![]}),exports[_0x2b7850(0xe4)]=exports['isBase64']=exports[_0x2b7850(0xbd)]=exports[_0x2b7850(0xcb)]=exports[_0x2b7850(0xc8)]=exports[_0x2b7850(0xa6)]=exports['toAndroidScreenOrientation']=exports[_0x2b7850(0xa3)]=exports[_0x2b7850(0x7a)]=exports[_0x2b7850(0x67)]=exports[_0x2b7850(0x6c)]=exports[_0x2b7850(0x91)]=exports[_0x2b7850(0xe8)]=exports[_0x2b7850(0xd8)]=exports[_0x2b7850(0x93)]=exports[_0x2b7850(0x80)]=exports[_0x2b7850(0x7b)]=exports[_0x2b7850(0xc9)]=exports[_0x2b7850(0xb6)]=exports[_0x2b7850(0xcf)]=exports[_0x2b7850(0xc3)]=exports[_0x2b7850(0xd1)]=void 0x0;const fs=require('fs'),path_1=require(_0x2b7850(0x89)),util_1=require('util'),tar_1=require(_0x2b7850(0xd3)),child_process_1=require(_0x2b7850(0x84)),extractZip=require('extract-zip'),PACKAGE_ID_PREFIX=_0x2b7850(0xd0),execPromise=(0x0,util_1[_0x2b7850(0x82)])(child_process_1[_0x2b7850(0x6d)]),execFilePromise=(0x0,util_1[_0x2b7850(0x82)])(child_process_1[_0x2b7850(0xe5)]),extractZipPromise=(0x0,util_1[_0x2b7850(0x82)])(extractZip),DISALLOWED_ANDROID_PACKAGE_CHARS_REGEX=/[^a-zA-Z0-9_\.]/g,VALID_PACKAGE_ID_SEGMENT_REGEX=/^[a-zA-Z][A-Za-z0-9_]*$/,VALID_VERSION_NAME_REGEX=/^[A-Za-z0-9_.]*$/,VALID_URL_REGEX=/http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/,JAVA_KEYWORDS=[_0x2b7850(0xbb),_0x2b7850(0xeb),_0x2b7850(0x96),_0x2b7850(0xde),'byte',_0x2b7850(0x9a),_0x2b7850(0x8f),'char',_0x2b7850(0x99),'const',_0x2b7850(0xec),_0x2b7850(0xa4),'do',_0x2b7850(0xdd),'else',_0x2b7850(0x64),_0x2b7850(0xbc),_0x2b7850(0xdb),_0x2b7850(0xc1),_0x2b7850(0x81),_0x2b7850(0xa2),'goto','if',_0x2b7850(0xb1),_0x2b7850(0xac),_0x2b7850(0xe0),'int',_0x2b7850(0x68),_0x2b7850(0xe6),_0x2b7850(0x95),'new',_0x2b7850(0xab),'private',_0x2b7850(0x97),'public',_0x2b7850(0x66),_0x2b7850(0x9c),'static',_0x2b7850(0xcc),_0x2b7850(0x7f),_0x2b7850(0x92),_0x2b7850(0x70),_0x2b7850(0xc4),_0x2b7850(0xb2),'throws',_0x2b7850(0x79),_0x2b7850(0xc2),_0x2b7850(0xed),_0x2b7850(0x90),_0x2b7850(0x72)];async function executeFile(_0x532e0e,_0x41d140,_0x450103,_0x1866b7,_0x3a5fa5){const _0xd6c88=_0x2b7850;return _0x1866b7&&_0x1866b7[_0xd6c88(0x6b)]('Executing\x20command\x20'+_0x532e0e+_0xd6c88(0xc7)+_0x41d140),execFilePromise(_0x532e0e,_0x41d140,{'env':_0x450103,'cwd':_0x3a5fa5});}exports[_0x2b7850(0xd1)]=executeFile;function execInteractive(_0x58553d,_0x1d18b8,_0x5886e6){const _0x5f09a4=_0x2b7850,_0x25dd7e=(0x0,child_process_1[_0x5f09a4(0xba)])('\x22'+_0x58553d+'\x22',_0x1d18b8,{'stdio':_0x5f09a4(0x6a),'env':_0x5886e6,'shell':!![]});return new Promise((_0x277c0f,_0x5389ad)=>{const _0x5777a0=_0x5f09a4;_0x25dd7e['on'](_0x5777a0(0xb7),_0x974ce8=>{_0x974ce8===0x0?_0x277c0f(_0x974ce8):_0x5389ad(_0x974ce8);});});}exports['execInteractive']=execInteractive;async function execute(_0x58d14e,_0x308a83,_0x30af9c){const _0x3298ed=_0x2b7850,_0x40adae=_0x58d14e['join']('\x20');return _0x30af9c&&_0x30af9c[_0x3298ed(0x6b)](_0x3298ed(0xef)+_0x40adae),await execPromise(_0x40adae,{'env':_0x308a83});}exports[_0x2b7850(0xcf)]=execute;async function unzipFile(_0x52631f,_0x5a2b6f,_0x2ff217=![]){const _0x405ef6=_0x2b7850;await extractZipPromise(_0x52631f,{'dir':_0x5a2b6f}),_0x2ff217&&fs[_0x405ef6(0x69)](_0x52631f);}exports[_0x2b7850(0xb6)]=unzipFile;async function untar(_0x3bc2db,_0x207a2c,_0x583105=![]){const _0x5ccbec=_0x2b7850;console[_0x5ccbec(0x9b)]('Extracting\x20'+_0x3bc2db+_0x5ccbec(0x76)+_0x207a2c),await(0x0,tar_1['x'])({'file':_0x3bc2db,'cwd':_0x207a2c,'unlink':!![]}),_0x583105&&fs[_0x5ccbec(0x69)](_0x3bc2db);}exports[_0x2b7850(0xc9)]=untar;function findSuitableIcon(_0x300dc0,_0x29a528,_0x28dc93=0x0){const _0x1d30d6=_0x2b7850;if(_0x300dc0==undefined||_0x300dc0[_0x1d30d6(0xd6)]===0x0)return null;let _0x5e0670=null,_0x30dc8b=0x0;for(const _0xb09088 of _0x300dc0){const _0x3c1957=(_0xb09088[_0x1d30d6(0xbe)]||_0x1d30d6(0xd2))['split']('\x20')[_0x1d30d6(0xee)](_0x65b4f4=>Number['parseInt'](_0x65b4f4,0xa))[_0x1d30d6(0xb9)]((_0x315cd3,_0x56368e)=>Math[_0x1d30d6(0x8a)](_0x315cd3,_0x56368e),0x0),_0x1cce71=new Set((_0xb09088[_0x1d30d6(0xd7)]||_0x1d30d6(0xd5))['split']('\x20'));_0x1cce71['has'](_0x29a528)&&(!_0x5e0670||_0x30dc8b<_0x3c1957)&&(_0x5e0670=_0xb09088,_0x30dc8b=_0x3c1957);}if(_0x5e0670===null||_0x28dc93>0x0&&_0x30dc8b<_0x28dc93)return null;return _0x5e0670[_0x1d30d6(0xa5)]=_0x30dc8b,_0x5e0670;}exports[_0x2b7850(0x7b)]=findSuitableIcon;function findSixToFiveIcon(_0xc51c51,_0x92a2e4=0x0){const _0x4c59f5=_0x2b7850;if(_0xc51c51==undefined||_0xc51c51[_0x4c59f5(0xd6)]===0x0)return null;let _0x54dbfe=null,_0x12e9b1=0x0;for(const _0x2040d0 of _0xc51c51){const _0x59d440=(_0x2040d0[_0x4c59f5(0xbe)]||_0x4c59f5(0xd2))[_0x4c59f5(0x86)]('\x20')[_0x4c59f5(0xee)](_0x184621=>_0x184621[_0x4c59f5(0x86)]('x')[_0x4c59f5(0xee)](_0x114d19=>parseInt(_0x114d19,0xa)))[_0x4c59f5(0xb9)]((_0x11cc15,_0x20df9b)=>{const _0x2246b0=_0x4c59f5;if(Math['abs'](_0x20df9b[0x0]/_0x20df9b[0x1]-0x6/0x5)<=0.05)return Math[_0x2246b0(0x8a)](_0x11cc15,Math[_0x2246b0(0x8a)](_0x20df9b[0x0],_0x20df9b[0x1]));;return 0x0;},0x0);if(_0x59d440===0x0)continue;(!_0x54dbfe||_0x12e9b1<_0x59d440)&&(_0x54dbfe=_0x2040d0,_0x12e9b1=_0x59d440);}if(_0x54dbfe===null||_0x92a2e4>0x0&&_0x12e9b1<_0x92a2e4)return null;return _0x54dbfe['size']=_0x12e9b1,_0x54dbfe;}exports['findSixToFiveIcon']=findSixToFiveIcon;function generateAccessStartURL(_0x3ec6ef,_0x42d8fd){const _0x51fc35=new URL(_0x42d8fd,_0x3ec6ef);return _0x51fc35['href'];}exports[_0x2b7850(0x93)]=generateAccessStartURL;function isSameOrigin(_0x7faf92,_0x1051c8){const _0x296114=_0x2b7850,_0x12805e=new URL(_0x7faf92),_0x3c8910=new URL(_0x1051c8);return _0x12805e[_0x296114(0xb4)]===_0x3c8910[_0x296114(0xb4)]&&_0x12805e['hostname']===_0x3c8910['hostname']&&_0x12805e[_0x296114(0x7c)]===_0x3c8910[_0x296114(0x7c)];}exports[_0x2b7850(0xd8)]=isSameOrigin;function generateManifestId(_0x287e01,_0x401d15,_0x1f2871){const _0x165492=_0x2b7850,_0x176369=generateAccessStartURL(_0x1f2871,_0x401d15);let _0x1e5d01=_0x176369,_0x4f2dee;if(typeof _0x287e01===_0x165492(0x8c)&&_0x287e01[_0x165492(0x8e)]()!==''){const _0x3d7feb=new URL(_0x176369);try{_0x4f2dee=new URL(_0x287e01,_0x3d7feb[_0x165492(0x6f)]);}catch(_0x36298d){return _0x1e5d01;}new RegExp(VALID_URL_REGEX)[_0x165492(0x88)](_0x4f2dee[_0x165492(0x8b)])&&isSameOrigin(_0x4f2dee['href'],_0x176369)&&(_0x1e5d01=_0x4f2dee[_0x165492(0x8b)]);}return _0x1e5d01;}exports[_0x2b7850(0xe8)]=generateManifestId;function _0x5110(_0x3bb8f1,_0x4cb004){const _0x7e48fe=_0x7e48();return _0x5110=function(_0x511047,_0x43a237){_0x511047=_0x511047-0x64;let _0x3d7481=_0x7e48fe[_0x511047];return _0x3d7481;},_0x5110(_0x3bb8f1,_0x4cb004);}function generatePackageId(_0x18df17,_0x352b00,_0x1b6c66){const _0x4f0440=_0x2b7850,_0x4f1356=generateManifestId(_0x18df17,_0x352b00,_0x1b6c66),_0x6ac0ad=new URL(_0x4f1356),_0x1383e7=_0x6ac0ad[_0x4f0440(0xb3)][_0x4f0440(0x8e)](),_0x3775b0=decodeURIComponent(_0x6ac0ad[_0x4f0440(0xb8)]);if(_0x1383e7['length']===0x0)return null;const _0x50f30f=_0x1383e7['split']('.')[_0x4f0440(0xb5)](),_0x5f4682=[];for(const _0x23dc3f of _0x50f30f){if(_0x23dc3f[_0x4f0440(0x8e)]()[_0x4f0440(0xd6)]===0x0)continue;if(JAVA_KEYWORDS[_0x4f0440(0xc6)](_0x23dc3f)){_0x5f4682[_0x4f0440(0xc5)]('_'+_0x23dc3f);continue;}_0x5f4682[_0x4f0440(0xc5)](_0x23dc3f);}if(_0x5f4682[_0x4f0440(0xd6)]===0x0)return null;const _0x460f87=_0x3775b0[_0x4f0440(0x86)]('/')['filter'](_0xd8371=>!!_0xd8371);if(_0x460f87[_0x4f0440(0xd6)]>0x0){const _0x3a1370=_0x460f87[_0x4f0440(0x6e)]('_');_0x5f4682['push'](_0x3a1370);}return(PACKAGE_ID_PREFIX+'.'+_0x5f4682['join']('_'))[_0x4f0440(0xbf)](DISALLOWED_ANDROID_PACKAGE_CHARS_REGEX,'_')['substring'](0x0,0xff);}exports[_0x2b7850(0x91)]=generatePackageId;function validateNotEmpty(_0x21cd24,_0x5f3aad){const _0x38e2ac=_0x2b7850;if(_0x21cd24===null||_0x21cd24===undefined||_0x21cd24[_0x38e2ac(0x8e)]()['length']<=0x0)return _0x5f3aad+_0x38e2ac(0x7e);return null;}exports['validateNotEmpty']=validateNotEmpty;function escapeGradleString(_0x1433ad){const _0x2148e2=_0x2b7850;return _0x1433ad[_0x2148e2(0xbf)](/[\\']/g,_0x2148e2(0xca));}exports[_0x2b7850(0x67)]=escapeGradleString;async function rmdir(_0x42d5e1){const _0x459e36=_0x2b7850;if(!fs['existsSync'](_0x42d5e1))return;const _0x5788bb=await fs['promises']['stat'](_0x42d5e1);if(_0x5788bb[_0x459e36(0x71)]()){await fs[_0x459e36(0xaf)]['unlink'](_0x42d5e1);return;}const _0x1cf02a=fs['readdirSync'](_0x42d5e1);await Promise['all'](_0x1cf02a[_0x459e36(0xee)](_0x3ddd38=>rmdir((0x0,path_1[_0x459e36(0x6e)])(_0x42d5e1,_0x3ddd38)))),await fs[_0x459e36(0xaf)][_0x459e36(0x7a)](_0x42d5e1);}exports[_0x2b7850(0x7a)]=rmdir;;function escapeJsonString(_0x36edfa){const _0x180de5=_0x2b7850,_0x3be6e3=new RegExp('\x22','g');return _0x36edfa['replace'](_0x3be6e3,_0x180de5(0x75));}exports[_0x2b7850(0xa3)]=escapeJsonString;function toAndroidScreenOrientation(_0x3f947a){const _0x57144a=_0x2b7850;switch(_0x3f947a){case _0x57144a(0x9e):return _0x57144a(0x8d);case _0x57144a(0xa1):return _0x57144a(0x7d);case _0x57144a(0xdf):return _0x57144a(0x9f);case _0x57144a(0x74):return _0x57144a(0xa9);case _0x57144a(0xae):return _0x57144a(0x77);case _0x57144a(0x87):return _0x57144a(0xaa);default:return _0x57144a(0xa7);}}exports[_0x2b7850(0xa0)]=toAndroidScreenOrientation;function escapeDoubleQuotedShellString(_0x48fa38){const _0x33830f=_0x2b7850;return _0x48fa38[_0x33830f(0xbf)](/([\$"`\\])/g,_0x33830f(0xcd));}exports[_0x2b7850(0xa6)]=escapeDoubleQuotedShellString;function validateVersionName(_0x23bd53){const _0x4c123c=_0x2b7850,_0x5cc434=validateNotEmpty(_0x23bd53,_0x4c123c(0xad));if(_0x5cc434!==null)return _0x5cc434;if(JAVA_KEYWORDS[_0x4c123c(0xc6)](_0x23bd53))return _0x4c123c(0xe9)+_0x23bd53+'\x22.\x20'+_0x23bd53+_0x4c123c(0xe2)+_0x4c123c(0xb0);if(_0x23bd53[_0x4c123c(0xce)](VALID_VERSION_NAME_REGEX)===null)return _0x4c123c(0xe9)+_0x23bd53+'\x22.\x20Only\x20alphanumeric\x20characters\x20and\x20'+'underscore\x20[a-zA-Z0-9_]\x20are\x20allowed\x20in\x20packageId\x20sections.';return null;}exports[_0x2b7850(0xc8)]=validateVersionName;function generateRandomString(_0x3bd293){const _0x5a3562=_0x2b7850;let _0x22de1a='';const _0x348734=_0x5a3562(0x9d),_0xbb0c86=_0x348734[_0x5a3562(0xd6)];for(let _0x288d14=0x0;_0x288d14<_0x3bd293;_0x288d14++){_0x22de1a+=_0x348734[_0x5a3562(0xe1)](Math[_0x5a3562(0xda)](Math[_0x5a3562(0xd9)]()*_0xbb0c86));}return _0x22de1a;}exports[_0x2b7850(0xcb)]=generateRandomString;async function removeDictionary(_0x287438){const _0x2bcab7=_0x2b7850;if(!fs[_0x2bcab7(0xa8)](_0x287438))return;await rmdir(_0x287438);}exports['removeDictionary']=removeDictionary;function isBase64(_0x1de30b){const _0x2c5def=/^data:[^;]+;base64,/i;return _0x2c5def['test'](_0x1de30b);}exports['isBase64']=isBase64;function isImageBuffer(_0x32d9ac){const _0x2de9a1=_0x2b7850;return Buffer['isBuffer'](_0x32d9ac)&&_0x32d9ac[_0x2de9a1(0xc6)](_0x2de9a1(0x94));}exports[_0x2b7850(0xe4)]=isImageBuffer;