content-download.js 581 B

12345678910111213141516
  1. /* global addEventListener, removeEventListener, document, URL, MouseEvent, Blob, top */
  2. addEventListener("message", listener, false);
  3. function listener(event) {
  4. removeEventListener("message", listener, false);
  5. const [filename, content] = JSON.parse(event.data);
  6. const link = document.createElement("a");
  7. document.body.appendChild(link);
  8. link.download = filename;
  9. const url = URL.createObjectURL(new Blob([content], { type: "text/html" }));
  10. link.href = url;
  11. link.dispatchEvent(new MouseEvent("click"));
  12. URL.revokeObjectURL(url);
  13. top.postMessage("content.saved", "*");
  14. }