diff --git a/CHANGELOG.md b/CHANGELOG.md index cc8317c..bca9c2d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,19 @@ Follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) · versioned wi --- +## [1.26.7] — 2026-09-09 + +### Fixed +- **Released Magazine UI Updates Now Reliably Reach Browsers.** The HTML bootstrap version was stale at `1.26.1`, + causing the browser to reuse an immutable old `magazine.js` bundle despite newer server deployments. All bootstrapped + assets now use the current release version so current magazine review controls, whole-issue navigation and OCR tools load. + +### Changed +- **Magazine Deletion Is Discoverable.** Every magazine card now has a visible, labelled **Delete** button below it; + confirmation remains required before the source PDF, OCR data, articles and generated assets are permanently removed. + +--- + ## [1.26.6] — 2026-09-09 ### Added diff --git a/VERSION b/VERSION index f250c8f..ad7c780 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.26.6 +1.26.7 diff --git a/static/index.html b/static/index.html index e354083..51fd541 100644 --- a/static/index.html +++ b/static/index.html @@ -10,7 +10,7 @@ - + @@ -27,12 +27,12 @@ - - - - - - + + + + + + @@ -403,7 +403,7 @@ window.toggleNavTree = function(treeId, chevronId) { - + diff --git a/static/js/magazine.js b/static/js/magazine.js index c423dcb..351dc2d 100644 --- a/static/js/magazine.js +++ b/static/js/magazine.js @@ -148,8 +148,8 @@ function renderLibrary() { return '
' + - '
'; + '
'; }).join(''); } diff --git a/static/style.css b/static/style.css index 4a9616a..4c06a80 100644 --- a/static/style.css +++ b/static/style.css @@ -4777,16 +4777,16 @@ input[list="lang-codes"] { .mag-new-actions { display: flex; justify-content: flex-end; margin-top: 14px; } .mag-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; } -.mag-card-wrap { position: relative; min-width: 0; } +.mag-card-wrap { min-width: 0; } .mag-card { display: flex; width: 100%; min-height: 100%; flex-direction: column; gap: 6px; align-items: flex-start; text-align: left; padding: 14px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); color: var(--text); cursor: pointer; } .mag-card:hover { border-color: var(--accent); } .mag-card:focus-visible { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(37,99,235,.18); } -.mag-card-delete { position: absolute; top: 7px; right: 7px; width: 32px; height: 32px; display: grid; place-items: center; - border: 1px solid var(--border); border-radius: 7px; background: color-mix(in srgb, var(--surface) 88%, transparent); - color: var(--subtext); cursor: pointer; opacity: .82; } -.mag-card-delete:hover, .mag-card-delete:focus-visible { color: var(--error); border-color: var(--error); background: var(--surface); opacity: 1; } +.mag-card-actions { display: flex; justify-content: flex-end; padding: 6px 4px 0; } +.mag-card-delete { display: inline-flex; align-items: center; gap: 4px; padding: 5px 8px; + border: 1px solid var(--border); border-radius: 7px; background: var(--surface); color: var(--subtext); cursor: pointer; } +.mag-card-delete:hover, .mag-card-delete:focus-visible { color: var(--error); border-color: var(--error); background: var(--surface); } .mag-card-thumb { display: block; width: 100%; height: 190px; object-fit: contain; object-position: center; background: var(--panel); border: 1px solid var(--border); border-radius: calc(var(--radius) - 2px); } .mag-card-title { font-weight: 600; }