doxa-maps/plugin-designs/gospel-internet/src/breakpoints.js
Doxa Maps 46a12f1769 Give the charts a real centre column at 768, and fix what that exposed
The board collapsed to a single panel below 760px; the set charts stacked their
legend below 900. Between those widths the board still held three columns while a
chart inside it had already given up on having room — at 768 the centre column
was about 145px, so one figure was crushed to 124 and the other's own minimum
made it spill under the right-hand panel. Neither number was wrong alone; the
defect was that they were two numbers, with nothing connecting the width at which
a chart needs room to the width at which the board gives it any. They are one
constant now.

Ring labels take four anchors instead of one. A single label at the top meant a
reader zooming anywhere else on a ring saw no ring name, which is most of the
ring and certainly wherever the dots are dense. The engine drops the extras when
they would collide, so low zoom is unchanged.

The cross is drawn as geometry rather than as a text glyph. It was a symbol whose
label was the character itself, and the layer rendered zero features: a glyph
appears only if the font has it, and nothing reports a missing one. Two line
segments depend on no font, and are the same mark in every locale — including the
right-to-left pages, where a text cross would also have been subject to bidi
reordering.

Both charts fit their whole extent on load. The default zoom clipped the outer
rings top and bottom, so the reader met a drawing already cut off — which reads
as a rendering fault rather than as something to zoom out of.
2026-09-28 20:43:21 +00:00

18 lines
935 B
JavaScript

/**
* breakpoints.js — the one width at which this dashboard stops being a three-column board.
*
* ★ IT IS A CONSTANT BECAUSE IT WAS TWO NUMBERS. board.vue collapsed to a single panel below
* 760px; the set charts stacked their legend below 900px. Between those two widths the board
* still held three columns while a chart inside it had already given up on having room — at
* 768 the centre column was about 145px, so the bounded figure was crushed to 124px and the
* centered figure's own minimum made it spill UNDER the right-hand panel.
*
* Neither number was wrong on its own. The defect was that they were separate, and nothing
* connected the width at which a chart needs room to the width at which the board gives it any.
*/
export const NARROW_MAX = 900
/** True when the shell is too narrow for side panels beside the centre column. */
export function isNarrowWidth(px) {
return Number(px) < NARROW_MAX
}