aboutsummaryrefslogtreecommitdiff
path: root/lib/images.js
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2017-05-14 13:39:33 +0100
committerMichael Williamson <mike@zwobble.org>2017-05-14 13:39:33 +0100
commit327b99803151111bcec37af0d2bc5df5baa3506b (patch)
tree6fddd7f45c42b3b123de5ec81ee56f4bcf537516 /lib/images.js
parentbdf33ea9172f3c32f42197135053e932f725fd91 (diff)
Extract data URI image converter to images module
Diffstat (limited to 'lib/images.js')
-rw-r--r--lib/images.js14
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/images.js b/lib/images.js
index fef0ca3..c7d3ef5 100644
--- a/lib/images.js
+++ b/lib/images.js
@@ -3,7 +3,9 @@ var _ = require("underscore");
var promises = require("./promises");
var Html = require("./html");
-exports.imgElement = function(func) {
+exports.imgElement = imgElement;
+
+function imgElement(func) {
return function(element, messages) {
return promises.when(func(element)).then(function(result) {
var attributes = _.clone(result);
@@ -13,7 +15,15 @@ exports.imgElement = function(func) {
return [Html.freshElement("img", attributes)];
});
};
-};
+}
// Undocumented, but retained for backwards-compatibility with 0.3.x
exports.inline = exports.imgElement;
+
+exports.dataUri = imgElement(function(element) {
+ return element.read("base64").then(function(imageBuffer) {
+ return {
+ src: "data:" + element.contentType + ";base64," + imageBuffer
+ };
+ });
+});