diff --git a/package-lock.json b/package-lock.json index 0f1d64f..590fdcf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "coryd.dev", - "version": "9.1.7", + "version": "9.1.8", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "coryd.dev", - "version": "9.1.7", + "version": "9.1.8", "license": "MIT", "dependencies": { "minisearch": "^7.1.2", @@ -31,7 +31,7 @@ "postcss-import": "^16.1.0", "postcss-import-ext-glob": "^2.1.1", "rimraf": "^6.0.1", - "terser": "^5.41.0", + "terser": "^5.42.0", "truncate-html": "^1.2.1" }, "engines": { @@ -1385,9 +1385,9 @@ "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.165", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.165.tgz", - "integrity": "sha512-naiMx1Z6Nb2TxPU6fiFrUrDTjyPMLdTtaOd2oLmG8zVSg2hCWGkhPyxwk+qRmZ1ytwVqUv0u7ZcDA5+ALhaUtw==", + "version": "1.5.166", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.166.tgz", + "integrity": "sha512-QPWqHL0BglzPYyJJ1zSSmwFFL6MFXhbACOCcsCdUMCkzPdS9/OIBVxg516X/Ado2qwAq8k0nJJ7phQPCqiaFAw==", "dev": true, "license": "ISC" }, @@ -4091,9 +4091,9 @@ } }, "node_modules/terser": { - "version": "5.41.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.41.0.tgz", - "integrity": "sha512-H406eLPXpZbAX14+B8psIuvIr8+3c+2hkuYzpMkoE0ij+NdsVATbA78vb8neA/eqrj7rywa2pIkdmWRsXW6wmw==", + "version": "5.42.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.42.0.tgz", + "integrity": "sha512-UYCvU9YQW2f/Vwl+P0GfhxJxbUGLwd+5QrrGgLajzWAtC/23AX0vcise32kkP7Eu0Wu9VlzzHAXkLObgjQfFlQ==", "dev": true, "license": "BSD-2-Clause", "dependencies": { diff --git a/package.json b/package.json index 71605de..6f8a4e8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "coryd.dev", - "version": "9.1.7", + "version": "9.1.8", "description": "The source for my personal site. Built using 11ty (and other tools).", "type": "module", "engines": { @@ -51,7 +51,7 @@ "postcss-import": "^16.1.0", "postcss-import-ext-glob": "^2.1.1", "rimraf": "^6.0.1", - "terser": "^5.41.0", + "terser": "^5.42.0", "truncate-html": "^1.2.1" } } diff --git a/src/assets/scripts/index.js b/src/assets/scripts/index.js index 356aa65..7fe0880 100644 --- a/src/assets/scripts/index.js +++ b/src/assets/scripts/index.js @@ -1,64 +1,64 @@ -window.addEventListener("load", () => { +window.addEventListener('load', () => { // service worker if ('serviceWorker' in navigator) navigator.serviceWorker.register('/assets/scripts/sw.js'); // dialog controls (() => { - const dialogButtons = document.querySelectorAll(".dialog-open"); + const dialogButtons = document.querySelectorAll('.dialog-open'); if (!dialogButtons.length) return; dialogButtons.forEach((button) => { - const dialogId = button.getAttribute("data-dialog-trigger"); + const dialogId = button.getAttribute('data-dialog-trigger'); const dialog = document.getElementById(`dialog-${dialogId}`); if (!dialog) return; - const closeButton = dialog.querySelector(".dialog-close"); + const closeButton = dialog.querySelector('.dialog-close'); - button.addEventListener("click", async () => { + button.addEventListener('click', async () => { const isDynamic = dialog.dataset.dynamic; const isLoaded = dialog.dataset.loaded; if (isDynamic && !isLoaded) { - const markdownFields = dialog.dataset.markdown || ""; + const markdownFields = dialog.dataset.markdown || ''; try { const res = await fetch(`/api/query.php?data=${isDynamic}&id=${dialogId}&markdown=${encodeURIComponent(markdownFields)}`); const [data] = await res.json(); - const firstField = markdownFields.split(",")[0]?.trim(); - const html = data?.[`${firstField}_html`] || "

No notes available.

"; + const firstField = markdownFields.split(',')[0]?.trim(); + const html = data?.[`${firstField}_html`] || '

No notes available.

'; - dialog.querySelectorAll(".dialog-dynamic").forEach((el) => el.remove()); + dialog.querySelectorAll('.dialog-dynamic').forEach((el) => el.remove()); - const container = document.createElement("div"); + const container = document.createElement('div'); - container.classList.add("dialog-dynamic"); + container.classList.add('dialog-dynamic'); container.innerHTML = html; dialog.appendChild(container); - dialog.dataset.loaded = "true"; + dialog.dataset.loaded = 'true'; } catch (err) { - dialog.querySelectorAll(".dialog-dynamic").forEach((el) => el.remove()); + dialog.querySelectorAll('.dialog-dynamic').forEach((el) => el.remove()); - const errorNode = document.createElement("div"); + const errorNode = document.createElement('div'); - errorNode.classList.add("dialog-dynamic"); - errorNode.textContent = "Failed to load content."; + errorNode.classList.add('dialog-dynamic'); + errorNode.textContent = 'Failed to load content.'; dialog.appendChild(errorNode); - console.warn("Dialog content load error:", err); + console.warn('Dialog content load error:', err); } } dialog.showModal(); - dialog.classList.remove("closing"); + dialog.classList.remove('closing'); }); if (closeButton) { - closeButton.addEventListener("click", () => { - dialog.classList.add("closing"); + closeButton.addEventListener('click', () => { + dialog.classList.add('closing'); setTimeout(() => dialog.close(), 200); }); } - dialog.addEventListener("click", (event) => { + dialog.addEventListener('click', (event) => { const rect = dialog.getBoundingClientRect(); const outsideClick = event.clientX < rect.left || @@ -67,14 +67,14 @@ window.addEventListener("load", () => { event.clientY > rect.bottom; if (outsideClick) { - dialog.classList.add("closing"); + dialog.classList.add('closing'); setTimeout(() => dialog.close(), 200); } }); - dialog.addEventListener("cancel", (event) => { + dialog.addEventListener('cancel', (event) => { event.preventDefault(); - dialog.classList.add("closing"); + dialog.classList.add('closing'); setTimeout(() => dialog.close(), 200); }); }); @@ -82,23 +82,23 @@ window.addEventListener("load", () => { // text toggle for media pages (() => { - const button = document.querySelector("[data-toggle-button]"); - const content = document.querySelector("[data-toggle-content]"); - const text = document.querySelectorAll("[data-toggle-content] p"); + const button = document.querySelector('[data-toggle-button]'); + const content = document.querySelector('[data-toggle-content]'); + const text = document.querySelectorAll('[data-toggle-content] p'); const minHeight = 500; // this needs to match the height set on [data-toggle-content].text-toggle-hidden in text-toggle.css const interiorHeight = Array.from(text).reduce((acc, node) => acc + node.scrollHeight, 0); if (!button || !content || !text.length) return; if (interiorHeight < minHeight) { - content.classList.remove("text-toggle-hidden"); - button.style.display = "none"; + content.classList.remove('text-toggle-hidden'); + button.style.display = 'none'; return; } - button.addEventListener("click", () => { - const isHidden = content.classList.toggle("text-toggle-hidden"); - button.textContent = isHidden ? "Show more" : "Show less"; + button.addEventListener('click', () => { + const isHidden = content.classList.toggle('text-toggle-hidden'); + button.textContent = isHidden ? 'Show more' : 'Show less'; }); })(); });