Signals solid in the orange of the Signals icon's point (#268)
--accent2 mixed a quarter into the ground came out salmon, and is pink or blue in other themes. Each Signal's tile is now solid #ff6a1a, or #ff5500 in light, the point of signals.svg and signals-dark.svg, in every theme as the icon is, with the icon or initials in the logo's navy (#0c2238, 5:1 or better on either). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,7 +20,7 @@ their Signals that has not heard about the item yet.
|
||||
the set the page's own icons come from: 2,883 icons, solid, regular and brands, searched by name
|
||||
and Font Awesome's search terms ("ai" finds the robot). Without one, a Signal shows its initials.
|
||||
**Auto** asks Jev to choose (#263), and a Signal made without an icon gets Jev's pick by
|
||||
itself, a moment after it is made. Every Signal's tile is in the needle's colour (`--accent2`), the orange point of the folder's icon.
|
||||
itself, a moment after it is made. Every Signal's tile is solid in the orange of the folder icon's point.
|
||||
- **Each Signal's row** says "12 items · 3 unread", as a feed's row counts its own.
|
||||
- **The folder's page** lists the Signals, as an OPML's page lists its feeds, with the + for a new one.
|
||||
- **A Signal's page** is an ordinary item list: All, Unread, Downloaded and Pinned, search and sort.
|
||||
|
||||
@@ -781,6 +781,10 @@ body.scan-this .fhead [data-a=scan] .i,body.scan-any .fhead [data-a=scanall] .i,
|
||||
.art>.tile{width:100%;height:100%;display:block}
|
||||
#pdead .tile{width:26px;height:26px;border-radius:6px}
|
||||
.art.ini{background:color-mix(in srgb,var(--tint) 24%,var(--bg));color:var(--tint)}
|
||||
/* A Signal: solid on the orange of the Signals icon's point (signals.svg, signals-dark.svg) in
|
||||
every theme, as the icon is, with the icon or initials in the logo's navy. */
|
||||
.art.ini.sig{background:#ff6a1a;color:#0c2238}
|
||||
:root[data-mode="light"] .art.ini.sig{background:#ff5500}
|
||||
/* A folder: its first four shows' art, as iTunes built a playlist's from its albums. */
|
||||
.art.mosaic{grid-template:1fr 1fr/1fr 1fr;place-items:stretch}
|
||||
.art.mosaic img{width:100%;height:100%;min-height:0;object-fit:cover;display:block}
|
||||
|
||||
@@ -34,12 +34,12 @@ function feedRow(id: string, cls: string, html: string, open: ()=>void){
|
||||
/// takes nothing else either).
|
||||
const ICON_ID=/^(solid|regular|brands)\/[a-z0-9-]{1,64}$/;
|
||||
const iconHTML=(icon: string)=>`<span class="ficon" style="--icon:url('/icons/${icon}.svg')"></span>`;
|
||||
/// Every Signal in the needle's colour (--accent2), the point of the folder's icon, icon or
|
||||
/// initials: tinted by a hash of its name, as a feed without art is, one came out a colour of its
|
||||
/// own for no reason anyone could see (#262).
|
||||
/// Every Signal on the orange of the folder icon's point (.art.sig), icon or initials: tinted by a
|
||||
/// hash of its name, as a feed without art is, one came out a colour of its own for no reason
|
||||
/// anyone could see (#262).
|
||||
function signalTile(sg: {name: string, icon: string|null}){
|
||||
const inner=sg.icon&&ICON_ID.test(sg.icon) ? iconHTML(sg.icon) : esc(initials(sg.name));
|
||||
return `<div class="art ini sig" style="--tint:var(--accent2)">${inner}</div>`;
|
||||
return `<div class="art ini sig">${inner}</div>`;
|
||||
}
|
||||
const badgeHTML=(n: number)=>`<span class="badge${n?'':' zero'}" title="${n} unread">${n>999?'999+':n}</span>`;
|
||||
function signalFolder(list: HTMLElement, q: string){
|
||||
|
||||
Reference in New Issue
Block a user