give the rollup glyph back its spin animation

The extraction dropped the old banner's `spinner` class on the glyph
span (`el('span', { class: 'glyph spinner' }, ...)`) - JobqRollup.tsx
rendered a static `.jqr-glyph` with no animation rule anywhere.
`.spinner` (shared/base.css) is already imported by both consumers, so
just reuse it on the glyph rather than duplicating the keyframes.

argus caught this on review - a single-frame screenshot can't tell a
frozen spinner from a missing one, which is exactly why it slipped
past the PR's visual verification.
This commit is contained in:
iris 2026-08-16 21:25:54 +02:00 committed by mara
commit 348b2f96da

View file

@ -18,6 +18,11 @@
// /builds.html; swarm-ui's /jobs page omits it — a link to the page
// you're already on is noise).
//
// The glyph carries `.spinner` (`@hive/shared/base.css`, already
// imported by both consumers) for the "actively happening" spin —
// not redeclared in jobq-rollup.css, since a static screenshot can't
// tell a frozen spinner from a missing one; caught by argus's review.
//
// Two ways to use this, same shape as JobqGraph: JSX (swarm-ui) —
// `<JobqRollup endpoint="..." queueHref="..." />`. Or imperative mount
// (dashboard/src/swarm.js, plain `.js`) — `mountJobqRollup(container,
@ -76,7 +81,7 @@ export function JobqRollup({ endpoint, queueHref, refreshToken = 0 }: JobqRollup
return (
<div class="jqr-summary">
<span class="jqr-glyph"></span>{' '}
<span class="jqr-glyph spinner"></span>{' '}
<strong>build queue</strong> {parts.join(' · ')}{' '}
{queueHref && (
<a class="jqr-link" href={queueHref}>view queue </a>