Only zero is empty, and the last day is worth reading

This commit is contained in:
2026-08-21 11:57:17 -04:00
parent bbda5cbfe9
commit 74392ccad2
7 changed files with 317 additions and 57 deletions

View File

@@ -51,6 +51,14 @@ ADR-007 and ADR-002.
### Fixed
- **A caption could eat the barcode.** The code box and the caption both grew,
so any caption took half the label and kept going: "BAY 12 PRESS LINE 1" on
1.00 x 0.50in stock left a 36px stub, which is a code that is present,
unscannable, and reads as one that failed to render. The caption now takes
only the room it needs and a CODE128 keeps at least 40% of the label, all of
it when stacked. A code that genuinely fails to render says so in the preview
now, in red, rather than leaving white space that looks like a label with no
code on it.
- **The generator prints from inside the app shell.** It was a full-screen
route with no sidebar and a narrow column of controls on the left. It is now
an ordinary page - navigation, full width - and `style.css` hides the shell at
@@ -64,6 +72,14 @@ ADR-007 and ADR-002.
### Changed
- **Settings on the left, labels on the right.** The controls were a narrow
column with the preview trailing underneath, so the labels being adjusted were
off the bottom of the screen. The preview is now a column of its own that
stays in view and scrolls by itself, and it folds back to one column on a
narrow window. Note for anyone changing it: that scrolling column is exactly
the kind of ancestor that clips a multi-page print to whatever was on screen,
so print resets its overflow - verified by printing a six-page two-sided run,
not by looking at the preview.
- CSV parsing and page building moved out of the generator component into
`plugins/tools/frontend/labelPages.js`, where the column contract and the
two-sided page order are covered by tests.