Font Playlist Script Today

<script> // ---------- DEFAULT FONT PLAYLIST ---------- let defaultFonts = ["Roboto", "Open Sans", "Playfair Display", "Fira Code", "Pacifico", "Montserrat"]; let playlist = [...defaultFonts]; let currentIndex = 0; let intervalId = null; let isPlaying = false;

// event binding + initial load function init() renderPlaylistUI(); updateDisplay(); updateTextContent(); font playlist script

// DOM elements const displayDiv = document.getElementById('displayText'); const currentFontLabel = document.getElementById('currentFontLabel'); const userMessageTextarea = document.getElementById('userMessage'); const prevBtn = document.getElementById('prevBtn'); const nextBtn = document.getElementById('nextBtn'); const playBtn = document.getElementById('playBtn'); const pauseBtn = document.getElementById('pauseBtn'); const addFontBtn = document.getElementById('addFontBtn'); const newFontNameInput = document.getElementById('newFontName'); const fontListContainer = document.getElementById('fontListContainer'); const fontCounterSpan = document.getElementById('fontCounter'); const exportBtn = document.getElementById('exportBtn'); const importBtn = document.getElementById('importBtn'); const importFileInput = document.getElementById('importFile'); const darkModeBtn = document.getElementById('darkModeBtn'); let playlist = [...defaultFonts]

// export/import function exportPlaylist() const dataStr = JSON.stringify( fonts: playlist, savedText: userMessageTextarea.value , null, 2); const blob = new Blob([dataStr], type: "application/json"); const url = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = "fontPlaylist.json"; a.click(); URL.revokeObjectURL(url); let currentIndex = 0

function prevFont() if (!playlist.length) return; currentIndex = (currentIndex - 1 + playlist.length) % playlist.length; updateDisplay(); if (isPlaying) stopAutoRotate(); startAutoRotate(); else updateDisplay();

function importPlaylist(file) const reader = new FileReader(); reader.onload = (e) => try const json = JSON.parse(e.target.result); if (json.fonts && Array.isArray(json.fonts) && json.fonts.length) playlist = json.fonts; currentIndex = 0; if (json.savedText !== undefined) userMessageTextarea.value = json.savedText; renderPlaylistUI(); updateTextContent(); updateDisplay(); stopAutoRotate(); else alert("Invalid playlist format. Need fonts: [...] "); catch(err) alert("Error parsing file"); ; reader.readAsText(file);