@@ -15,8 +15,7 @@ module.exports = {
1515 resolve : {
1616 extensions : [ ".ts" , ".js" ] // 添加 .ts 扩展名
1717 } ,
18- optimization : {
19- } ,
18+ optimization : { } ,
2019 plugins : [
2120 // 在打包后的文件头插入一些banner信息,官方插件:
2221 // https://webpack.js.org/plugins/banner-plugin/
@@ -35,6 +34,21 @@ module.exports = {
3534 userscriptHeaders = userscriptHeaders . replaceAll ( "${document}" , webpackPackageJson [ "document" ] || "" ) ;
3635 userscriptHeaders = userscriptHeaders . replaceAll ( "${author}" , webpackPackageJson [ "author" ] || "" ) ;
3736 userscriptHeaders = userscriptHeaders . replaceAll ( "${repository}" , webpackPackageJson [ "repository" ] || "" ) ;
37+
38+ // 如果存在 banner 的话,则读取插入
39+ const bannerFilePath = "./banner.txt" ;
40+ if ( fs . existsSync ( bannerFilePath ) ) {
41+ let banner = fs . readFileSync ( bannerFilePath ) . toString ( "utf-8" ) ;
42+ banner = banner . replaceAll ( "${name}" , webpackPackageJson [ "name" ] || "" ) ;
43+ banner = banner . replaceAll ( "${namespace}" , webpackPackageJson [ "namespace" ] || "" ) ;
44+ banner = banner . replaceAll ( "${version}" , webpackPackageJson [ "version" ] || "" ) ;
45+ banner = banner . replaceAll ( "${description}" , webpackPackageJson [ "description" ] || "" ) ;
46+ banner = banner . replaceAll ( "${document}" , webpackPackageJson [ "document" ] || "" ) ;
47+ banner = banner . replaceAll ( "${author}" , webpackPackageJson [ "author" ] || "" ) ;
48+ banner = banner . replaceAll ( "${repository}" , webpackPackageJson [ "repository" ] || "" ) ;
49+ userscriptHeaders += "\n" + banner . split ( "\n" ) . join ( "\n// " ) + "\n" ;
50+ }
51+
3852 return userscriptHeaders ;
3953 }
4054 } ) ,
0 commit comments