adventure: let a player back out from the web, not only in Matrix
Three verbs to match gogobee's: call off an expedition, turn back out of somebody else's party, send the pet sitter home. Which one this page offers is derived here rather than pushed — leadership is already legible in the party seats and the sitter's standing is already in the babysit offer, so nothing new crosses the wire. Two things running it turned up that no test would have. An applied abandon left "Pull out of the run" sitting under a verdict saying the expedition was over, so an applied verb now also hides the other verbs it just made untrue. And a party member was being offered that same button in the first place, beside the one that actually works — Pete knows from the seat it just read that gogobee would refuse it, so it is withheld. Also: heal the Matrix handle onto push rows stored before the column existed, on its own endpoint rather than through the subscribe upsert, which resets both watermarks and would have silenced the digest for anybody who reads the site regularly. And stack the board row below sm — four flex columns that wrapped to six lines on a phone, pre-existing.
This commit is contained in:
@@ -3078,3 +3078,51 @@ html[data-room] .pete-felt {
|
||||
background: color-mix(in srgb, #c9a227 6%, transparent);
|
||||
}
|
||||
}
|
||||
|
||||
@layer components {
|
||||
/* The board row on /adventure and the channel page. It was four flex columns
|
||||
that never collapsed, and at phone width it fell apart: "lv 14 human cleric"
|
||||
wrapped onto three lines and the where-column onto three more, beside the
|
||||
"send trouble" button. Pre-existing — a board pushed with no region and a
|
||||
short zone name wrapped exactly the same way — so this is a layout fix, not
|
||||
a regression fix for anything the adventure plan added.
|
||||
|
||||
Below sm the row is a small grid: the icon and the name on the top line with
|
||||
the button pinned right, and the two descriptive columns stacked underneath
|
||||
the name where they have the whole width to themselves. At sm and up it is
|
||||
the single line it always was.
|
||||
|
||||
It lives here as component classes rather than as utilities in the markup
|
||||
because the SAME row is built twice — server-side in channel.html and again
|
||||
in that page's JS twin, which re-renders the list every poll. Two copies of a
|
||||
utility soup drift; two copies of one class name cannot. */
|
||||
.roster-row {
|
||||
display: grid;
|
||||
grid-template-columns: auto minmax(0, 1fr) auto;
|
||||
align-items: center;
|
||||
column-gap: 0.75rem;
|
||||
row-gap: 0.1rem;
|
||||
padding: 0.75rem 1.25rem;
|
||||
}
|
||||
/* Fixed width, because the two glyphs are not the same size: the house is
|
||||
wider than the crossed swords, so an auto column indented the stacked lines
|
||||
under an idle adventurer further than those under a live one. Only visible
|
||||
once the row stacks, which is why it took a phone-width shot to see. */
|
||||
.roster-row-icon { grid-column: 1; grid-row: 1; width: 1.35rem; text-align: center; font-size: 1.125rem; line-height: 1.75rem; }
|
||||
.roster-row-name { grid-column: 2; grid-row: 1; min-width: 0; }
|
||||
.roster-row-act { grid-column: 3; grid-row: 1; }
|
||||
.roster-row-meta { grid-column: 2; grid-row: 2; }
|
||||
.roster-row-where { grid-column: 2; grid-row: 3; }
|
||||
|
||||
@media (min-width: 640px) {
|
||||
.roster-row {
|
||||
grid-template-columns: auto auto auto minmax(0, 1fr) auto;
|
||||
column-gap: 1rem;
|
||||
}
|
||||
.roster-row-meta { grid-column: 3; grid-row: 1; }
|
||||
/* The where-column keeps the ml-auto behaviour it had as a flex child: it is
|
||||
the only 1fr track, so it takes the slack, and the text sits at its end. */
|
||||
.roster-row-where { grid-column: 4; grid-row: 1; text-align: right; }
|
||||
.roster-row-act { grid-column: 5; grid-row: 1; }
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user