feat(team): Porträts der digitalen Mitarbeiter aus dem Konzept übernehmen
Bisher zeigten die Avatare Initialen auf einer Tonfarbe. Ich hatte das bewusst so gebaut, weil erfundene Gesichter in einer Kundendemo irreführend wären — das Konzeptdokument «Agenten_Bewirtschaftung_v2.html» trifft diese Entscheidung jedoch bereits: dort hängt an jedem der 36 Agenten ein Porträt als eingebettetes JPEG. Die sieben Kernagenten sind daraus extrahiert. - src/assets/team/*.jpg — sieben Porträts, je rund 6 KB, Zuordnung über die Mailadresse aus dem Konzept, die exakt unseren Agenten-IDs entspricht - agentPhotos.ts hält die Zuordnung in der Darstellungsschicht. Ein Domain-Typ, der Binärdateien importiert, wäre an den Bundler gekoppelt und weder im Test noch später gegen ein echtes Backend sauber verwendbar. - Fehlt zu einer ID ein Bild, zeigt der Avatar weiterhin die Initialen; dasselbe greift, wenn das Laden fehlschlägt Der zugängliche Name hängt weiterhin an genau einem Element, nie an zweien: mit Porträt am erzeugten <img> über `alt`, ohne Porträt am Container über role="img" und aria-label. vite-env.d.ts ergänzt — die Referenz auf vite/client fehlte, ohne sie kennt TypeScript die Modul-Deklarationen für Assets nicht. 415 Tests grün, Build grün, die sieben JPEGs werden korrekt als Assets emittiert. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
a7e05fb7f0
commit
576733d7da
11 files changed
+64
-9
No files matched your search
@@ -0,0 +1,33 @@
|
||||
/**
|
||||
* Property On — Porträts der digitalen Mitarbeiter.
|
||||
*
|
||||
* Die Bilder stammen aus dem Konzeptdokument «Agenten_Bewirtschaftung_v2.html»,
|
||||
* wo sie als eingebettete JPEGs am jeweiligen Agenten hängen. Sie sind damit
|
||||
* Teil der fachlichen Vorgabe, nicht eine gestalterische Zutat: das digitale
|
||||
* Personalbüro zeigt Mitarbeiter mit Gesicht, nicht abstrakte Werkzeuge.
|
||||
*
|
||||
* Die Zuordnung liegt bewusst in der Darstellungsschicht und nicht in
|
||||
* `domain/teamAgent.ts` oder den Mockdaten. Ein Domain-Typ, der Binärdateien
|
||||
* importiert, wäre an den Bundler gekoppelt und liesse sich weder in einem Test
|
||||
* noch später gegen ein echtes Backend sauber verwenden.
|
||||
*
|
||||
* Fehlt zu einer ID ein Bild, fällt `AgentAvatar` auf die Initialen zurück.
|
||||
*/
|
||||
|
||||
import bruno from '../../assets/team/bruno.jpg'
|
||||
import ferdi from '../../assets/team/ferdi.jpg'
|
||||
import lea from '../../assets/team/lea.jpg'
|
||||
import livia from '../../assets/team/livia.jpg'
|
||||
import nora from '../../assets/team/nora.jpg'
|
||||
import reto from '../../assets/team/reto.jpg'
|
||||
import sina from '../../assets/team/sina.jpg'
|
||||
|
||||
export const AGENT_PHOTOS: Record<string, string | undefined> = {
|
||||
bruno,
|
||||
ferdi,
|
||||
lea,
|
||||
livia,
|
||||
nora,
|
||||
reto,
|
||||
sina,
|
||||
}
|
||||
Reference in new issue
Block a user