'use client' import { Badge } from '@thedaviddias/design-system/badge' import Link from 'next/link' import { EmptyState } from '@/components/empty-state' import { Card } from '@/components/ui/card' import { FaviconWithFallback } from '@/components/ui/favicon-with-fallback' import { WebsitesPaginatedGrid } from '@/components/ui/paginated-content' import type { WebsiteMetadata } from '@/lib/content-loader' import { getRoute } from '@/lib/routes' import { stripHtmlTags } from '@/lib/utils' interface WebsitesWithLoadMoreProps { websites: WebsiteMetadata[] variant?: 'button' | 'auto' | 'scroll' initialItemsPerPage?: number itemsPerLoad?: number } /** * Displays a grid of websites with load more functionality * @param props - The component props * @returns React component with paginated website grid */ export function WebsitesWithLoadMore({ websites, variant = 'button', initialItemsPerPage = 18, itemsPerLoad = 18 }: WebsitesWithLoadMoreProps) { /** * Renders a single website card */ const renderWebsite = (website: WebsiteMetadata, index: number) => (
{stripHtmlTags(website.description)}