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:
@@ -13,12 +13,12 @@
|
||||
'use client';
|
||||
|
||||
interface ImageLoaderParams {
|
||||
src: string;
|
||||
width: number;
|
||||
quality?: number;
|
||||
src: string;
|
||||
width: number;
|
||||
quality?: number;
|
||||
}
|
||||
|
||||
export default function immichLoader({ src, width, quality }: ImageLoaderParams): string {
|
||||
const separator = src.includes('?') ? '&' : '?';
|
||||
return `${src}${separator}w=${width}&q=${quality || 75}`;
|
||||
const separator = src.includes('?') ? '&' : '?';
|
||||
return `${src}${separator}w=${width}&q=${quality || 75}`;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user