Sha256: 93103056f7983c67c174d4543234d32cf62e84616cb6d8415fbf901e9763d082
Contents?: true
Size: 864 Bytes
Versions: 7
Compression:
Stored size: 864 Bytes
Contents
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const ConcatSource = require("webpack-sources").ConcatSource; function accessorToObjectAccess(accessor) { return accessor.map(a => `[${JSON.stringify(a)}]`).join(""); } class ExportPropertyMainTemplatePlugin { constructor(property) { this.property = property; } apply(compilation) { const mainTemplate = compilation.mainTemplate; compilation.templatesPlugin("render-with-entry", (source, chunk, hash) => { const postfix = `${accessorToObjectAccess([].concat(this.property))}`; return new ConcatSource(source, postfix); }); mainTemplate.plugin("hash", hash => { hash.update("export property"); hash.update(`${this.property}`); }); } } module.exports = ExportPropertyMainTemplatePlugin;
Version data entries
7 entries across 3 versions & 2 rubygems