misuzu/assets/misuzu.js/embed/image.js

33 lines
780 B
JavaScript

const MszImageEmbed = function(metadata, options, target) {
options = options || {};
const image = $create({
tag: 'img',
attrs: {
alt: target.dataset.mszEmbedAlt || '',
src: metadata.url,
},
});
const pub = {
getElement: function() {
return image;
},
appendTo: function(target) {
target.appendChild(image);
},
insertBefore: function(ref) {
$insertBefore(ref, image);
},
nuke: function() {
image.remove();
},
replaceElement(target) {
$insertBefore(target, image);
target.remove();
},
getType: function() { return 'external'; },
};
return pub;
};