--- // Import SecondaryCTA component for use in this module import SecondaryCTA from '@components/ui/buttons/SecondaryCTA.astro'; import Icon from '@components/ui/icons/Icon.astro'; import { localizeHref, type Locale } from '@/i18n'; // Define props from Astro const { pricing, locale = 'de' } = Astro.props; // Define TypeScript type for products. type Product = { name: string; description: string; price: string; cents: string; billingFrequency: string; features: Array; purchaseBtnTitle: string; purchaseLink: string; }; type Pricing = { title: string; subTitle: string; badge: string; thirdOption: string; btnText: string; starterKit: Product; professionalToolbox: Product; }; interface Props { pricing: Pricing; locale?: Locale; } ---
{/* Section heading and sub-heading */}

{pricing.title}

{pricing.subTitle}

{/* Contains two main product blocks */}
{/* Starter Kit product details */}

{pricing.starterKit.name}

{pricing.starterKit.description}

{pricing.starterKit.price} {pricing.starterKit.cents} {pricing.starterKit.billingFrequency}
{ /* Features list - automatically created by mapping over `features` array */ }
    { pricing.starterKit.features.map((feature: string) => (
  • {feature}
  • )) }
{/* CTA for purchasing the product */} {pricing.starterKit.purchaseBtnTitle}
{/* Professional Toolbox product details */}

{pricing.professionalToolbox.name}

{pricing.professionalToolbox.description}

{pricing.badge}
{pricing.professionalToolbox.price} {pricing.professionalToolbox.cents} {pricing.professionalToolbox.billingFrequency}
{ /* Features list - automatically created by mapping over `features` array */ }
    { pricing.professionalToolbox.features.map((feature: string) => (
  • {feature}
  • )) }
{/* CTA for purchasing the product */} {pricing.professionalToolbox.purchaseBtnTitle}
{/* Call to action for Enterprise Solutions */}

{pricing.thirdOption}