remember preview

This commit is contained in:
schmeeve
2026-09-23 17:45:46 -07:00
parent 0a13fed4a2
commit 197da6754f

View File

@@ -32,6 +32,7 @@ const THEMES = [
{ id: "sunset", label: "Sunset", dark: true, dots: ["#1c1018", "#251420", "#f472b6", "#fb923c"] }, { id: "sunset", label: "Sunset", dark: true, dots: ["#1c1018", "#251420", "#f472b6", "#fb923c"] },
]; ];
const THEME_CONFIG_KEY = "snotes-theme-config"; const THEME_CONFIG_KEY = "snotes-theme-config";
const PREVIEW_KEY = "snotes-preview";
const themeMQ = window.matchMedia("(prefers-color-scheme: dark)"); const themeMQ = window.matchMedia("(prefers-color-scheme: dark)");
function findTheme(id) { return THEMES.find((t) => t.id === id); } function findTheme(id) { return THEMES.find((t) => t.id === id); }
@@ -499,7 +500,10 @@ function renderEditor(body, owner) {
const editorArea = el("div", { class: "editor" }); const editorArea = el("div", { class: "editor" });
const previewArea = el("div", { class: "preview" }); const previewArea = el("div", { class: "preview" });
const split = el("div", { class: "editor-split" }, [editorArea, previewArea]); const split = el("div", { class: "editor-split" }, [editorArea, previewArea]);
const previewBtn = el("button", { class: "btn ghost preview-toggle active", text: "Preview", title: "Toggle live preview", onclick: () => { split.classList.toggle("preview-hidden"); previewBtn.classList.toggle("active"); } }); let previewOn = true;
try { previewOn = localStorage.getItem(PREVIEW_KEY) !== "off"; } catch (e) {}
const previewBtn = el("button", { class: "btn ghost preview-toggle" + (previewOn ? " active" : ""), text: "Preview", title: "Toggle live preview", onclick: () => { split.classList.toggle("preview-hidden"); previewBtn.classList.toggle("active"); try { localStorage.setItem(PREVIEW_KEY, previewBtn.classList.contains("active") ? "on" : "off"); } catch (e) {} } });
if (!previewOn) split.classList.add("preview-hidden");
const status = el("div", { class: "status", text: "" }); const status = el("div", { class: "status", text: "" });
const hint = el("div", { class: "editor-hint" }, [ const hint = el("div", { class: "editor-hint" }, [
el("p", { html: 'Tags: type <code>#tag</code> anywhere in your note to add a tag.' }), el("p", { html: 'Tags: type <code>#tag</code> anywhere in your note to add a tag.' }),