export function downloadFile(name, content, extension, mime) { const filename = prompt("Filename?", name); if (!filename) { return; } const blob = new Blob([content], { type: mime }); const url = URL.createObjectURL(blob); const element = document.createElement("a"); element.href = url; element.download = filename.endsWith(extension) ? filename : filename + extension; element.style.display = "none"; document.body.appendChild(element); element.click(); document.body.removeChild(element); } export function slugify(text) { return text .split(/\W+/) .map((word) => word.toLowerCase()) .join("-"); } export function minifyJs(code) { return code .replace(/[\s\n]+/g, " ") .replace(/;\s+/g, ";"); }