JSFiddle - React, Tailwind, and code Playground
HTML
<div id="output"></div>
JavaScript
var contentType = 'image/png';
//var contentType = 'text/html';
var b64Data = 'iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';
var byteCharacters = atob(b64Data);
function charCodeFromCharacter(c) {
return c.charCodeAt(0);
}
var byteNumbers = Array.prototype.map.call(byteCharacters, charCodeFromCharacter);
var uint8Data = new Uint8Array(byteNumbers);
var blob = new Blob([uint8Data], {type: contentType});
var blobUrl = URL.createObjectURL(blob);
//var bb = new Blob([typer.textContent], {type: MIME_TYPE});
var a = document.createElement('a');
a.download = "image.png";
a.href = blobUrl;
a.textContent = 'Download ready';
$.("#output").html(a);