Molecule
Rota
Who is on call, read from the provider’s own tool. 7 instances across 7 screens, in the shift brief.
Harrier reads this and never owns it, so there is no control anywhere in the component: only the name node 4.6 needs when an escalation has to go to somebody. That dependency is why the open question about who the secondary persona is blocks a mechanism rather than a paragraph.
Anatomy
dark, shipped
light, the pair
.rotathe whole list, in its own border. It is a panel and not a table: three or four names read as sentences.whothe person. Weight 600, and it never wraps.rolewhat they are on for. Secondary ink at 11px, because it qualifies the name rather than competing with it.whenthe window, mono, pushed right.on nowfor the one that is
Variants
| Axis | Value | Uses | The rule |
|---|---|---|---|
| state | .is-now | 1 per rota | the only thing this component says. Who is on right now, given a surface rather than a colour: the accent has four jobs and no fifth, and this is a fact about a clock rather than about a decision |
| length | no values | – | Three or four names is a count. A rota with eight names is a longer rota |
| action | no values | – | Prohibited, and it is the point of the component. Harrier does not own the schedule. A control here would offer to change somebody else’s on call rota from an adjudication console |
When to use it
In the shift brief, once, next to what moved. It exists so that an escalation has a recipient and the analyst does not have to leave the product to find out who that is.
Where she meets it. At the start of a shift, and again at 03:00 when something has to go to a human. It is read twice and never touched.
Rule and anti-rule
Do
A name, a role and a window, with the one that matters given a ground. Enough to address an escalation and nothing more.
Do not
Never a control. The rota belongs to the provider’s on call tool, and a button here would either lie or write into a system this product does not own.
States
It has none, and it is not interactive. Point at any line and nothing happens, which is the component working.
dark, shipped
light, the pair
.is-now looks like a state and is a fact: it is true because of the time, not because of anything the analyst did. That is why it is a class in the markup rather than a pseudo-class.
What it reads, and where it stands
| Role | Surface | Where on the component | Dark | Light |
|---|---|---|---|---|
--bg-surface | fill | the line that is on now | ||
--text-primary | ink 4.5:1 | the name | ||
--text-secondary | ink 4.5:1 | the role and the window | ||
--line-separator | line, exempt | the border and the rules between lines |