Present mode: private speaker notes, audience window, presenter view
- Speaker notes are hidden on the presenting screen by default (N / "Show notes" turns them on for one-screen use), so a mirrored display never shows them. - "Audience window" opens a second window for a projector (?audience=1, no sign-in) that shows only the point, its passage and quoted verse. Notes, minutes, the script and the timer are never sent to it. - With it connected this screen becomes a presenter view: what the audience sees, your notes, the next point, plus Blank audience (B) and audience text size. - Script mode sends the audience only the title. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
0f1a181d87
commit
7ba5ed41b5
7 files changed
+317
-15
No files matched your search
@@ -0,0 +1,15 @@
|
||||
// One outline point as it appears on screen: the point, its passage and quoted verse, and what it carries.
|
||||
// Used for the whole screen in present mode, for the presenter's preview, and on the audience window. `note` and
|
||||
// `minutes` are only passed where the speaker is the one looking.
|
||||
export default function StepFace({ step, index, total, fontSize, minutes = null, note = '' }) {
|
||||
return (
|
||||
<div className="mx-auto max-w-[46em] font-serif" style={{ fontSize, lineHeight: 1.4 }}>
|
||||
<p className="font-sans text-[0.4em] uppercase tracking-[0.16em] opacity-60">{step.kind ? `${step.kind} · ` : ''}Point {index + 1} of {total}{minutes ? ` · ${minutes} min` : ''}</p>
|
||||
<h1 className="mt-2 font-semibold"><span className="mr-3 opacity-60">{step.label}</span>{step.text || '(untitled)'}</h1>
|
||||
{step.ref && <p className="mt-2 text-[0.6em] opacity-70">{step.ref}</p>}
|
||||
{step.scripture?.text && <blockquote className="mt-5 border-l-4 border-current/30 pl-5 text-[0.8em] italic opacity-90">“{step.scripture.text}” <span className="not-italic opacity-60">— {step.scripture.ref}</span></blockquote>}
|
||||
{note && <p className="mt-5 whitespace-pre-wrap text-[0.7em] opacity-85">{note}</p>}
|
||||
{step.attachments?.length > 0 && <p className="mt-5 text-[0.55em] opacity-60">{step.attachments.map((a) => `${a.type === 'word' ? 'Word' : 'See'}: ${a.label}`).join(' · ')}</p>}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in new issue
Block a user