egirlskey/webpack/module/rules/license.ts
syuilo 845dc26184 ✌️
2017-12-11 03:38:31 +09:00

23 lines
514 B
TypeScript

/**
* Inject license
*/
import * as fs from 'fs';
const StringReplacePlugin = require('string-replace-webpack-plugin');
const license = fs.readFileSync(__dirname + '/../../../LICENSE', 'utf-8')
.replace(/\r\n/g, '\n')
.replace(/(.)\n(.)/g, '$1 $2')
.replace(/(^|\n)(.*?)($|\n)/g, '<p>$2</p>');
export default () => ({
enforce: 'pre',
test: /\.(tag|js)$/,
exclude: /node_modules/,
loader: StringReplacePlugin.replace({
replacements: [{
pattern: '%license%', replacement: () => license
}]
})
});