UNPKG

1.89 kBJavaScriptView Raw
1'use strict';
2/**
3 * 文件签名处理
4 *
5 * @class Pug2html
6 * {
7 * src:'', <string> 源文件路径
8 * dist:'', <string> 输出路径
9 * }
10 */
11
12module.exports = fileType => {
13 let signature;
14
15 //如果获取不到项目的创建时间则为当前时间
16 let createDate = fws.config.createTime === undefined ? new Date() : new Date(fws.config.createTime),
17
18 //格式化时间,不足两位前面补0
19 formatDate = date => {
20 let format = number => {
21 if(+number < 10){
22 return '0'+number;
23 };
24 return number;
25 },
26 year = date.getFullYear(),
27 month = format(date.getMonth() + 1),
28 day = format(date.getDate()),
29 hours = format(date.getHours()),
30 minutes = format(date.getMinutes());
31 return year+'.'+month+'.'+day+' '+hours+':'+minutes;
32 },
33 sCreateDate = formatDate(createDate), //项目创建时间
34 sUpdateDate = formatDate(new Date()), //项目更新时间
35 sCreateAuthor = fws.config.author,
36 sCreateMail = fws.config.mail,
37 sUpateAuthor = fws.config.update_author,
38 sProjectName = fws.config.projectName === undefined ? '无' : fws.config.projectName,
39
40 //sUpateMail = fws.config.update_mail,
41 sSignature = (()=>{
42 let s = `Project:${sProjectName}, Create:${sCreateAuthor} ${sCreateDate}, Update:${sUpateAuthor} ${sUpdateDate}`;
43 return s;
44 })();
45
46 switch (fileType) {
47 case '.html':
48 signature = `<meta name="signature" content="${sSignature}">`;
49 break;
50
51 case '.js':case '.css':
52 signature = `/*! ${sSignature} */ \r\n`;
53 break;
54
55 };
56 return signature;
57};