feat(quick-260907-fgv-02): sechs Marken-Stellen auf TesseraLogo umgestellt, Gelbwert zusammengefuehrt
- header.tsx, sidebar.tsx (Schublade), login/page.tsx (breit + schmal), reset-password/page.tsx, reset-password/[token]/page.tsx ziehen jetzt alle TesseraLogo statt eines von Hand gesetzten Schriftzugs - login/page.tsx: handgezeichneter Vier-Quadrate-Platzhalter entfernt, gelbes Panel nutzt BRAND_YELLOW per Inline-Style statt eigener Tailwind-Klasse, Kopfkommentar ohne Farbwert neu formuliert - account-settings-form.tsx: DEFAULT_ACCENT liest jetzt BRAND_YELLOW statt eines eigenen Literals - tessera-logo.tsx: Schriftzug setzt keine eigene Textfarbe mehr, sondern erbt sie vom umgebenden Container (Rule 1 -- ohne diese Korrektur waere der Schriftzug auf dem immer gelben Anmelde-Panel im dunklen Erscheinungsbild unlesbar hell auf hell gewesen) - sidebar.tsx: nicht mehr benoetigtes tCommon entfernt; sidebar.test.tsx um common.brand.logoAlt in der Uebersetzungs-Attrappe ergaenzt - vollstaendige Web-Testsuite (221 Tests) und Typpruefung gruen Docker-Neubau und Browser-Abnahme (curl-Health-Check gegen den lokalen Container) bewusst ausgelassen -- der Orchestrator uebernimmt beides in Task 3. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01K5jtbGzC5Sf9npJ3JCjKhq
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
import { useEffect, useRef, useState } from 'react';
|
||||
import Link from 'next/link';
|
||||
import { useTranslations } from 'next-intl';
|
||||
import { TesseraLogo } from '@/components/brand/tessera-logo';
|
||||
import { useSidebarStore } from '@/lib/stores/sidebar-store';
|
||||
import { useAuthStore } from '@/lib/stores/auth-store';
|
||||
import { fetchCurrentUser, logout } from '@/lib/auth-actions';
|
||||
@@ -88,9 +89,7 @@ export function Header() {
|
||||
<line x1="3" y1="18" x2="21" y2="18" />
|
||||
</svg>
|
||||
</button>
|
||||
<span className="text-lg font-bold text-primary">
|
||||
{t('common.appName')}
|
||||
</span>
|
||||
<TesseraLogo variant="horizontal" size={28} />
|
||||
</div>
|
||||
|
||||
{/* Center: Breadcrumb / page title */}
|
||||
|
||||
@@ -33,6 +33,7 @@ vi.mock('next-intl', () => ({
|
||||
},
|
||||
common: {
|
||||
appName: 'Tessera',
|
||||
'brand.logoAlt': 'Tessera Logo',
|
||||
},
|
||||
};
|
||||
return map[ns]?.[key] ?? key;
|
||||
|
||||
@@ -4,6 +4,7 @@ import { useCallback, useEffect, useMemo, useState } from 'react';
|
||||
import Link from 'next/link';
|
||||
import { usePathname } from 'next/navigation';
|
||||
import { useTranslations } from 'next-intl';
|
||||
import { TesseraLogo } from '@/components/brand/tessera-logo';
|
||||
import { useSidebarStore } from '@/lib/stores/sidebar-store';
|
||||
import { useMarketplaceStore } from '@/lib/stores/marketplace-store';
|
||||
import { SidebarSearch } from '@/components/layout/sidebar-search';
|
||||
@@ -19,7 +20,6 @@ interface SidebarModule {
|
||||
|
||||
export function Sidebar() {
|
||||
const t = useTranslations('sidebar');
|
||||
const tCommon = useTranslations('common');
|
||||
const { isCollapsed, isMobileOpen, toggle, setMobileOpen } = useSidebarStore();
|
||||
const [activeModules, setActiveModules] = useState<SidebarModule[]>([]);
|
||||
const [searchQuery, setSearchQuery] = useState('');
|
||||
@@ -223,9 +223,7 @@ export function Sidebar() {
|
||||
/>
|
||||
<aside className="fixed left-0 top-0 z-50 h-full w-[var(--sidebar-width)] bg-sidebar shadow-lg">
|
||||
<div className="flex h-[var(--header-height)] items-center justify-between border-b border-sidebar-border px-4">
|
||||
<span className="text-lg font-bold text-primary">
|
||||
{tCommon('appName')}
|
||||
</span>
|
||||
<TesseraLogo variant="horizontal" size={28} />
|
||||
<button
|
||||
onClick={() => setMobileOpen(false)}
|
||||
className="rounded-md p-2 text-muted-foreground hover:bg-muted hover:text-foreground transition-colors"
|
||||
|
||||
Reference in New Issue
Block a user