aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-18 09:51:55 -0500
committerCraig Jennings <c@cjennings.net>2026-07-18 09:51:55 -0500
commitb0db5e842d93564b1cb2e4b142ba0a0de1843fbd (patch)
treee1d8a0ccdfc07a1339d64f387200e7766bda28be /docs
parent3da976bd0287ebb632b0d8475f2e780d1b10e1b8 (diff)
downloadarchsetup-b0db5e842d93564b1cb2e4b142ba0a0de1843fbd.tar.gz
archsetup-b0db5e842d93564b1cb2e4b142ba0a0de1843fbd.zip
fix(gallery): split-flap defaults are paper cards, Helvetica, 100ms
The default skin is the white card with dark lettering, not white ink on black, and the default face is Helvetica. Both list first in their chip rows with the alternatives a click away. The base flap rate moves to 100ms. The probe pins all three defaults, and its cascade windows widen to match the slower base so worst-case travel keeps its margin.
Diffstat (limited to 'docs')
-rw-r--r--docs/prototypes/panel-widget-gallery.html8
-rw-r--r--docs/prototypes/widgets.js10
2 files changed, 9 insertions, 9 deletions
diff --git a/docs/prototypes/panel-widget-gallery.html b/docs/prototypes/panel-widget-gallery.html
index 5db6fab..9eaf18a 100644
--- a/docs/prototypes/panel-widget-gallery.html
+++ b/docs/prototypes/panel-widget-gallery.html
@@ -1578,8 +1578,8 @@ card(I,'26','Nixie tube',
(st,rd)=>GW.nixie(st,{onChange:(v,t)=>rd(t)}),
'<b>a single warm-glowing numeral.</b> One lit digit per tube, leading zeros dark. Click to increment the count.');
card(I,'N20','Split-flap display',
- (st)=>GW.splitFlap(st,{rows:3,cells:6,words:['SYSTEM','VOLUME','SIGNAL','RECORD','ONLINE','STEREO','STATUS','FILTER','TUNING','NEEDLE','SWITCH','TOGGLE','DIMMER','CHROME','MODULE','OUTPUT','SCREEN','COPPER','DYNAMO','PISTON','MAGNET','BEACON','RADIAL','BRIDGE'],animate:!reduced,skin:'white'}),
- '<b>flips to the new value.</b> A three-row, six-cell board; every advance sends each row to a different random word from the pool, and each cell runs at its own mechanical rate, so letters and whole words finish at different times. After settling it dwells two seconds, then advances. Click to advance now. Skins: white ink on black (default), the kit cream, the ivory board, or white cards with dark lettering; face in Berkeley Mono or Helvetica. The slider sets the flap rate.');
+ (st)=>GW.splitFlap(st,{rows:3,cells:6,words:['SYSTEM','VOLUME','SIGNAL','RECORD','ONLINE','STEREO','STATUS','FILTER','TUNING','NEEDLE','SWITCH','TOGGLE','DIMMER','CHROME','MODULE','OUTPUT','SCREEN','COPPER','DYNAMO','PISTON','MAGNET','BEACON','RADIAL','BRIDGE'],animate:!reduced,skin:'paper',font:'helv'}),
+ '<b>flips to the new value.</b> A three-row, six-cell board; every advance sends each row to a different random word from the pool, and each cell runs at its own mechanical rate, so letters and whole words finish at different times. After settling it dwells two seconds, then advances. Click to advance now. Skins: white cards with dark lettering (default), white ink on black, the kit cream, or the ivory board; face in Helvetica (default) or Berkeley Mono. The slider sets the flap rate.');
card(I,'N21','Seven-segment display',
(st,rd)=>GW.sevenSeg(st,{onChange:(v,t)=>rd(t)}),
'<b>a lit-segment number.</b> Green segments, distinct from the nixie glow. Live countdown; click to add a minute.');
@@ -1829,10 +1829,10 @@ function styleChips(no,STYLES,AXES,PRESETS,defPreset){
groups.forEach(g=>row.appendChild(g));
cardEl.querySelector('.opts').appendChild(row);
}
-styleChips('N20',GW.splitFlap.STYLES,[['skin','skin','white'],['font','font','mono']]);
+styleChips('N20',GW.splitFlap.STYLES,[['skin','skin','paper'],['font','font','helv']]);
(()=>{const h=$('card-N20').gw,row=document.querySelector('#card-N20 .famchips');if(!h||!row)return;
const gr=document.createElement('span');gr.className='fgroup';
- gr.innerHTML='<span class="lab">flap</span><input type="range" min="30" max="160" value="85" style="width:70px;accent-color:var(--gold);vertical-align:middle"><span class="lab fms">85ms</span>';
+ gr.innerHTML='<span class="lab">flap</span><input type="range" min="30" max="160" value="100" style="width:70px;accent-color:var(--gold);vertical-align:middle"><span class="lab fms">100ms</span>';
const sl=gr.querySelector('input'),ms=gr.querySelector('.fms');
sl.addEventListener('input',()=>{h.setFlapMs(+sl.value);ms.textContent=sl.value+'ms';});
row.appendChild(gr);})();
diff --git a/docs/prototypes/widgets.js b/docs/prototypes/widgets.js
index 0126949..8af2666 100644
--- a/docs/prototypes/widgets.js
+++ b/docs/prototypes/widgets.js
@@ -3659,9 +3659,9 @@ GW.nixie = function (host, opts = {}) {
Contract (everything a consumer needs; no page globals touched):
opts: rows (1) x cells (4) grid; chars (flap order, default space+A-Z+0-9);
- flapMs (85, per-cell rate jittered 0.8x-1.35x so letters finish
+ flapMs (100, per-cell rate jittered 0.8x-1.35x so letters finish
at different times, base mutable via setFlapMs); animate (true);
- skin ('white'|'dark'|'light'|'paper', card default white); font ('mono'|'helv');
+ skin ('paper'|'white'|'dark'|'light', card default paper); font ('helv'|'mono', card default helv);
words (the demo pool, at least rows+1 entries: next() sends every
row to a different random word, mutually distinct; set(i) pins the
top row for determinism); onChange(idx|-1, top word) fires at
@@ -3680,7 +3680,7 @@ GW.splitFlap = function (host, opts = {}) {
const cells = opts.cells || 4;
const chars = opts.chars || ' ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
const clampMs = ms => Math.min(400, Math.max(20, ms | 0));
- let flapMs = clampMs(opts.flapMs || 85);
+ let flapMs = clampMs(opts.flapMs || 100);
const ci = ch => Math.max(0, chars.indexOf(ch));
const fit = (str, w) => String(str).padEnd(w, ' ').slice(0, w);
@@ -3824,15 +3824,15 @@ GW.splitFlap.STYLES = {
// dot: the board colour; the gallery card letters each chip in the skin's
// ink so the swatch is a miniature flap cell, not an ambiguous colour dot
skin: {
+ paper: { cls: 'flap-paper', dot: '#ffffff' },
white: { cls: 'flap-white', dot: '#141210' },
dark: { cls: '', dot: '#141210' },
light: { cls: 'flap-light', dot: '#f3e7c5' },
- paper: { cls: 'flap-paper', dot: '#ffffff' },
},
// typeface: the kit's Berkeley Mono, or the grotesque real boards wore
font: {
- mono: { cls: '', dot: '#0d0c0b' },
helv: { cls: 'flap-helv', dot: '#0d0c0b' },
+ mono: { cls: '', dot: '#0d0c0b' },
},
};