@oppo-minigame/cli
Version:
Command line interface for rapid OPPO minigame development
1 lines • 1.2 kB
JavaScript
const path=require("path"),fs=require("fs-extra"),{copySignFile:copySignFile,createMainifestJson:createMainifestJson,getSuggestPackNameJson:getSuggestPackNameJson,prePackWorker:prePackWorker,execInstallRpkProcess:execInstallRpkProcess}=require("../utils"),{signDir:signDir,checkPluginConf:checkPluginConf,generateProvider:generateProvider,generatePluginsMainRPK:generatePluginsMainRPK}=require("../pack"),CONFIG=require("../config/config");async function generate(e,n=!0){let i=e.pub_dir||process.cwd(),r=path.resolve(path.resolve(__dirname,"../"),"../"),t=path.join(r,"tpl");const o=prePackWorker(e.worker,i);let a=copySignFile(i,r,CONFIG,n),s=createMainifestJson(t,i,i,getSuggestPackNameJson("",i),"portrait",o),c=path.join(i,CONFIG.DEST_DIR);fs.emptyDirSync(c);let g="";if(checkPluginConf(s.option)){generateProvider(i,s.option),await signDir(null,i,c,s.option,a,n),await generatePluginsMainRPK(i,c,s.option,a,n);const r=path.join(c,CONFIG.TMP_RPKS),t=path.join(i,CONFIG.MAIN_PLUGIN_NAME);g=await signDir(null,r,c,s.option,a,n,e.qrcode),fs.removeSync(r),fs.removeSync(t)}else g=await signDir(null,i,c,s.option,a,n,e.qrcode);e.autoInstall&&await execInstallRpkProcess(g)}module.exports=generate;