-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.min.js
1 lines (1 loc) · 2.71 KB
/
index.min.js
1
"use strict";var execSync=require("child_process").execSync;var fs=require("fs");var path=require("path");var os=require("os");var cacheData=require("./cacheData");var dateFormat=function t(e,r){var n=void 0;var c={"Y+":r.getFullYear().toString(),"m+":(r.getMonth()+1).toString(),"d+":r.getDate().toString(),"H+":r.getHours().toString(),"M+":r.getMinutes().toString(),"S+":r.getSeconds().toString()};for(var a in c){n=new RegExp("("+a+")").exec(e);if(n){e=e.replace(n[1],n[1].length===1?c[a]:c[a].padStart(n[1].length,"0"))}}return e};var BranchPlugin=function t(e){e=e||{};this.options=e};BranchPlugin.prototype.apply=function(b){var q=this;b.hooks.afterEmit.tap("branch-plugin",function(){var t="\n",e="\n",r="\n",n="\n",c="\n",a="\n",i="";try{e=process.env["npm_lifecycle_script"].toString().trim()}catch(t){}try{t=execSync("git rev-parse --abbrev-ref HEAD")}catch(t){}try{i=execSync("git config --file .gitmodules --get-regexp '^submodule..*.branch$'");if(i){i="子模块分支:"+i}}catch(t){}try{r=execSync("git config user.name")}catch(t){}try{n=execSync("git config user.email")}catch(t){}try{c=dateFormat("YYYY-mm-dd HH:MM:SS",new Date)}catch(t){}a="资源包提供者:"+r+"执行脚本:"+e+"\n邮箱:"+n+"生成日期:"+c+"\n发布分支:"+t+i+new Array(80).join("*")+"\n";var o="",g="",s="",h="",y="",m="";try{o=execSync("git show -s --format=%H").toString().trim()}catch(t){}try{g=execSync("git show -s --format=%cn").toString().trim()}catch(t){}try{s=execSync("git show -s --format=%ce").toString().trim()}catch(t){}try{h=new Date(execSync("git show -s --format=%cd").toString())}catch(t){}try{y=execSync("git show -s --format=%s").toString().trim()}catch(t){}if(o||g||s||h||y){m="最近一次提交:\n作者:"+g+"<"+s+">\n日期:"+(h.getFullYear()+"-"+(h.getMonth()+1)+"-"+h.getDate()+" "+h.getHours()+":"+h.getMinutes())+"\nmessage:"+y+"\ncommitId:"+o+"\n"+new Array(80).join("*")+"\n"}var S="",u="",f="",p="",l="",v="",d="",x="",w="";try{S=execSync("node -v").toString().trim()}catch(t){}try{u=execSync("npm -v").toString().trim()}catch(t){}try{f=__dirname}catch(t){}try{p=os.type()}catch(t){}try{l=os.platform()}catch(t){}try{v=os.arch()}catch(t){}try{d=os.hostname()}catch(t){}try{x=os.release()}catch(t){}if(S||u||f||p||l||v||d||x){w="环境信息:\nnode版本:"+S+"\nnpm版本:"+u+"\n项目文件夹:"+f+"\n操作系统名称:"+p+"\n操作系统类型:"+l+"\n处理器架构:"+v+"\n操作系统主机名:"+d+"\n操作系统版本:"+x+"\n"+new Array(80).join("*")+"\n"}var D=b.options.output||{},H=D.path;var M=q.options||{},Y=M.filename;if(!Y.startsWith("/")){Y="/"+Y}try{fs.writeFileSync(path.join(H+Y),a+m+w,{encoding:"utf-8",mode:438,flag:"w"})}catch(t){}})};BranchPlugin.cacheData=cacheData;module.exports=BranchPlugin;