43 lines
1.2 KiB
TypeScript
43 lines
1.2 KiB
TypeScript
import { PlaceholderValue, OnLoadingComplete } from "next/dist/shared/lib/get-img-props";
|
|
import Image, { ImageLoader } from "next/image";
|
|
import { JSX, DetailedHTMLProps, ImgHTMLAttributes, RefAttributes } from "react";
|
|
|
|
export default function Logo(
|
|
props: JSX.IntrinsicAttributes &
|
|
Omit<
|
|
DetailedHTMLProps<ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>,
|
|
"ref" | "height" | "width" | "loading" | "srcSet"
|
|
> & {
|
|
width?: number | `${number}`;
|
|
height?: number | `${number}`;
|
|
fill?: boolean;
|
|
loader?: ImageLoader;
|
|
quality?: number | `${number}`;
|
|
priority?: boolean;
|
|
loading?: "eager" | "lazy";
|
|
placeholder?: PlaceholderValue;
|
|
blurDataURL?: string;
|
|
unoptimized?: boolean;
|
|
overrideSrc?: string;
|
|
onLoadingComplete?: OnLoadingComplete;
|
|
layout?: string;
|
|
objectFit?: string;
|
|
objectPosition?: string;
|
|
lazyBoundary?: string;
|
|
lazyRoot?: string;
|
|
} & RefAttributes<HTMLImageElement | null>
|
|
) {
|
|
return (
|
|
<Image
|
|
className="dark:invert"
|
|
priority
|
|
unoptimized
|
|
src="/next.svg"
|
|
alt="Test logo"
|
|
width={200}
|
|
height={40}
|
|
{...props}
|
|
/>
|
|
);
|
|
}
|