@regru/webpack-babel-multi-target-plugin
Version:
A Webpack plugin that works with Babel to allow deployment of ES2015 builds targeted to modern browsers, with an ES5 fallback for legacy browsers.
27 lines • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const ModuleDependency = require("webpack/lib/dependencies/ModuleDependency");
const constants_1 = require("./constants");
class BabelTargetSingleEntryDependency extends ModuleDependency {
constructor(babelTarget, request, originalName, loc) {
super(`${request.startsWith(constants_1.DEV_SERVER_CLIENT) ? request : babelTarget.getTargetedRequest(request)}`);
this.babelTarget = babelTarget;
this.originalName = originalName;
this.name = babelTarget.getTargetedAssetName(originalName);
if (!loc) {
loc = { name: `${this.request}:${babelTarget.key}` };
}
else {
loc.name += `:${babelTarget.key}`;
}
this.loc = loc;
}
get type() {
return 'babel target single entry';
}
getResourceIdentifier() {
return `module${this.request}!${this.babelTarget.key}`;
}
}
exports.BabelTargetSingleEntryDependency = BabelTargetSingleEntryDependency;
//# sourceMappingURL=babel.target.single.entry.dependency.js.map