--- import Button from "components/Button.astro"; import { type EndpointCredit, type PayloadImage, type RichTextContent, } from "src/shared/payload/payload-sdk"; import Credits from "./Credits.astro"; import DownloadButton from "./DownloadButton.astro"; import AppLayoutTitle from "./AppLayout/components/AppLayoutTitle.astro"; import type { ComponentProps } from "astro/types"; import AppLayoutDescription from "./AppLayout/components/AppLayoutDescription.astro"; import Attributes from "./Attributes.astro"; interface Props { previousImageHref?: string | undefined; nextImageHref?: string | undefined; image: PayloadImage; pretitle?: string | undefined; title: string; subtitle?: string | undefined; description?: RichTextContent | undefined; attributes?: ComponentProps["attributes"] | undefined; metaAttributes?: ComponentProps["attributes"] | undefined; credits?: EndpointCredit[] | undefined; filename?: string | undefined; } const { nextImageHref, previousImageHref, image: { url, width, height }, attributes = [], metaAttributes = [], credits = [], description, pretitle, title, subtitle, filename, } = Astro.props; const smallTitle = !subtitle && !pretitle; --- {/* ------------------------------------------- HTML ------------------------------------------- */}
0 || metaAttributes.length > 0 || credits.length > 0 || description, }}>
{ smallTitle ? (

{title}

) : ( ) } {description && }
{attributes.length > 0 && } {credits.length > 0 && } {metaAttributes.length > 0 && } {filename && }
{/* ------------------------------------------- CSS -------------------------------------------- */}