--- import { Icon } from "astro-icon/components"; import { twMerge } from "tailwind-merge"; import type { Item } from "~/types"; export interface Props { items?: Array; defaultIcon?: string; classes?: Record; } const { items = [], classes = {}, defaultIcon } = Astro.props as Props; const { container: containerClass = "", panel: panelClass = "", title: titleClass = "", description: descriptionClass = "", icon: defaultIconClass = "text-primary dark:text-slate-200 border-primary dark:border-blue-700", } = classes; --- { items && items.length && (
{items.map( ( { title, description, icon, classes: itemClasses = {} }, index = 0 ) => (
{(icon || defaultIcon) && ( )}
{index !== items.length - 1 && (
)}
{title && (

)} {description && (

)}

) )}
) }