From fcc2f4704e39b0e69b377cc138f75027721dac22 Mon Sep 17 00:00:00 2001 From: Dawid Rycerz Date: Tue, 22 Jul 2025 15:08:37 +0300 Subject: Initial template --- src/components/ui/ItemGrid.astro | 65 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 src/components/ui/ItemGrid.astro (limited to 'src/components/ui/ItemGrid.astro') diff --git a/src/components/ui/ItemGrid.astro b/src/components/ui/ItemGrid.astro new file mode 100644 index 0000000..79931b9 --- /dev/null +++ b/src/components/ui/ItemGrid.astro @@ -0,0 +1,65 @@ +--- +import type { ItemGrid as Props } from '~/types'; +import { twMerge } from 'tailwind-merge'; +import Button from './Button.astro'; +import { Icon } from 'astro-icon/components'; + +const { items = [], columns, defaultIcon = '', classes = {} } = Astro.props; + +const { + container: containerClass = '', + panel: panelClass = '', + title: titleClass = '', + description: descriptionClass = '', + icon: defaultIconClass = 'text-primary', + action: actionClass = '', +} = classes; +--- + +{ + items && items.length > 0 && ( +
+ {items.map(({ title, description, icon, callToAction, classes: itemClasses = {} }) => ( +
+
+
+ {(icon || defaultIcon) && ( + + )} +
+
+ {title &&

{title}

} + {description && ( +

+ )} + {callToAction && ( +

+
+ )} +
+
+
+ ))} +
+ ) +} -- cgit v1.2.3