feat: visual polish & UX — fade-in, theme toggle, scroll-to-top, footer, cursor, badge
- Add FadeIn component (IntersectionObserver scroll-reveal + load animation) - Add dark/light theme toggle (useSyncExternalStore + localStorage) - Add scroll-to-top button (appears after 300px scroll) - Add configurable footer with social links (gallery.yaml) - Add crosshair cursor on photo grid items - Add 'X photos' count badge on subpage cover images - Add light theme color palette in tokens.css
This commit is contained in:
23
e2e/about.spec.ts
Normal file
23
e2e/about.spec.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { test, expect } from '@playwright/test';
|
||||
|
||||
test.describe('About page', () => {
|
||||
test('loads and shows the about content', async ({ page }) => {
|
||||
await page.goto('/about');
|
||||
const about = page.locator('.about');
|
||||
await expect(about).toBeVisible();
|
||||
});
|
||||
|
||||
test('has a portrait column', async ({ page }) => {
|
||||
await page.goto('/about');
|
||||
const portrait = page.locator('.about__portrait-col');
|
||||
await expect(portrait).toBeVisible();
|
||||
});
|
||||
|
||||
test('has a text column with name', async ({ page }) => {
|
||||
await page.goto('/about');
|
||||
const name = page.locator('.about__name');
|
||||
await expect(name).toBeVisible();
|
||||
const text = await name.textContent();
|
||||
expect(text).toBeTruthy();
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user