grind-assets
Version:
Asset management for Grind
59 lines (44 loc) • 4.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.RollupPlugin = void 0;
const {
createFilter
} = require('rollup-pluginutils');
const path = require('path');
class RollupPlugin {
constructor(options) {
this.config = void 0;
this.load = id => {
if (!this.filter(id)) {
return null;
}
if (!this.extensions.has(path.extname(id).toLowerCase().substring(1))) {
return null;
}
id = path.relative(this.config.grind.config.get('assets.paths.source'), id);
return this.transformPath(this.config.grind.assets.publishedPath(id, this.config.req));
};
this.filter = createFilter(options.include, options.exclude);
this.config = options;
}
static pkg(options) {
return new this(options);
}
static assert() {// Do nothing
}
transformPath()
/* file */
{
return null;
}
compiler(compiler) {
return new compiler(this.config.grind, true, true);
}
get name() {
return this.constructor.name;
}
}
exports.RollupPlugin = RollupPlugin;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9Sb2xsdXAvUm9sbHVwUGx1Z2luLmpzIl0sIm5hbWVzIjpbImNyZWF0ZUZpbHRlciIsInJlcXVpcmUiLCJwYXRoIiwiUm9sbHVwUGx1Z2luIiwiY29uc3RydWN0b3IiLCJvcHRpb25zIiwiY29uZmlnIiwibG9hZCIsImlkIiwiZmlsdGVyIiwiZXh0ZW5zaW9ucyIsImhhcyIsImV4dG5hbWUiLCJ0b0xvd2VyQ2FzZSIsInN1YnN0cmluZyIsInJlbGF0aXZlIiwiZ3JpbmQiLCJnZXQiLCJ0cmFuc2Zvcm1QYXRoIiwiYXNzZXRzIiwicHVibGlzaGVkUGF0aCIsInJlcSIsImluY2x1ZGUiLCJleGNsdWRlIiwicGtnIiwiYXNzZXJ0IiwiY29tcGlsZXIiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsTUFBTTtBQUFFQSxFQUFBQTtBQUFGLElBQW1CQyxPQUFPLENBQUMsb0JBQUQsQ0FBaEM7O0FBQ0EsTUFBTUMsSUFBSSxHQUFHRCxPQUFPLENBQUMsTUFBRCxDQUFwQjs7QUFFTyxNQUFNRSxZQUFOLENBQW1CO0FBR3pCQyxFQUFBQSxXQUFXLENBQUNDLE9BQUQsRUFBVTtBQUFBLFNBRnJCQyxNQUVxQjs7QUFBQSxTQWFyQkMsSUFicUIsR0FhZEMsRUFBRSxJQUFJO0FBQ1osVUFBSSxDQUFDLEtBQUtDLE1BQUwsQ0FBWUQsRUFBWixDQUFMLEVBQXNCO0FBQ3JCLGVBQU8sSUFBUDtBQUNBOztBQUVELFVBQUksQ0FBQyxLQUFLRSxVQUFMLENBQWdCQyxHQUFoQixDQUFvQlQsSUFBSSxDQUFDVSxPQUFMLENBQWFKLEVBQWIsRUFBaUJLLFdBQWpCLEdBQStCQyxTQUEvQixDQUF5QyxDQUF6QyxDQUFwQixDQUFMLEVBQXVFO0FBQ3RFLGVBQU8sSUFBUDtBQUNBOztBQUVETixNQUFBQSxFQUFFLEdBQUdOLElBQUksQ0FBQ2EsUUFBTCxDQUFjLEtBQUtULE1BQUwsQ0FBWVUsS0FBWixDQUFrQlYsTUFBbEIsQ0FBeUJXLEdBQXpCLENBQTZCLHFCQUE3QixDQUFkLEVBQW1FVCxFQUFuRSxDQUFMO0FBQ0EsYUFBTyxLQUFLVSxhQUFMLENBQW1CLEtBQUtaLE1BQUwsQ0FBWVUsS0FBWixDQUFrQkcsTUFBbEIsQ0FBeUJDLGFBQXpCLENBQXVDWixFQUF2QyxFQUEyQyxLQUFLRixNQUFMLENBQVllLEdBQXZELENBQW5CLENBQVA7QUFDQSxLQXhCb0I7O0FBQ3BCLFNBQUtaLE1BQUwsR0FBY1QsWUFBWSxDQUFDSyxPQUFPLENBQUNpQixPQUFULEVBQWtCakIsT0FBTyxDQUFDa0IsT0FBMUIsQ0FBMUI7QUFDQSxTQUFLakIsTUFBTCxHQUFjRCxPQUFkO0FBQ0E7O0FBRVMsU0FBSG1CLEdBQUcsQ0FBQ25CLE9BQUQsRUFBVTtBQUNuQixXQUFPLElBQUksSUFBSixDQUFTQSxPQUFULENBQVA7QUFDQTs7QUFFWSxTQUFOb0IsTUFBTSxHQUFHLENBQ2Y7QUFDQTs7QUFlRFAsRUFBQUEsYUFBYTtBQUFDO0FBQVk7QUFDekIsV0FBTyxJQUFQO0FBQ0E7O0FBRURRLEVBQUFBLFFBQVEsQ0FBQ0EsUUFBRCxFQUFXO0FBQ2xCLFdBQU8sSUFBSUEsUUFBSixDQUFhLEtBQUtwQixNQUFMLENBQVlVLEtBQXpCLEVBQWdDLElBQWhDLEVBQXNDLElBQXRDLENBQVA7QUFDQTs7QUFFTyxNQUFKVyxJQUFJLEdBQUc7QUFDVixXQUFPLEtBQUt2QixXQUFMLENBQWlCdUIsSUFBeEI7QUFDQTs7QUF2Q3dCIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgeyBjcmVhdGVGaWx0ZXIgfSA9IHJlcXVpcmUoJ3JvbGx1cC1wbHVnaW51dGlscycpXG5jb25zdCBwYXRoID0gcmVxdWlyZSgncGF0aCcpXG5cbmV4cG9ydCBjbGFzcyBSb2xsdXBQbHVnaW4ge1xuXHRjb25maWdcblxuXHRjb25zdHJ1Y3RvcihvcHRpb25zKSB7XG5cdFx0dGhpcy5maWx0ZXIgPSBjcmVhdGVGaWx0ZXIob3B0aW9ucy5pbmNsdWRlLCBvcHRpb25zLmV4Y2x1ZGUpXG5cdFx0dGhpcy5jb25maWcgPSBvcHRpb25zXG5cdH1cblxuXHRzdGF0aWMgcGtnKG9wdGlvbnMpIHtcblx0XHRyZXR1cm4gbmV3IHRoaXMob3B0aW9ucylcblx0fVxuXG5cdHN0YXRpYyBhc3NlcnQoKSB7XG5cdFx0Ly8gRG8gbm90aGluZ1xuXHR9XG5cblx0bG9hZCA9IGlkID0+IHtcblx0XHRpZiAoIXRoaXMuZmlsdGVyKGlkKSkge1xuXHRcdFx0cmV0dXJuIG51bGxcblx0XHR9XG5cblx0XHRpZiAoIXRoaXMuZXh0ZW5zaW9ucy5oYXMocGF0aC5leHRuYW1lKGlkKS50b0xvd2VyQ2FzZSgpLnN1YnN0cmluZygxKSkpIHtcblx0XHRcdHJldHVybiBudWxsXG5cdFx0fVxuXG5cdFx0aWQgPSBwYXRoLnJlbGF0aXZlKHRoaXMuY29uZmlnLmdyaW5kLmNvbmZpZy5nZXQoJ2Fzc2V0cy5wYXRocy5zb3VyY2UnKSwgaWQpXG5cdFx0cmV0dXJuIHRoaXMudHJhbnNmb3JtUGF0aCh0aGlzLmNvbmZpZy5ncmluZC5hc3NldHMucHVibGlzaGVkUGF0aChpZCwgdGhpcy5jb25maWcucmVxKSlcblx0fVxuXG5cdHRyYW5zZm9ybVBhdGgoLyogZmlsZSAqLykge1xuXHRcdHJldHVybiBudWxsXG5cdH1cblxuXHRjb21waWxlcihjb21waWxlcikge1xuXHRcdHJldHVybiBuZXcgY29tcGlsZXIodGhpcy5jb25maWcuZ3JpbmQsIHRydWUsIHRydWUpXG5cdH1cblxuXHRnZXQgbmFtZSgpIHtcblx0XHRyZXR1cm4gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lXG5cdH1cbn1cbiJdfQ==