* Make /db top-level module * Create Album type * Pin pnpm version * Generalize query modules * Finalize album postgres data type * Remove temp albums prop * Create basic album primitives * Fix temporary album bugs * Add albums to sidebar * Disambiguate string date utilities * Localize album language * Add album join option to core photo queries * Tweak album icon placement * Add album photo detail page * Refine Album data model * Display album subhead when available * Generate album og images * Finalize album share modal * Add albums to sitemap * Statically pre-render albums * Display tags on albums * Add albums to cmd-k menu * Handle album tag overflow * Stop truncating album subheads * Create core admin album views * Make albums editable * Create/edit albums on photo save, add delete album
42 lines
963 B
TypeScript
42 lines
963 B
TypeScript
'use client';
|
|
|
|
import { Photo, PhotoDateRangePostgres } from '@/photo';
|
|
import {
|
|
pathForFocalLength,
|
|
pathForFocalLengthImage,
|
|
} from '@/app/path';
|
|
import OGTile, { OGTilePropsCore } from '@/components/og/OGTile';
|
|
import { descriptionForFocalLengthPhotos, titleForFocalLength } from '.';
|
|
import { useAppText } from '@/i18n/state/client';
|
|
|
|
export default function FocalLengthOGTile({
|
|
focal,
|
|
photos,
|
|
count,
|
|
dateRange,
|
|
...props
|
|
}: {
|
|
focal: number
|
|
photos: Photo[]
|
|
count?: number
|
|
dateRange?: PhotoDateRangePostgres
|
|
} & OGTilePropsCore) {
|
|
const appText = useAppText();
|
|
return (
|
|
<OGTile {...{
|
|
...props,
|
|
title: titleForFocalLength(focal, photos, appText, count),
|
|
description:
|
|
descriptionForFocalLengthPhotos(
|
|
photos,
|
|
appText,
|
|
true,
|
|
count,
|
|
dateRange,
|
|
),
|
|
path: pathForFocalLength(focal),
|
|
pathImage: pathForFocalLengthImage(focal),
|
|
}}/>
|
|
);
|
|
};
|