/* Die Symbole der Oberfläche. ---------------------------------------------------------------------------- Als Vektor, nicht als Schriftzeichen. Ein Wiedergabedreieck oder ein Lautsprecher-Emoji wird auf jeder Plattform anders gezeichnet, trägt fremde Farben, sitzt schief auf der Grundlinie und lässt sich weder in der Strichstärke noch in der Farbe anpassen — es sieht nach Platzhalter aus, weil es einer ist. `currentColor` erbt Farbe und Zustand vom Knopf darum. */ type Zeichner = string | ((n: number) => string); const ICONS: Record = { play: '', waveform: '', speed: '', // Kreispfeile mit der Sekundenzahl darin — dasselbe Bild wie // `gobackward.10` und `goforward.30` auf dem iPad. goBack: (n) => `` + `${n}`, goFwd: (n) => `` + `${n}`, captions: '', captionsOn: '', check: '', // Rechteck mit Balken oben bzw. Spalte links — die Leiste zieht dorthin. barTop: '' + '', barSide: '' + '', pause: '', close: '', sound: '', muted: '', expand: '', left: '', right: '', up: '', down: '', } /** Ein Symbol als Vektor. `size` nur, wo es von der Vorgabe abweicht. */ export function icon(name: keyof typeof ICONS, size?: number, arg?: number): string { const eintrag = ICONS[name]; const inhalt = typeof eintrag === 'function' ? eintrag(arg ?? 0) : eintrag; return ``; }