@plaiceholder/base64
Version:
Roll-you-own Base64 placeholders.
37 lines (33 loc) • 1.27 kB
JavaScript
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('sharp')) :
typeof define === 'function' && define.amd ? define(['exports', 'sharp'], factory) :
(global = global || self, factory(global.base64 = {}, global.sharp));
}(this, (function (exports, sharp) {
sharp = sharp && Object.prototype.hasOwnProperty.call(sharp, 'default') ? sharp['default'] : sharp;
var getBase64 = function getBase64(imageBuffer) {
try {
return Promise.resolve(new Promise(function (resolve, reject) {
sharp(imageBuffer).normalise().modulate({
saturation: 1.2,
brightness: 1
}).removeAlpha().resize(10, 10, {
fit: "inside"
}).toBuffer({
resolveWithObject: true
}).then(function (_ref) {
var data = _ref.data,
info = _ref.info;
var format = info.format;
var base64 = "data:image/" + format + ";base64," + data.toString("base64");
resolve(base64);
})["catch"](function (err) {
if (err) return reject(err);
});
}));
} catch (e) {
return Promise.reject(e);
}
};
exports.getBase64 = getBase64;
})));
//# sourceMappingURL=index.umd.js.map