Timers: the gear chooses what a card shows, not which timers; a 24-hour switch; a date that fits
Which timers appear is the header's Timers ▾ menu's job, so the gear's source switches (ProPresenter / LTC / module timers, the Clock on/off) are gone. In their place the Show group offers the card's elements — Names, Status lines, Detail lines, Seconds, Leading zeros, Source headings; without seconds a countdown reads in whole minutes, rounded up. The clock's format select is a 24-hour switch (an older layout's "12h" choice is honoured); the clock card has no CLOCK label; Short day and Short month appear once Date is on, and the date fits its card — one line when it can, else a break after the day and a size that fits the longer half. Solo tiles get the same element switches. Shell: the settings window's grab bar is the accent colour and the gear that opened it wears the same colour while it is open; showWhen works in a tile's gear as it does on the admin page. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
1db6c2c89f
commit
efbcf960dd
@@ -911,20 +911,23 @@ function gearOf(keys, { loose = [], groups = {} } = {}) {
|
||||
}
|
||||
|
||||
const COLOURS = ['runningColor', 'warningColor', 'overrunColor', 'idleColor'];
|
||||
/** What a timer card can show or hide of itself (which timers appear is the header menu's job). */
|
||||
const TIMER_ELEMENTS = ['showNames', 'showStatus', 'showDetail', 'showSeconds', 'leadingZeros'];
|
||||
const CLOCK_ELEMENTS = ['clock24h', 'clockSeconds', 'clockDate', 'dateShortDay', 'dateShortMonth'];
|
||||
/** With one card there is little else to see: the colours start unfolded. */
|
||||
const OPEN_COLOURS = { groups: { Colours: { collapsed: false } } };
|
||||
|
||||
const GEAR = {
|
||||
/** Every source, the headings, the clock's format, the tones. */
|
||||
/** Every card's elements, the headings, how the clock reads, the tones. */
|
||||
all: { instanceSchema: FULL_SCHEMA, instanceGroups: FULL_GROUPS },
|
||||
/** One ProPresenter or module timer: its lines, and the tone its digits take per state. */
|
||||
timer: gearOf(['showStatus', ...COLOURS], { loose: ['showStatus'], ...OPEN_COLOURS }),
|
||||
/** The timecode: running, no signal (warning) and stopped (idle) — it never overruns. */
|
||||
ltc: gearOf(['showStatus', 'runningColor', 'warningColor', 'idleColor'], { loose: ['showStatus'], ...OPEN_COLOURS }),
|
||||
/** One ProPresenter or module timer: its elements, and the tone its digits take per state. */
|
||||
timer: gearOf([...TIMER_ELEMENTS, ...COLOURS], OPEN_COLOURS),
|
||||
/** The timecode: running, no signal (warning) and stopped (idle) — it never overruns, and frames are frames. */
|
||||
ltc: gearOf(['showNames', 'showStatus', 'runningColor', 'warningColor', 'idleColor'], OPEN_COLOURS),
|
||||
/** The time of day: plain digits, so only how they read. */
|
||||
clock: gearOf(['clockFormat', 'clockSeconds', 'clockDate']),
|
||||
clock: gearOf(CLOCK_ELEMENTS),
|
||||
/** A clock another module offers: read like the clock, muted while it isn't running. */
|
||||
providerClock: gearOf(['showStatus', 'clockFormat', 'clockSeconds', 'idleColor'], { loose: ['showStatus'], ...OPEN_COLOURS }),
|
||||
providerClock: gearOf(['showNames', 'showStatus', 'clock24h', 'clockSeconds', 'idleColor'], OPEN_COLOURS),
|
||||
};
|
||||
|
||||
/** The gear a solo card of this timer gets — by what the card can show. */
|
||||
|
||||
Reference in New Issue
Block a user