JSFiddle - React, Tailwind, and code Playground
JavaScript
var content, MIME_TYPE, theBlob, a;
// What will actually be put into the file
content = "THE FILE CONTENT";
// The file type
MIME_TYPE = "text/plain";
// Basically, the file itself
theBlob = new Blob([content], {type: MIME_TYPE});
// The anchor element
a = document.createElement("a");
// Set the name of the file that will be downloaded
a.download = "Chat_History.txt";
// Set the contents to be downloaded
a.href = window.URL.createObjectURL(theBlob);
// Anchor's text
a.textContent = "Download";
// What's displayed as the URL of the anchor (when hovered, copied, etc.)
a.dataset.downloadurl = [MIME_TYPE, a.download, a.href].join(":");
// Add the anchor to the page
document.body.appendChild(a);