"use client";
'use strict';

var clsx = require('clsx');
var tailwindMerge = require('tailwind-merge');
var reactSlot = require('@radix-ui/react-slot');
var classVarianceAuthority = require('class-variance-authority');
var jsxRuntime = require('react/jsx-runtime');
var img = require('@page-speed/img');

// lib/utils.ts
function cn(...inputs) {
  return tailwindMerge.twMerge(clsx.clsx(inputs));
}
var badgeVariants = classVarianceAuthority.cva(
  "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
  {
    variants: {
      variant: {
        default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
        secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
        destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
        outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
      }
    },
    defaultVariants: {
      variant: "default"
    }
  }
);
function Badge({
  className,
  variant,
  asChild = false,
  ...props
}) {
  const Comp = asChild ? reactSlot.Slot : "span";
  return /* @__PURE__ */ jsxRuntime.jsx(
    Comp,
    {
      "data-slot": "badge",
      className: cn(badgeVariants({ variant }), className),
      ...props
    }
  );
}
function Card({ className, ...props }) {
  return /* @__PURE__ */ jsxRuntime.jsx(
    "div",
    {
      "data-slot": "card",
      className: cn(
        "bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",
        className
      ),
      ...props
    }
  );
}
function CardHeader({ className, ...props }) {
  return /* @__PURE__ */ jsxRuntime.jsx(
    "div",
    {
      "data-slot": "card-header",
      className: cn(
        "@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-2 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",
        className
      ),
      ...props
    }
  );
}
function CardTitle({ className, ...props }) {
  return /* @__PURE__ */ jsxRuntime.jsx(
    "div",
    {
      "data-slot": "card-title",
      className: cn("leading-none font-semibold", className),
      ...props
    }
  );
}
function CardDescription({ className, ...props }) {
  return /* @__PURE__ */ jsxRuntime.jsx(
    "div",
    {
      "data-slot": "card-description",
      className: cn("text-muted-foreground text-sm", className),
      ...props
    }
  );
}
function CardContent({ className, ...props }) {
  return /* @__PURE__ */ jsxRuntime.jsx(
    "div",
    {
      "data-slot": "card-content",
      className: cn("px-6", className),
      ...props
    }
  );
}

// lib/blockBrandedIconsAndPlaceholders.ts
var blockBrandedIconsAndPlaceholders = {
  placeholder1: "https://cdn.ing/assets/files/record/286200/io0rg4wv8jd2o792q4uouxg4d5k8",
  placeholder3: "https://cdn.ing/assets/files/record/286203/itwrx0hqshkompfxvikdmj77xoh4",
  placeholder4: "https://cdn.ing/assets/files/record/286204/7rhj7uvcnozjm6c2q4txtptfcmpx",
  placeholder5: "https://cdn.ing/assets/files/record/286205/e0az5aimgxvqa11grxzaok7fbsvr",
  placeholder6: "https://cdn.ing/assets/files/record/286206/qs3jazsupq75q1fgisnonwnohie2",
  placeholderDark1: "https://cdn.ing/assets/files/record/286201/l8f27khqrs9eumdi9r0ihvbe886u"};
var defaultFeatures = [
  {
    title: "Interface",
    category: "Category",
    imageSrc: blockBrandedIconsAndPlaceholders.placeholder1,
    imageAlt: "User-Friendly Interface"
  },
  {
    title: "Analytics",
    category: "Category",
    imageSrc: blockBrandedIconsAndPlaceholders.placeholderDark1,
    imageAlt: "Advanced Analytics"
  },
  {
    title: "Integration",
    category: "Category",
    imageSrc: blockBrandedIconsAndPlaceholders.placeholder3,
    imageAlt: "Seamless Integration"
  },
  {
    title: "Customizable",
    category: "Category",
    imageSrc: blockBrandedIconsAndPlaceholders.placeholder4,
    imageAlt: "Customizable Features"
  },
  {
    title: "Support",
    category: "Category",
    imageSrc: blockBrandedIconsAndPlaceholders.placeholder5,
    imageAlt: "Reliable Support"
  },
  {
    title: "Security",
    category: "Category",
    imageSrc: blockBrandedIconsAndPlaceholders.placeholder6,
    imageAlt: "Secure Data Management"
  }
];
function FeatureCategoryImageCards({
  badge = "Exceptional Software",
  title = "Key Features",
  description = "Lorem ipsum dolor sit amet consectetur adipisicing elit. Ea quaerat odit sunt eaque ex, natus vel maxime tenetur odio? Nemo.",
  features = defaultFeatures,
  featuresSlot,
  className,
  containerClassName,
  headerClassName,
  badgeClassName,
  titleClassName,
  descriptionClassName,
  gridClassName,
  cardClassName,
  optixFlowConfig
}) {
  const renderFeatureImage = (feature) => {
    if (feature.imageSlot) return feature.imageSlot;
    if (feature.imageSrc) {
      return /* @__PURE__ */ jsxRuntime.jsx(
        img.Img,
        {
          src: feature.imageSrc,
          alt: feature.imageAlt || "Feature image",
          className: cn("w-full rounded-xl object-cover", feature.imageClassName),
          loading: "lazy",
          optixFlowConfig
        }
      );
    }
    return null;
  };
  const renderFeatures = () => {
    if (featuresSlot) return featuresSlot;
    if (!features || features.length === 0) return null;
    return features.map((feature, index) => /* @__PURE__ */ jsxRuntime.jsxs(Card, { className: cn("border-none bg-muted/60", cardClassName, feature.className), children: [
      /* @__PURE__ */ jsxRuntime.jsxs(CardHeader, { className: "text-center", children: [
        feature.title && (typeof feature.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(CardTitle, { className: cn("text-lg font-semibold md:text-2xl", feature.titleClassName), children: feature.title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("text-lg font-semibold md:text-2xl", feature.titleClassName), children: feature.title })),
        feature.category && (typeof feature.category === "string" ? /* @__PURE__ */ jsxRuntime.jsx(CardDescription, { className: cn("text-muted-foreground md:text-lg", feature.categoryClassName), children: feature.category }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("text-muted-foreground md:text-lg", feature.categoryClassName), children: feature.category }))
      ] }),
      /* @__PURE__ */ jsxRuntime.jsx(CardContent, { className: "px-7 pb-7", children: renderFeatureImage(feature) })
    ] }, index));
  };
  return /* @__PURE__ */ jsxRuntime.jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("container", containerClassName), children: [
    /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex flex-col items-center justify-center gap-4 text-center", headerClassName), children: [
      badge && /* @__PURE__ */ jsxRuntime.jsx(Badge, { variant: "outline", className: badgeClassName, children: badge }),
      title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("text-3xl font-semibold md:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("text-3xl font-semibold md:text-5xl", titleClassName), children: title })),
      description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("max-w-2xl text-muted-foreground md:text-lg", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("max-w-2xl text-muted-foreground md:text-lg", descriptionClassName), children: description }))
    ] }),
    /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mx-auto mt-20 grid max-w-7xl gap-7 md:grid-cols-2 lg:grid-cols-3", gridClassName), children: renderFeatures() })
  ] }) });
}

exports.FeatureCategoryImageCards = FeatureCategoryImageCards;
//# sourceMappingURL=feature-category-image-cards.cjs.map
//# sourceMappingURL=feature-category-image-cards.cjs.map