@opensite/ui 3.7.9 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/registry.js CHANGED
@@ -15029,7 +15029,7 @@ function ContactDemo({
15029
15029
  as: "h2",
15030
15030
  text: heading,
15031
15031
  className: cn(
15032
- "text-5xl lg:text-6xl xl:text-7xl text-pretty font-bold text-left md:text-center",
15032
+ "justify-start text-left text-5xl font-bold text-pretty md:justify-center md:text-center lg:text-6xl xl:text-7xl",
15033
15033
  headingClassName
15034
15034
  ),
15035
15035
  animateBy: "words",
@@ -35787,7 +35787,6 @@ function BlogCardsTaglineCta({
35787
35787
  postsSlot,
35788
35788
  readMoreText,
35789
35789
  className,
35790
- containerClassName,
35791
35790
  headerClassName,
35792
35791
  badgeClassName,
35793
35792
  headingClassName,
@@ -35797,7 +35796,8 @@ function BlogCardsTaglineCta({
35797
35796
  postCardClassName,
35798
35797
  optixFlowConfig,
35799
35798
  background,
35800
- spacing,
35799
+ containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
35800
+ spacing = "lg",
35801
35801
  pattern,
35802
35802
  patternOpacity
35803
35803
  }) {
@@ -35841,7 +35841,7 @@ function BlogCardsTaglineCta({
35841
35841
  Card,
35842
35842
  {
35843
35843
  className: cn(
35844
- "grid grid-rows-[auto_auto_1fr_auto] overflow-hidden pt-0",
35844
+ "grid grid-rows-[auto_auto_1fr_auto] gap-4 overflow-hidden pt-0",
35845
35845
  postCardClassName
35846
35846
  ),
35847
35847
  children: [
@@ -35856,13 +35856,14 @@ function BlogCardsTaglineCta({
35856
35856
  src: post.image,
35857
35857
  alt: postTitle,
35858
35858
  className: "h-full w-full object-cover object-center",
35859
- optixFlowConfig
35859
+ optixFlowConfig,
35860
+ loading: "eager"
35860
35861
  }
35861
35862
  )
35862
35863
  }
35863
35864
  ) }),
35864
- /* @__PURE__ */ jsx(CardHeader, { children: post.title && /* @__PURE__ */ jsx("h3", { className: "text-lg font-semibold hover:underline md:text-xl", children: /* @__PURE__ */ jsx(Pressable, { href: postHref, children: post.title }) }) }),
35865
- /* @__PURE__ */ jsx(CardContent, { children: postSummary && /* @__PURE__ */ jsx("p", { className: "text-muted-foreground", children: postSummary }) }),
35865
+ /* @__PURE__ */ jsx(CardHeader, { className: post.image ? "pt-0" : "pt-6", children: post.title && /* @__PURE__ */ jsx("h3", { className: "text-lg font-semibold hover:underline md:text-xl", children: /* @__PURE__ */ jsx(Pressable, { href: postHref, children: post.title }) }) }),
35866
+ /* @__PURE__ */ jsx(CardContent, { children: postSummary && /* @__PURE__ */ jsx("p", { className: "opacity-70 line-clamp-4", children: postSummary }) }),
35866
35867
  /* @__PURE__ */ jsx(CardFooter, { children: readMoreText && /* @__PURE__ */ jsxs(
35867
35868
  Pressable,
35868
35869
  {
@@ -35896,60 +35897,52 @@ function BlogCardsTaglineCta({
35896
35897
  className: cn(className),
35897
35898
  pattern,
35898
35899
  patternOpacity,
35899
- children: /* @__PURE__ */ jsxs(
35900
- "div",
35901
- {
35902
- className: cn(
35903
- "container mx-auto flex flex-col items-center gap-16 lg:px-16",
35904
- containerClassName
35905
- ),
35906
- children: [
35907
- /* @__PURE__ */ jsxs(
35908
- "div",
35909
- {
35910
- className: cn(
35911
- "text-center flex flex-col items-center px-4 md:px-0",
35912
- headerClassName
35913
- ),
35914
- children: [
35915
- badge && (typeof badge === "string" ? /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: cn("mb-6", badgeClassName), children: badge }) : /* @__PURE__ */ jsx("div", { className: cn("mb-6", badgeClassName), children: badge })),
35916
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
35917
- "h2",
35918
- {
35919
- className: cn(
35920
- "mb-3 text-3xl font-semibold text-pretty md:mb-4 md:text-4xl lg:mb-6 lg:max-w-3xl lg:text-5xl",
35921
- headingClassName
35922
- ),
35923
- children: heading
35924
- }
35925
- ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
35926
- description && (typeof description === "string" ? /* @__PURE__ */ jsx(
35927
- "p",
35928
- {
35929
- className: cn(
35930
- "mb-8 text-muted-foreground md:text-base lg:max-w-2xl lg:text-lg text-balance",
35931
- descriptionClassName
35932
- ),
35933
- children: description
35934
- }
35935
- ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
35936
- ctaActionContent
35937
- ]
35938
- }
35900
+ containerClassName,
35901
+ children: /* @__PURE__ */ jsxs("div", { className: "mx-auto flex flex-col items-center gap-16 lg:px-16", children: [
35902
+ /* @__PURE__ */ jsxs(
35903
+ "div",
35904
+ {
35905
+ className: cn(
35906
+ "text-center flex flex-col items-center px-4 md:px-0",
35907
+ headerClassName
35939
35908
  ),
35940
- /* @__PURE__ */ jsx(
35941
- "div",
35942
- {
35943
- className: cn(
35944
- "grid gap-6 md:grid-cols-2 lg:grid-cols-3 lg:gap-8",
35945
- postsClassName
35946
- ),
35947
- children: postsContent
35948
- }
35949
- )
35950
- ]
35951
- }
35952
- )
35909
+ children: [
35910
+ badge && (typeof badge === "string" ? /* @__PURE__ */ jsx(Badge, { className: cn("mb-6", badgeClassName), children: badge }) : badge),
35911
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
35912
+ "h2",
35913
+ {
35914
+ className: cn(
35915
+ "mb-3 text-3xl font-semibold text-pretty md:mb-4 md:text-4xl lg:mb-6 lg:max-w-3xl lg:text-5xl",
35916
+ headingClassName
35917
+ ),
35918
+ children: heading
35919
+ }
35920
+ ) : heading),
35921
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx(
35922
+ "p",
35923
+ {
35924
+ className: cn(
35925
+ "mb-8 md:text-base max-w-full md:max-w-md lg:text-lg text-balance",
35926
+ descriptionClassName
35927
+ ),
35928
+ children: description
35929
+ }
35930
+ ) : description),
35931
+ ctaActionContent
35932
+ ]
35933
+ }
35934
+ ),
35935
+ /* @__PURE__ */ jsx(
35936
+ "div",
35937
+ {
35938
+ className: cn(
35939
+ "grid gap-6 md:grid-cols-2 lg:grid-cols-3 lg:gap-8",
35940
+ postsClassName
35941
+ ),
35942
+ children: postsContent
35943
+ }
35944
+ )
35945
+ ] })
35953
35946
  }
35954
35947
  );
35955
35948
  }
@@ -64502,6 +64495,64 @@ var NavbarMegaMenu = ({
64502
64495
  }
64503
64496
  );
64504
64497
  };
64498
+ var PANEL_MAX_WIDTH_CLASS = "max-w-[calc(100vw-4rem)]";
64499
+ var hasItems = (items) => Array.isArray(items) && items.length > 0;
64500
+ var hasFeaturedHeroCardContent = (card) => Boolean(
64501
+ card && (card.title || card.subtitle || card.description || card.image)
64502
+ );
64503
+ var FeaturedHeroCardPanel = ({
64504
+ card,
64505
+ optixFlowConfig,
64506
+ className,
64507
+ contentClassName,
64508
+ imageContainerClassName = "relative aspect-video w-full overflow-hidden",
64509
+ imageClassName,
64510
+ contentFirst
64511
+ }) => {
64512
+ const image = card.image ? /* @__PURE__ */ jsx("div", { className: imageContainerClassName, children: /* @__PURE__ */ jsx(
64513
+ Img,
64514
+ {
64515
+ src: card.image,
64516
+ alt: card.title,
64517
+ className: cn("h-full w-full object-cover", imageClassName),
64518
+ optixFlowConfig,
64519
+ loading: "eager"
64520
+ }
64521
+ ) }) : null;
64522
+ const content = /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col p-5", contentClassName), children: [
64523
+ card.subtitle && /* @__PURE__ */ jsx("span", { className: "mb-2 text-xs font-medium tracking-wider uppercase", children: card.subtitle }),
64524
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
64525
+ card.title,
64526
+ /* @__PURE__ */ jsx(
64527
+ DynamicIcon,
64528
+ {
64529
+ name: "lucide/arrow-right",
64530
+ size: 16,
64531
+ className: "shrink-0 transition-transform group-hover:translate-x-1"
64532
+ }
64533
+ )
64534
+ ] }),
64535
+ card.description && /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed opacity-90", children: card.description })
64536
+ ] });
64537
+ return /* @__PURE__ */ jsx(
64538
+ Pressable,
64539
+ {
64540
+ href: card.href,
64541
+ className: cn(
64542
+ "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
64543
+ card.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary",
64544
+ className
64545
+ ),
64546
+ children: contentFirst ? /* @__PURE__ */ jsxs(Fragment, { children: [
64547
+ content,
64548
+ image
64549
+ ] }) : /* @__PURE__ */ jsxs(Fragment, { children: [
64550
+ image,
64551
+ content
64552
+ ] })
64553
+ }
64554
+ );
64555
+ };
64505
64556
  var SolutionsMenu = ({
64506
64557
  solutionCards,
64507
64558
  platformItems,
@@ -64509,492 +64560,458 @@ var SolutionsMenu = ({
64509
64560
  featuredHeroCard,
64510
64561
  optixFlowConfig
64511
64562
  }) => {
64512
- const featuredCard = featuredHeroCard ? /* @__PURE__ */ jsxs(
64513
- Pressable,
64514
- {
64515
- href: featuredHeroCard.href,
64516
- className: cn(
64517
- "group flex h-full min-h-[420px] flex-col overflow-hidden rounded-lg text-primary-foreground",
64518
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
64519
- ),
64520
- children: [
64521
- /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 flex-col justify-between p-5", children: [
64522
- featuredHeroCard.subtitle && /* @__PURE__ */ jsx("span", { className: "mb-2 text-xs font-medium tracking-wider uppercase", children: featuredHeroCard.subtitle }),
64523
- /* @__PURE__ */ jsxs("div", { children: [
64524
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
64525
- featuredHeroCard.title,
64526
- /* @__PURE__ */ jsx(
64527
- DynamicIcon,
64528
- {
64529
- name: "lucide/arrow-right",
64530
- size: 16,
64531
- className: "transition-transform group-hover:translate-x-1"
64532
- }
64533
- )
64534
- ] }),
64535
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed text-primary-foreground/85", children: featuredHeroCard.description })
64536
- ] })
64537
- ] }),
64538
- /* @__PURE__ */ jsx("div", { className: "relative min-h-0 flex-1 overflow-hidden", children: /* @__PURE__ */ jsx(
64539
- Img,
64540
- {
64541
- src: featuredHeroCard.image,
64542
- alt: featuredHeroCard.title,
64543
- className: "h-full w-full object-cover",
64544
- optixFlowConfig,
64545
- loading: "eager"
64546
- }
64547
- ) })
64548
- ]
64563
+ const visibleSolutionCards = solutionCards.filter(Boolean);
64564
+ const visiblePlatformItems = platformItems.filter(Boolean);
64565
+ const hasFeaturedCard = hasFeaturedHeroCardContent(featuredHeroCard);
64566
+ const hasPlatformSection = hasItems(visiblePlatformItems);
64567
+ const hasSolutionSection = hasItems(visibleSolutionCards);
64568
+ const hasRightColumn = hasPlatformSection || hasSolutionSection;
64569
+ if (!hasFeaturedCard && !hasRightColumn) return null;
64570
+ const featuredCard = hasFeaturedCard && featuredHeroCard ? /* @__PURE__ */ jsx(
64571
+ FeaturedHeroCardPanel,
64572
+ {
64573
+ card: featuredHeroCard,
64574
+ optixFlowConfig,
64575
+ contentFirst: true,
64576
+ className: cn(featuredHeroCard.image && "min-h-[420px]"),
64577
+ imageContainerClassName: "relative min-h-0 flex-1 overflow-hidden"
64549
64578
  }
64550
64579
  ) : null;
64551
- const platformSection = platformItems.length > 0 ? /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
64580
+ const platformSection = hasPlatformSection ? /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
64552
64581
  /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: platformTitle }) }),
64553
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-2", children: platformItems.map((technology) => /* @__PURE__ */ jsxs(
64554
- NavigationMenuLink,
64582
+ /* @__PURE__ */ jsx(
64583
+ "div",
64555
64584
  {
64556
- href: technology.href,
64557
- className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 hover:bg-muted",
64558
- children: [
64559
- /* @__PURE__ */ jsx(
64560
- DynamicIcon,
64561
- {
64562
- name: technology.icon,
64563
- size: 16,
64564
- className: "shrink-0"
64565
- }
64566
- ),
64567
- /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 text-sm font-medium", children: technology.title })
64568
- ]
64569
- },
64570
- technology.id
64571
- )) })
64572
- ] }) : null;
64573
- const solutionSection = solutionCards.length > 0 ? /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-3", children: solutionCards.map((solution) => /* @__PURE__ */ jsxs(
64574
- "div",
64575
- {
64576
- className: "flex min-w-0 flex-col rounded-lg border border-border p-4",
64577
- children: [
64578
- /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-3", children: /* @__PURE__ */ jsxs(
64579
- Pressable,
64580
- {
64581
- href: solution.href,
64582
- className: "group flex min-w-0 flex-col text-left",
64583
- children: [
64584
- /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-1", children: [
64585
- /* @__PURE__ */ jsx("strong", { className: "min-w-0 break-words text-sm font-medium", children: solution.title }),
64586
- /* @__PURE__ */ jsx(
64587
- DynamicIcon,
64588
- {
64589
- name: "lucide/arrow-right",
64590
- size: 14,
64591
- className: "shrink-0 transition-transform group-hover:translate-x-1"
64592
- }
64593
- )
64594
- ] }),
64595
- /* @__PURE__ */ jsx("p", { className: "mt-1 break-words text-xs text-muted-foreground", children: solution.description })
64596
- ]
64597
- }
64598
- ) }),
64599
- /* @__PURE__ */ jsx("menu", { className: "mt-3 grid gap-2", children: solution.subpages.map((subpage) => /* @__PURE__ */ jsxs(
64585
+ className: cn(
64586
+ "grid gap-2",
64587
+ hasFeaturedCard ? "grid-cols-2" : "grid-cols-[repeat(auto-fit,minmax(160px,1fr))]"
64588
+ ),
64589
+ children: visiblePlatformItems.map((technology) => /* @__PURE__ */ jsxs(
64600
64590
  NavigationMenuLink,
64601
64591
  {
64602
- href: subpage.href,
64603
- className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64592
+ href: technology.href,
64593
+ className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 hover:bg-muted",
64604
64594
  children: [
64605
64595
  /* @__PURE__ */ jsx(
64606
64596
  DynamicIcon,
64607
64597
  {
64608
- name: subpage.icon,
64609
- size: 14,
64598
+ name: technology.icon,
64599
+ size: 16,
64610
64600
  className: "shrink-0"
64611
64601
  }
64612
64602
  ),
64613
- /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 break-words text-sm font-medium", children: subpage.title })
64603
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 text-sm font-medium", children: technology.title })
64614
64604
  ]
64615
64605
  },
64616
- subpage.id
64617
- )) })
64618
- ]
64619
- },
64620
- solution.id
64621
- )) }) : null;
64622
- if (featuredCard) {
64623
- return /* @__PURE__ */ jsxs("div", { className: "grid w-[1200px] max-w-[calc(100vw-4rem)] grid-cols-[minmax(380px,1fr)_minmax(360px,0.95fr)] gap-4", children: [
64624
- /* @__PURE__ */ jsx("div", { className: "min-w-0", children: featuredCard }),
64625
- /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col gap-4", children: [
64626
- platformSection,
64627
- solutionSection
64628
- ] })
64629
- ] });
64630
- }
64631
- return /* @__PURE__ */ jsxs("div", { className: "grid w-[1200px] max-w-[calc(100vw-4rem)] grid-cols-2 gap-4", children: [
64632
- platformSection,
64633
- solutionCards.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-2 grid grid-cols-4 gap-3", children: solutionCards.map((solution) => /* @__PURE__ */ jsxs(
64634
- "div",
64635
- {
64636
- className: "flex min-w-0 flex-col rounded-lg border border-border p-4",
64637
- children: [
64638
- /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-3", children: /* @__PURE__ */ jsxs(
64639
- Pressable,
64640
- {
64641
- href: solution.href,
64642
- className: "group flex min-w-0 flex-col text-left",
64643
- children: [
64644
- /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-1", children: [
64645
- /* @__PURE__ */ jsx("strong", { className: "min-w-0 break-words text-sm font-medium", children: solution.title }),
64606
+ technology.id
64607
+ ))
64608
+ }
64609
+ )
64610
+ ] }) : null;
64611
+ const solutionSection = hasSolutionSection ? /* @__PURE__ */ jsx(
64612
+ "div",
64613
+ {
64614
+ className: cn(
64615
+ "grid gap-3",
64616
+ hasFeaturedCard ? "grid-cols-2" : "grid-cols-[repeat(auto-fit,minmax(220px,1fr))]"
64617
+ ),
64618
+ children: visibleSolutionCards.map((solution) => /* @__PURE__ */ jsxs(
64619
+ "div",
64620
+ {
64621
+ className: "flex min-w-0 flex-col rounded-lg border border-border p-4",
64622
+ children: [
64623
+ /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-3", children: /* @__PURE__ */ jsxs(
64624
+ Pressable,
64625
+ {
64626
+ href: solution.href,
64627
+ className: "group flex min-w-0 flex-col text-left",
64628
+ children: [
64629
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-1", children: [
64630
+ /* @__PURE__ */ jsx("strong", { className: "min-w-0 break-words text-sm font-medium", children: solution.title }),
64631
+ /* @__PURE__ */ jsx(
64632
+ DynamicIcon,
64633
+ {
64634
+ name: "lucide/arrow-right",
64635
+ size: 14,
64636
+ className: "shrink-0 transition-transform group-hover:translate-x-1"
64637
+ }
64638
+ )
64639
+ ] }),
64640
+ /* @__PURE__ */ jsx("p", { className: "mt-1 break-words text-xs text-muted-foreground", children: solution.description })
64641
+ ]
64642
+ }
64643
+ ) }),
64644
+ /* @__PURE__ */ jsx("menu", { className: "mt-3 grid gap-2", children: (solution.subpages ?? []).map((subpage) => /* @__PURE__ */ jsxs(
64645
+ NavigationMenuLink,
64646
+ {
64647
+ href: subpage.href,
64648
+ className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64649
+ children: [
64646
64650
  /* @__PURE__ */ jsx(
64647
64651
  DynamicIcon,
64648
64652
  {
64649
- name: "lucide/arrow-right",
64653
+ name: subpage.icon,
64650
64654
  size: 14,
64651
- className: "shrink-0 transition-transform group-hover:translate-x-1"
64655
+ className: "shrink-0"
64652
64656
  }
64653
- )
64654
- ] }),
64655
- /* @__PURE__ */ jsx("p", { className: "mt-1 break-words text-xs text-muted-foreground", children: solution.description })
64656
- ]
64657
- }
64658
- ) }),
64659
- /* @__PURE__ */ jsx("menu", { className: "mt-3 grid gap-2", children: solution.subpages.map((subpage) => /* @__PURE__ */ jsxs(
64660
- NavigationMenuLink,
64661
- {
64662
- href: subpage.href,
64663
- className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64664
- children: [
64665
- /* @__PURE__ */ jsx(
64666
- DynamicIcon,
64667
- {
64668
- name: subpage.icon,
64669
- size: 14,
64670
- className: "shrink-0"
64671
- }
64672
- ),
64673
- /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 break-words text-sm font-medium", children: subpage.title })
64674
- ]
64675
- },
64676
- subpage.id
64677
- )) })
64678
- ]
64679
- },
64680
- solution.id
64681
- )) })
64682
- ] });
64657
+ ),
64658
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 break-words text-sm font-medium", children: subpage.title })
64659
+ ]
64660
+ },
64661
+ subpage.id
64662
+ )) })
64663
+ ]
64664
+ },
64665
+ solution.id
64666
+ ))
64667
+ }
64668
+ ) : null;
64669
+ return /* @__PURE__ */ jsxs(
64670
+ "div",
64671
+ {
64672
+ className: cn(
64673
+ "grid gap-4",
64674
+ PANEL_MAX_WIDTH_CLASS,
64675
+ hasFeaturedCard && hasRightColumn ? "w-[1200px] grid-cols-[minmax(380px,1fr)_minmax(360px,0.95fr)]" : hasFeaturedCard ? "w-[560px] grid-cols-1" : hasSolutionSection ? "w-[900px] grid-cols-1" : "w-[520px] grid-cols-1"
64676
+ ),
64677
+ children: [
64678
+ featuredCard && /* @__PURE__ */ jsx("div", { className: "min-w-0", children: featuredCard }),
64679
+ hasRightColumn && /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col gap-4", children: [
64680
+ platformSection,
64681
+ solutionSection
64682
+ ] })
64683
+ ]
64684
+ }
64685
+ );
64683
64686
  };
64684
64687
  var ProductsMenu = ({
64685
64688
  productCategories,
64686
64689
  featuredHeroCard,
64687
64690
  optixFlowConfig
64688
- }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1100px] grid-cols-[320px_1fr] gap-6", children: [
64689
- featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
64690
- Pressable,
64691
+ }) => {
64692
+ const visibleCategories = productCategories.filter(
64693
+ (category) => hasItems(category.products)
64694
+ );
64695
+ const hasFeaturedCard = hasFeaturedHeroCardContent(featuredHeroCard);
64696
+ const hasProductContent = hasItems(visibleCategories);
64697
+ if (!hasFeaturedCard && !hasProductContent) return null;
64698
+ return /* @__PURE__ */ jsxs(
64699
+ "div",
64691
64700
  {
64692
- href: featuredHeroCard.href,
64693
64701
  className: cn(
64694
- "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
64695
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
64702
+ "grid gap-6",
64703
+ PANEL_MAX_WIDTH_CLASS,
64704
+ hasFeaturedCard && hasProductContent ? "w-[1100px] grid-cols-[320px_1fr]" : hasProductContent ? "w-[860px] grid-cols-1" : "w-[360px] grid-cols-1"
64696
64705
  ),
64697
64706
  children: [
64698
- /* @__PURE__ */ jsx("div", { className: "relative aspect-video w-full overflow-hidden", children: /* @__PURE__ */ jsx(
64699
- Img,
64707
+ hasFeaturedCard && featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1 min-w-0", children: /* @__PURE__ */ jsx(
64708
+ FeaturedHeroCardPanel,
64700
64709
  {
64701
- src: featuredHeroCard.image,
64702
- alt: featuredHeroCard.title,
64703
- className: "h-full w-full object-cover",
64704
- optixFlowConfig,
64705
- loading: "eager"
64710
+ card: featuredHeroCard,
64711
+ optixFlowConfig
64706
64712
  }
64707
64713
  ) }),
64708
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col p-5", children: [
64709
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
64710
- featuredHeroCard.title,
64711
- /* @__PURE__ */ jsx(
64712
- DynamicIcon,
64713
- {
64714
- name: "lucide/arrow-right",
64715
- size: 16,
64716
- className: "transition-transform group-hover:translate-x-1"
64717
- }
64718
- )
64719
- ] }),
64720
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed text-primary-foreground/85", children: featuredHeroCard.description })
64721
- ] })
64722
- ]
64723
- }
64724
- ) }),
64725
- productCategories.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-1 flex flex-col gap-6", children: productCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
64726
- /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-2 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: category.title }) }),
64727
- /* @__PURE__ */ jsx("menu", { className: "grid grid-cols-3 gap-3", children: category.products.map((product) => /* @__PURE__ */ jsxs(
64728
- NavigationMenuLink,
64729
- {
64730
- href: product.href,
64731
- className: "group col-span-1 !flex !w-full items-center gap-3 rounded-lg p-3 text-left hover:bg-muted",
64732
- children: [
64733
- /* @__PURE__ */ jsx("div", { className: "relative flex size-12 shrink-0 items-center justify-center overflow-hidden rounded", children: /* @__PURE__ */ jsx(
64734
- Img,
64714
+ hasProductContent && /* @__PURE__ */ jsx("div", { className: "col-span-1 flex min-w-0 flex-col gap-6", children: visibleCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col gap-3", children: [
64715
+ /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-2 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: category.title }) }),
64716
+ /* @__PURE__ */ jsx(
64717
+ "menu",
64735
64718
  {
64736
- src: product.image,
64737
- alt: product.title,
64738
- className: "h-full w-full object-cover",
64739
- optixFlowConfig,
64740
- loading: "eager"
64719
+ className: cn(
64720
+ "grid gap-3",
64721
+ hasFeaturedCard ? "grid-cols-3" : "grid-cols-[repeat(auto-fit,minmax(220px,1fr))]"
64722
+ ),
64723
+ children: category.products.map((product) => /* @__PURE__ */ jsxs(
64724
+ NavigationMenuLink,
64725
+ {
64726
+ href: product.href,
64727
+ className: "group col-span-1 !flex !w-full min-w-0 items-center gap-3 rounded-lg p-3 text-left hover:bg-muted",
64728
+ children: [
64729
+ /* @__PURE__ */ jsx("div", { className: "relative flex size-12 shrink-0 items-center justify-center overflow-hidden rounded bg-muted text-muted-foreground", children: product.image ? /* @__PURE__ */ jsx(
64730
+ Img,
64731
+ {
64732
+ src: product.image,
64733
+ alt: product.title,
64734
+ className: "h-full w-full object-cover",
64735
+ optixFlowConfig,
64736
+ loading: "eager"
64737
+ }
64738
+ ) : /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/package", size: 18 }) }),
64739
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64740
+ /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-medium", children: product.title }),
64741
+ /* @__PURE__ */ jsx("p", { className: "mt-0.5 break-words text-xs text-muted-foreground", children: product.description })
64742
+ ] })
64743
+ ]
64744
+ },
64745
+ product.id
64746
+ ))
64741
64747
  }
64742
- ) }),
64743
- /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64744
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: product.title }),
64745
- /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: product.description })
64746
- ] })
64747
- ]
64748
- },
64749
- product.id
64750
- )) })
64751
- ] }, category.title)) })
64752
- ] });
64748
+ )
64749
+ ] }, category.title)) })
64750
+ ]
64751
+ }
64752
+ );
64753
+ };
64753
64754
  var ResourcesMenu = ({
64754
64755
  resourceItems,
64755
64756
  resourcesTitle = "Resources",
64756
64757
  topicGroups,
64757
- featuredHeroCard
64758
- }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1100px] grid-cols-[280px_1fr_220px] gap-6", children: [
64759
- featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
64760
- Pressable,
64758
+ featuredHeroCard,
64759
+ optixFlowConfig
64760
+ }) => {
64761
+ const visibleTopicGroups = topicGroups.filter(
64762
+ (group) => hasItems(group.topics)
64763
+ );
64764
+ const hasFeaturedCard = hasFeaturedHeroCardContent(featuredHeroCard);
64765
+ const hasResourceContent = hasItems(resourceItems);
64766
+ const hasTopicContent = hasItems(visibleTopicGroups);
64767
+ if (!hasFeaturedCard && !hasResourceContent && !hasTopicContent) return null;
64768
+ return /* @__PURE__ */ jsxs(
64769
+ "div",
64761
64770
  {
64762
- href: featuredHeroCard.href,
64763
64771
  className: cn(
64764
- "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
64765
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
64772
+ "grid gap-6",
64773
+ PANEL_MAX_WIDTH_CLASS,
64774
+ hasFeaturedCard && hasResourceContent && hasTopicContent ? "w-[1100px] grid-cols-[280px_1fr_220px]" : hasFeaturedCard && hasResourceContent ? "w-[900px] grid-cols-[280px_1fr]" : hasFeaturedCard && hasTopicContent ? "w-[560px] grid-cols-[280px_220px]" : hasResourceContent && hasTopicContent ? "w-[900px] grid-cols-[1fr_220px]" : hasResourceContent ? "w-[700px] grid-cols-1" : hasTopicContent ? "w-[280px] grid-cols-1" : "w-[320px] grid-cols-1"
64766
64775
  ),
64767
64776
  children: [
64768
- /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/3] w-full overflow-hidden", children: /* @__PURE__ */ jsx(
64769
- Img,
64777
+ hasFeaturedCard && featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1 min-w-0", children: /* @__PURE__ */ jsx(
64778
+ FeaturedHeroCardPanel,
64770
64779
  {
64771
- src: featuredHeroCard.image,
64772
- alt: featuredHeroCard.title,
64773
- className: "h-full w-full object-cover invert",
64774
- loading: "eager"
64780
+ card: featuredHeroCard,
64781
+ optixFlowConfig,
64782
+ imageContainerClassName: "relative aspect-[4/3] w-full overflow-hidden",
64783
+ imageClassName: "invert"
64775
64784
  }
64776
64785
  ) }),
64777
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col p-5", children: [
64778
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
64779
- featuredHeroCard.title,
64780
- /* @__PURE__ */ jsx(
64781
- DynamicIcon,
64782
- {
64783
- name: "lucide/arrow-right",
64784
- size: 16,
64785
- className: "transition-transform group-hover:translate-x-1"
64786
- }
64787
- )
64788
- ] }),
64789
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed", children: featuredHeroCard.description })
64790
- ] })
64791
- ]
64792
- }
64793
- ) }),
64794
- resourceItems.length > 0 && /* @__PURE__ */ jsxs("div", { className: "col-span-1", children: [
64795
- /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: resourcesTitle }) }),
64796
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-3", children: resourceItems.map((resource) => /* @__PURE__ */ jsxs(
64797
- NavigationMenuLink,
64798
- {
64799
- href: resource.href,
64800
- className: "group col-span-1 !flex !w-full items-start gap-3 rounded-lg border border-border p-3 hover:bg-muted",
64801
- children: [
64786
+ hasResourceContent && /* @__PURE__ */ jsxs("div", { className: "col-span-1 min-w-0", children: [
64787
+ /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: resourcesTitle }) }),
64802
64788
  /* @__PURE__ */ jsx(
64803
- DynamicIcon,
64789
+ "div",
64804
64790
  {
64805
- name: resource.icon,
64806
- size: 18,
64807
- className: "mt-0.5 shrink-0"
64791
+ className: cn(
64792
+ "grid gap-3",
64793
+ resourceItems.length > 1 ? "grid-cols-2" : "grid-cols-1"
64794
+ ),
64795
+ children: resourceItems.map((resource) => /* @__PURE__ */ jsxs(
64796
+ NavigationMenuLink,
64797
+ {
64798
+ href: resource.href,
64799
+ className: "group col-span-1 !flex !w-full min-w-0 items-start gap-3 rounded-lg border border-border p-3 hover:bg-muted",
64800
+ children: [
64801
+ /* @__PURE__ */ jsx(
64802
+ DynamicIcon,
64803
+ {
64804
+ name: resource.icon,
64805
+ size: 18,
64806
+ className: "mt-0.5 shrink-0"
64807
+ }
64808
+ ),
64809
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64810
+ /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-medium", children: resource.title }),
64811
+ /* @__PURE__ */ jsx("p", { className: "mt-0.5 break-words text-xs text-muted-foreground", children: resource.description })
64812
+ ] })
64813
+ ]
64814
+ },
64815
+ resource.id
64816
+ ))
64808
64817
  }
64809
- ),
64810
- /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64811
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: resource.title }),
64812
- /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: resource.description })
64813
- ] })
64814
- ]
64815
- },
64816
- resource.id
64817
- )) })
64818
- ] }),
64819
- topicGroups.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: topicGroups.map((group) => /* @__PURE__ */ jsxs("div", { className: "mb-5 last:mb-0", children: [
64820
- /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.title }) }),
64821
- /* @__PURE__ */ jsx("div", { className: "space-y-1.5", children: group.topics.map((topic) => /* @__PURE__ */ jsxs(
64822
- NavigationMenuLink,
64823
- {
64824
- href: topic.href,
64825
- className: "group !flex !w-full items-center gap-2 rounded-lg p-2 hover:bg-muted",
64826
- children: [
64827
- /* @__PURE__ */ jsx(
64828
- DynamicIcon,
64818
+ )
64819
+ ] }),
64820
+ hasTopicContent && /* @__PURE__ */ jsx("div", { className: "col-span-1 min-w-0", children: visibleTopicGroups.map((group) => /* @__PURE__ */ jsxs("div", { className: "mb-5 last:mb-0", children: [
64821
+ /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.title }) }),
64822
+ /* @__PURE__ */ jsx("div", { className: "space-y-1.5", children: group.topics.map((topic) => /* @__PURE__ */ jsxs(
64823
+ NavigationMenuLink,
64829
64824
  {
64830
- name: topic.icon,
64831
- size: 14,
64832
- className: "shrink-0"
64833
- }
64834
- ),
64835
- /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 text-sm font-medium", children: topic.title })
64836
- ]
64837
- },
64838
- topic.id
64839
- )) })
64840
- ] }, group.title)) })
64841
- ] });
64825
+ href: topic.href,
64826
+ className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 hover:bg-muted",
64827
+ children: [
64828
+ /* @__PURE__ */ jsx(
64829
+ DynamicIcon,
64830
+ {
64831
+ name: topic.icon,
64832
+ size: 14,
64833
+ className: "shrink-0"
64834
+ }
64835
+ ),
64836
+ /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 break-words text-sm font-medium", children: topic.title })
64837
+ ]
64838
+ },
64839
+ topic.id
64840
+ )) })
64841
+ ] }, group.title)) })
64842
+ ]
64843
+ }
64844
+ );
64845
+ };
64842
64846
  var GlobalMenu = ({
64843
64847
  featureCategories,
64844
64848
  regions,
64845
64849
  locationsTitle = "Locations",
64846
64850
  featuredHeroCard,
64847
64851
  optixFlowConfig
64848
- }) => /* @__PURE__ */ jsxs("div", { className: "w-[1100px]", children: [
64849
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[280px_1fr] gap-6", children: [
64850
- featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
64851
- Pressable,
64852
- {
64853
- href: featuredHeroCard.href,
64854
- className: cn(
64855
- "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
64856
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
64857
- ),
64858
- children: [
64859
- /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/3] w-full overflow-hidden", children: /* @__PURE__ */ jsx(
64860
- Img,
64861
- {
64862
- src: featuredHeroCard.image,
64863
- alt: featuredHeroCard.title,
64864
- className: "h-full w-full object-cover",
64865
- optixFlowConfig,
64866
- loading: "eager"
64867
- }
64868
- ) }),
64869
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col p-5", children: [
64870
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
64871
- featuredHeroCard.title,
64872
- /* @__PURE__ */ jsx(
64873
- DynamicIcon,
64852
+ }) => {
64853
+ const visibleFeatureCategories = featureCategories.filter(
64854
+ (category) => hasItems(category.features)
64855
+ );
64856
+ const visibleRegions = regions.filter((region) => hasItems(region.locations));
64857
+ const hasFeaturedCard = hasFeaturedHeroCardContent(featuredHeroCard);
64858
+ const hasFeatureContent = hasItems(visibleFeatureCategories);
64859
+ const hasRegionContent = hasItems(visibleRegions);
64860
+ if (!hasFeaturedCard && !hasFeatureContent && !hasRegionContent) return null;
64861
+ return /* @__PURE__ */ jsxs(
64862
+ "div",
64863
+ {
64864
+ className: cn(
64865
+ PANEL_MAX_WIDTH_CLASS,
64866
+ hasFeatureContent && hasFeaturedCard ? "w-[1100px]" : hasFeatureContent || hasRegionContent ? "w-[900px]" : "w-[320px]"
64867
+ ),
64868
+ children: [
64869
+ (hasFeaturedCard || hasFeatureContent) && /* @__PURE__ */ jsxs(
64870
+ "div",
64871
+ {
64872
+ className: cn(
64873
+ "grid gap-6",
64874
+ hasFeaturedCard && hasFeatureContent ? "grid-cols-[280px_1fr]" : "grid-cols-1"
64875
+ ),
64876
+ children: [
64877
+ hasFeaturedCard && featuredHeroCard && /* @__PURE__ */ jsx(
64878
+ "div",
64874
64879
  {
64875
- name: "lucide/arrow-right",
64876
- size: 16,
64877
- className: "transition-transform group-hover:translate-x-1"
64880
+ className: cn(
64881
+ "col-span-1 min-w-0",
64882
+ !hasFeatureContent && hasRegionContent && "max-w-[320px]"
64883
+ ),
64884
+ children: /* @__PURE__ */ jsx(
64885
+ FeaturedHeroCardPanel,
64886
+ {
64887
+ card: featuredHeroCard,
64888
+ optixFlowConfig,
64889
+ imageContainerClassName: "relative aspect-[4/3] w-full overflow-hidden"
64890
+ }
64891
+ )
64878
64892
  }
64879
- )
64880
- ] }),
64881
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed text-primary-foreground/85", children: featuredHeroCard.description })
64882
- ] })
64883
- ]
64884
- }
64885
- ) }),
64886
- featureCategories.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-1 flex flex-col gap-6", children: featureCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-3", children: [
64887
- /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-2 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: category.title }) }),
64888
- /* @__PURE__ */ jsx("menu", { className: "grid grid-cols-3 gap-3", children: category.features.map((feature) => /* @__PURE__ */ jsxs(
64889
- NavigationMenuLink,
64890
- {
64891
- href: feature.href,
64892
- className: "group col-span-1 !flex !w-full items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64893
- children: [
64894
- /* @__PURE__ */ jsx("div", { className: "flex size-8 shrink-0 items-center justify-center", children: /* @__PURE__ */ jsx(DynamicIcon, { name: feature.icon, size: 18 }) }),
64895
- /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64896
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: feature.title }),
64897
- /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: feature.description })
64898
- ] })
64899
- ]
64900
- },
64901
- feature.id
64902
- )) })
64903
- ] }, category.title)) })
64904
- ] }),
64905
- regions.length > 0 && /* @__PURE__ */ jsxs("div", { className: "mt-6", children: [
64906
- /* @__PURE__ */ jsx("div", { className: "mb-3 border-b border-border pb-2 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: locationsTitle }) }),
64907
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-4 gap-4", children: regions.map((region) => /* @__PURE__ */ jsxs(
64908
- "div",
64909
- {
64910
- className: "col-span-1 flex w-full flex-col gap-3",
64911
- children: [
64912
- /* @__PURE__ */ jsx("div", { className: "text-left text-xs font-medium text-muted-foreground", children: region.title }),
64913
- /* @__PURE__ */ jsx("menu", { className: "grid gap-1.5", children: region.locations.map((location) => /* @__PURE__ */ jsxs(
64914
- NavigationMenuLink,
64893
+ ),
64894
+ hasFeatureContent && /* @__PURE__ */ jsx("div", { className: "col-span-1 flex min-w-0 flex-col gap-6", children: visibleFeatureCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col gap-3", children: [
64895
+ /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-2 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: category.title }) }),
64896
+ /* @__PURE__ */ jsx(
64897
+ "menu",
64898
+ {
64899
+ className: cn(
64900
+ "grid gap-3",
64901
+ hasFeaturedCard ? "grid-cols-3" : "grid-cols-[repeat(auto-fit,minmax(220px,1fr))]"
64902
+ ),
64903
+ children: category.features.map((feature) => /* @__PURE__ */ jsxs(
64904
+ NavigationMenuLink,
64905
+ {
64906
+ href: feature.href,
64907
+ className: "group col-span-1 !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64908
+ children: [
64909
+ /* @__PURE__ */ jsx("div", { className: "flex size-8 shrink-0 items-center justify-center", children: /* @__PURE__ */ jsx(DynamicIcon, { name: feature.icon, size: 18 }) }),
64910
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64911
+ /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-medium", children: feature.title }),
64912
+ /* @__PURE__ */ jsx("p", { className: "mt-0.5 break-words text-xs text-muted-foreground", children: feature.description })
64913
+ ] })
64914
+ ]
64915
+ },
64916
+ feature.id
64917
+ ))
64918
+ }
64919
+ )
64920
+ ] }, category.title)) })
64921
+ ]
64922
+ }
64923
+ ),
64924
+ hasRegionContent && /* @__PURE__ */ jsxs("div", { className: cn(hasFeaturedCard || hasFeatureContent ? "mt-6" : ""), children: [
64925
+ /* @__PURE__ */ jsx("div", { className: "mb-3 border-b border-border pb-2 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: locationsTitle }) }),
64926
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-[repeat(auto-fit,minmax(150px,1fr))] gap-4", children: visibleRegions.map((region) => /* @__PURE__ */ jsxs(
64927
+ "div",
64915
64928
  {
64916
- href: location.href,
64917
- className: "group !flex !w-full items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64929
+ className: "col-span-1 flex w-full min-w-0 flex-col gap-3",
64918
64930
  children: [
64919
- /* @__PURE__ */ jsx("div", { className: "flex size-4 shrink-0 items-center justify-center", children: /* @__PURE__ */ jsx(
64920
- DynamicIcon,
64931
+ /* @__PURE__ */ jsx("div", { className: "break-words text-left text-xs font-medium text-muted-foreground", children: region.title }),
64932
+ /* @__PURE__ */ jsx("menu", { className: "grid gap-1.5", children: region.locations.map((location) => /* @__PURE__ */ jsxs(
64933
+ NavigationMenuLink,
64921
64934
  {
64922
- name: location.icon,
64923
- size: 16,
64924
- className: "shrink-0"
64925
- }
64926
- ) }),
64927
- /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 text-sm font-medium", children: location.title })
64935
+ href: location.href,
64936
+ className: "group !flex !w-full min-w-0 items-center gap-2 rounded-lg p-2 text-left hover:bg-muted",
64937
+ children: [
64938
+ /* @__PURE__ */ jsx("div", { className: "flex size-4 shrink-0 items-center justify-center", children: /* @__PURE__ */ jsx(
64939
+ DynamicIcon,
64940
+ {
64941
+ name: location.icon,
64942
+ size: 16,
64943
+ className: "shrink-0"
64944
+ }
64945
+ ) }),
64946
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 break-words text-sm font-medium", children: location.title })
64947
+ ]
64948
+ },
64949
+ location.title
64950
+ )) })
64928
64951
  ]
64929
64952
  },
64930
- location.title
64953
+ region.title
64931
64954
  )) })
64932
- ]
64933
- },
64934
- region.title
64935
- )) })
64936
- ] })
64937
- ] });
64955
+ ] })
64956
+ ]
64957
+ }
64958
+ );
64959
+ };
64938
64960
  var PartnersMenu = ({
64939
64961
  partnerCards,
64940
64962
  featuredHeroCard,
64941
64963
  optixFlowConfig
64942
- }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1000px] grid-cols-[2fr_1fr] gap-6", children: [
64943
- featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
64944
- Pressable,
64964
+ }) => {
64965
+ const hasFeaturedCard = hasFeaturedHeroCardContent(featuredHeroCard);
64966
+ const hasPartnerContent = hasItems(partnerCards);
64967
+ if (!hasFeaturedCard && !hasPartnerContent) return null;
64968
+ return /* @__PURE__ */ jsxs(
64969
+ "div",
64945
64970
  {
64946
- href: featuredHeroCard.href,
64947
64971
  className: cn(
64948
- "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
64949
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
64972
+ "grid gap-6",
64973
+ PANEL_MAX_WIDTH_CLASS,
64974
+ hasFeaturedCard && hasPartnerContent ? "w-[1000px] grid-cols-[2fr_1fr]" : hasPartnerContent ? "w-[680px] grid-cols-1" : "w-[360px] grid-cols-1"
64950
64975
  ),
64951
64976
  children: [
64952
- /* @__PURE__ */ jsx("div", { className: "relative aspect-video w-full overflow-hidden", children: /* @__PURE__ */ jsx(
64953
- Img,
64977
+ hasFeaturedCard && featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1 min-w-0", children: /* @__PURE__ */ jsx(
64978
+ FeaturedHeroCardPanel,
64954
64979
  {
64955
- src: featuredHeroCard.image,
64956
- alt: featuredHeroCard.title,
64957
- className: cn(
64958
- "h-full w-full object-cover",
64959
- featuredHeroCard.imagePosition === "background" && "invert"
64960
- ),
64980
+ card: featuredHeroCard,
64961
64981
  optixFlowConfig,
64962
- loading: "eager"
64982
+ imageClassName: cn(
64983
+ featuredHeroCard.imagePosition === "background" && "invert"
64984
+ )
64963
64985
  }
64964
64986
  ) }),
64965
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col p-5", children: [
64966
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
64967
- featuredHeroCard.title,
64968
- /* @__PURE__ */ jsx(
64969
- DynamicIcon,
64987
+ hasPartnerContent && /* @__PURE__ */ jsx(
64988
+ "div",
64989
+ {
64990
+ className: cn(
64991
+ "col-span-1 min-w-0 gap-3",
64992
+ hasFeaturedCard ? "flex flex-col" : "grid grid-cols-[repeat(auto-fit,minmax(240px,1fr))]"
64993
+ ),
64994
+ children: partnerCards.map((card) => /* @__PURE__ */ jsxs(
64995
+ NavigationMenuLink,
64970
64996
  {
64971
- name: "lucide/arrow-right",
64972
- size: 16,
64973
- className: "transition-transform group-hover:translate-x-1"
64974
- }
64975
- )
64976
- ] }),
64977
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed", children: featuredHeroCard.description })
64978
- ] })
64997
+ href: card.href,
64998
+ className: "group !flex !w-full min-w-0 items-start gap-3 rounded-lg border border-border p-4 hover:bg-muted",
64999
+ children: [
65000
+ /* @__PURE__ */ jsx(DynamicIcon, { name: card.icon, size: 28, className: "shrink-0" }),
65001
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
65002
+ /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-bold", children: card.title }),
65003
+ /* @__PURE__ */ jsx("p", { className: "mt-0.5 break-words text-xs text-muted-foreground", children: card.description })
65004
+ ] })
65005
+ ]
65006
+ },
65007
+ card.title
65008
+ ))
65009
+ }
65010
+ )
64979
65011
  ]
64980
65012
  }
64981
- ) }),
64982
- partnerCards.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-1 flex flex-col gap-3", children: partnerCards.map((card) => /* @__PURE__ */ jsxs(
64983
- NavigationMenuLink,
64984
- {
64985
- href: card.href,
64986
- className: "group !flex !w-full items-start gap-3 rounded-lg border border-border p-4 hover:bg-muted",
64987
- children: [
64988
- /* @__PURE__ */ jsx(DynamicIcon, { name: card.icon, size: 28, className: "shrink-0" }),
64989
- /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
64990
- /* @__PURE__ */ jsx("div", { className: "text-sm font-bold", children: card.title }),
64991
- /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: card.description })
64992
- ] })
64993
- ]
64994
- },
64995
- card.title
64996
- )) })
64997
- ] });
65013
+ );
65014
+ };
64998
65015
  var MOBILE_BREAKPOINT = 1024;
64999
65016
  var NavbarEnterpriseMega = ({
65000
65017
  className,
@@ -65164,20 +65181,48 @@ var NavbarEnterpriseMega = ({
65164
65181
  )
65165
65182
  ] });
65166
65183
  };
65184
+ var hasItems2 = (items) => Array.isArray(items) && items.length > 0;
65185
+ var hasFeaturedHeroCardContent2 = (card) => Boolean(
65186
+ card && (card.title || card.subtitle || card.description || card.image)
65187
+ );
65188
+ var hasGenericDropdownContent = (item) => hasItems2(item.links) || Boolean(item.dropdownGroups?.some((group) => hasItems2(group.links)));
65189
+ var hasLayoutSpecificDropdownContent = (item) => {
65190
+ switch (item.layout) {
65191
+ case "solutions-with-platform":
65192
+ return hasItems2(item.solutionCards) || hasItems2(item.platformItems) || hasFeaturedHeroCardContent2(item.featuredHeroCard);
65193
+ case "products-categorized":
65194
+ return Boolean(
65195
+ item.productCategories?.some(
65196
+ (category) => hasItems2(category.products)
65197
+ )
65198
+ ) || hasFeaturedHeroCardContent2(item.featuredHeroCard);
65199
+ case "features-with-locations":
65200
+ return Boolean(
65201
+ item.featureCategories?.some(
65202
+ (category) => hasItems2(category.features)
65203
+ )
65204
+ ) || Boolean(item.regions?.some((region) => hasItems2(region.locations))) || hasFeaturedHeroCardContent2(item.featuredHeroCard);
65205
+ case "partners-promotional":
65206
+ return hasItems2(item.partnerCards) || hasFeaturedHeroCardContent2(item.featuredHeroCard);
65207
+ case "resources-with-topics":
65208
+ return hasItems2(item.resourceItems) || Boolean(
65209
+ item.topicGroups?.some((group) => hasItems2(group.topics))
65210
+ ) || hasFeaturedHeroCardContent2(item.featuredHeroCard);
65211
+ default:
65212
+ return false;
65213
+ }
65214
+ };
65215
+ var hasDropdownContent = (item) => hasLayoutSpecificDropdownContent(item) || hasGenericDropdownContent(item);
65167
65216
  var DesktopMenuItem2 = ({
65168
65217
  item,
65169
65218
  index,
65170
65219
  optixFlowConfig
65171
65220
  }) => {
65172
- const hasDropdown = Boolean(item.layout);
65173
- const effectiveLayout = item.layout || "solutions-with-platform";
65221
+ const hasDropdown = hasDropdownContent(item);
65174
65222
  if (hasDropdown) {
65175
65223
  return /* @__PURE__ */ jsxs(NavigationMenuItem, { value: `${index}`, children: [
65176
65224
  /* @__PURE__ */ jsx(NavigationMenuTrigger, { className: "h-auto bg-transparent px-3 py-2 font-normal hover:bg-muted focus:bg-muted data-[state=open]:bg-muted/50", children: item.label }),
65177
- /* @__PURE__ */ jsx(NavigationMenuContent, { className: "max-h-[calc(100vh-6rem)] overflow-y-auto rounded-xl! border-0! p-4!", children: renderDropdownContent(
65178
- { ...item, layout: effectiveLayout },
65179
- optixFlowConfig
65180
- ) })
65225
+ /* @__PURE__ */ jsx(NavigationMenuContent, { className: "max-h-[calc(100vh-6rem)] overflow-y-auto rounded-xl! border-0! p-4!", children: renderDropdownContent(item, optixFlowConfig) })
65181
65226
  ] }, `desktop-menu-item-${index}`);
65182
65227
  }
65183
65228
  return /* @__PURE__ */ jsx(NavigationMenuItem, { value: `${index}`, children: /* @__PURE__ */ jsx(
@@ -65190,6 +65235,9 @@ var DesktopMenuItem2 = ({
65190
65235
  ) }, `desktop-menu-item-${index}`);
65191
65236
  };
65192
65237
  var renderDropdownContent = (item, optixFlowConfig) => {
65238
+ if (!hasLayoutSpecificDropdownContent(item)) {
65239
+ return renderGenericDropdownContent(item, optixFlowConfig);
65240
+ }
65193
65241
  switch (item.layout) {
65194
65242
  case "solutions-with-platform":
65195
65243
  return /* @__PURE__ */ jsx(
@@ -65238,73 +65286,287 @@ var renderDropdownContent = (item, optixFlowConfig) => {
65238
65286
  resourceItems: item.resourceItems ?? [],
65239
65287
  resourcesTitle: item.resourcesTitle,
65240
65288
  topicGroups: item.topicGroups ?? [],
65241
- featuredHeroCard: item.featuredHeroCard
65289
+ featuredHeroCard: item.featuredHeroCard,
65290
+ optixFlowConfig
65242
65291
  }
65243
65292
  );
65244
65293
  default:
65245
- return null;
65294
+ return renderGenericDropdownContent(item, optixFlowConfig);
65246
65295
  }
65247
65296
  };
65248
- var renderMobileDropdownContent = (item) => {
65249
- switch (item.layout) {
65250
- case "solutions-with-platform":
65251
- return /* @__PURE__ */ jsx("div", { className: "flex flex-col space-y-2", children: item.solutionCards?.map((solution) => /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
65252
- /* @__PURE__ */ jsx(
65253
- Pressable,
65297
+ var renderGenericDropdownContent = (item, optixFlowConfig) => {
65298
+ const links = item.links ?? [];
65299
+ const groups = (item.dropdownGroups ?? []).filter(
65300
+ (group) => hasItems2(group.links)
65301
+ );
65302
+ const hasLinks = hasItems2(links);
65303
+ const hasGroups = hasItems2(groups);
65304
+ if (!hasLinks && !hasGroups) return null;
65305
+ const renderGenericLink = (link, key) => {
65306
+ const iconName = link.icon ?? link.iconName;
65307
+ const label = typeof link.label === "string" ? link.label : "";
65308
+ return /* @__PURE__ */ jsxs(
65309
+ NavigationMenuLink,
65310
+ {
65311
+ href: getLinkUrl(link),
65312
+ className: "group !flex !w-full min-w-0 items-start gap-3 rounded-lg p-3 text-left hover:bg-muted",
65313
+ children: [
65314
+ link.image ? /* @__PURE__ */ jsx("div", { className: "relative flex size-10 shrink-0 items-center justify-center overflow-hidden rounded bg-muted", children: /* @__PURE__ */ jsx(
65315
+ Img,
65316
+ {
65317
+ src: link.image,
65318
+ alt: label,
65319
+ className: "h-full w-full object-cover",
65320
+ optixFlowConfig,
65321
+ loading: "eager"
65322
+ }
65323
+ ) }) : iconName ? /* @__PURE__ */ jsx(
65324
+ DynamicIcon,
65325
+ {
65326
+ name: iconName,
65327
+ size: 18,
65328
+ className: "mt-0.5 shrink-0"
65329
+ }
65330
+ ) : null,
65331
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
65332
+ /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-medium", children: link.label }),
65333
+ link.description && /* @__PURE__ */ jsx("p", { className: "mt-0.5 break-words text-xs text-muted-foreground", children: link.description })
65334
+ ] })
65335
+ ]
65336
+ },
65337
+ key
65338
+ );
65339
+ };
65340
+ return /* @__PURE__ */ jsxs(
65341
+ "div",
65342
+ {
65343
+ className: cn(
65344
+ "grid max-w-[calc(100vw-4rem)] gap-6",
65345
+ hasLinks && hasGroups ? "w-[900px] grid-cols-[minmax(0,1fr)_minmax(220px,0.45fr)]" : hasGroups ? "w-[780px] grid-cols-1" : "w-[420px] grid-cols-1"
65346
+ ),
65347
+ children: [
65348
+ hasGroups && /* @__PURE__ */ jsx(
65349
+ "div",
65254
65350
  {
65255
- href: solution.href,
65256
- className: "block pt-4 text-sm font-medium",
65257
- children: solution.title
65351
+ className: cn(
65352
+ "grid min-w-0 gap-5",
65353
+ !hasLinks && groups.length > 1 ? "grid-cols-[repeat(auto-fit,minmax(220px,1fr))]" : "grid-cols-1"
65354
+ ),
65355
+ children: groups.map((group, groupIndex) => /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
65356
+ /* @__PURE__ */ jsxs("div", { className: "mb-3 border-b border-border pb-2 text-left", children: [
65357
+ /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.label }),
65358
+ group.description && /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: group.description })
65359
+ ] }),
65360
+ /* @__PURE__ */ jsx("menu", { className: "grid gap-1.5", children: group.links.map(
65361
+ (link, linkIndex) => renderGenericLink(link, `${groupIndex}-${linkIndex}`)
65362
+ ) })
65363
+ ] }, groupIndex))
65258
65364
  }
65259
65365
  ),
65260
- solution.subpages.map((subpage) => /* @__PURE__ */ jsxs(
65366
+ hasLinks && /* @__PURE__ */ jsx("menu", { className: "grid min-w-0 gap-1.5", children: links.map((link, linkIndex) => renderGenericLink(link, linkIndex)) })
65367
+ ]
65368
+ }
65369
+ );
65370
+ };
65371
+ var renderMobileFeaturedHeroCard = (card) => {
65372
+ if (!hasFeaturedHeroCardContent2(card) || !card) return null;
65373
+ return /* @__PURE__ */ jsxs(
65374
+ Pressable,
65375
+ {
65376
+ href: card.href,
65377
+ className: cn(
65378
+ "block rounded-lg p-4 text-sm font-medium text-primary-foreground",
65379
+ card.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
65380
+ ),
65381
+ children: [
65382
+ /* @__PURE__ */ jsx("span", { children: card.title }),
65383
+ card.description && /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs leading-relaxed opacity-90", children: card.description })
65384
+ ]
65385
+ }
65386
+ );
65387
+ };
65388
+ var renderMobileDropdownContent = (item) => {
65389
+ if (!hasLayoutSpecificDropdownContent(item)) {
65390
+ return renderMobileGenericDropdownContent(item);
65391
+ }
65392
+ switch (item.layout) {
65393
+ case "solutions-with-platform":
65394
+ return /* @__PURE__ */ jsxs("div", { className: "flex flex-col space-y-2", children: [
65395
+ renderMobileFeaturedHeroCard(item.featuredHeroCard),
65396
+ item.platformItems?.map((technology) => /* @__PURE__ */ jsxs(
65261
65397
  Pressable,
65262
65398
  {
65263
- href: subpage.href,
65399
+ href: technology.href,
65264
65400
  className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65265
65401
  children: [
65266
- /* @__PURE__ */ jsx(DynamicIcon, { name: subpage.icon, size: 14 }),
65267
- subpage.title
65402
+ /* @__PURE__ */ jsx(DynamicIcon, { name: technology.icon, size: 14 }),
65403
+ technology.title
65268
65404
  ]
65269
65405
  },
65270
- subpage.id
65271
- ))
65272
- ] }, solution.id)) });
65406
+ technology.id
65407
+ )),
65408
+ item.solutionCards?.map((solution) => /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
65409
+ /* @__PURE__ */ jsx(
65410
+ Pressable,
65411
+ {
65412
+ href: solution.href,
65413
+ className: "block pt-4 text-sm font-medium",
65414
+ children: solution.title
65415
+ }
65416
+ ),
65417
+ (solution.subpages ?? []).map((subpage) => /* @__PURE__ */ jsxs(
65418
+ Pressable,
65419
+ {
65420
+ href: subpage.href,
65421
+ className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65422
+ children: [
65423
+ /* @__PURE__ */ jsx(DynamicIcon, { name: subpage.icon, size: 14 }),
65424
+ subpage.title
65425
+ ]
65426
+ },
65427
+ subpage.id
65428
+ ))
65429
+ ] }, solution.id))
65430
+ ] });
65273
65431
  case "products-categorized":
65274
- return /* @__PURE__ */ jsx("div", { className: "space-y-4", children: item.productCategories?.flatMap(
65275
- (category) => category.products.map((product) => /* @__PURE__ */ jsx(
65432
+ return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
65433
+ renderMobileFeaturedHeroCard(item.featuredHeroCard),
65434
+ item.productCategories?.flatMap(
65435
+ (category) => (category.products ?? []).map((product) => /* @__PURE__ */ jsx(
65436
+ Pressable,
65437
+ {
65438
+ href: product.href,
65439
+ className: "flex items-center pl-4 gap-2 text-sm text-muted-foreground",
65440
+ children: product.title
65441
+ },
65442
+ product.id
65443
+ ))
65444
+ )
65445
+ ] });
65446
+ case "resources-with-topics":
65447
+ return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
65448
+ renderMobileFeaturedHeroCard(item.featuredHeroCard),
65449
+ item.resourceItems?.map((resource) => /* @__PURE__ */ jsxs(
65276
65450
  Pressable,
65277
65451
  {
65278
- href: product.href,
65452
+ href: resource.href,
65279
65453
  className: "flex items-center pl-4 gap-2 text-sm text-muted-foreground",
65280
- children: product.title
65454
+ children: [
65455
+ /* @__PURE__ */ jsx(DynamicIcon, { name: resource.icon, size: 14 }),
65456
+ resource.title
65457
+ ]
65458
+ },
65459
+ resource.id
65460
+ )),
65461
+ item.topicGroups?.map((group) => /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
65462
+ /* @__PURE__ */ jsx("div", { className: "pt-2 text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.title }),
65463
+ group.topics.map((topic) => /* @__PURE__ */ jsxs(
65464
+ Pressable,
65465
+ {
65466
+ href: topic.href,
65467
+ className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65468
+ children: [
65469
+ /* @__PURE__ */ jsx(DynamicIcon, { name: topic.icon, size: 14 }),
65470
+ topic.title
65471
+ ]
65472
+ },
65473
+ topic.id
65474
+ ))
65475
+ ] }, group.title))
65476
+ ] });
65477
+ case "features-with-locations":
65478
+ return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
65479
+ renderMobileFeaturedHeroCard(item.featuredHeroCard),
65480
+ item.featureCategories?.flatMap(
65481
+ (category) => (category.features ?? []).map((feature) => /* @__PURE__ */ jsxs(
65482
+ Pressable,
65483
+ {
65484
+ href: feature.href,
65485
+ className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65486
+ children: [
65487
+ /* @__PURE__ */ jsx(DynamicIcon, { name: feature.icon, size: 14 }),
65488
+ feature.title
65489
+ ]
65490
+ },
65491
+ feature.id
65492
+ ))
65493
+ ),
65494
+ item.regions?.map((region) => /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
65495
+ /* @__PURE__ */ jsx("div", { className: "pt-2 text-xs font-medium tracking-wider text-muted-foreground uppercase", children: region.title }),
65496
+ region.locations.map((location) => /* @__PURE__ */ jsxs(
65497
+ Pressable,
65498
+ {
65499
+ href: location.href,
65500
+ className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65501
+ children: [
65502
+ /* @__PURE__ */ jsx(DynamicIcon, { name: location.icon, size: 14 }),
65503
+ location.title
65504
+ ]
65505
+ },
65506
+ location.title
65507
+ ))
65508
+ ] }, region.title))
65509
+ ] });
65510
+ case "partners-promotional":
65511
+ return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
65512
+ renderMobileFeaturedHeroCard(item.featuredHeroCard),
65513
+ item.partnerCards?.map((card) => /* @__PURE__ */ jsxs(
65514
+ Pressable,
65515
+ {
65516
+ href: card.href,
65517
+ className: "flex items-start gap-2 pl-4 text-sm text-muted-foreground",
65518
+ children: [
65519
+ /* @__PURE__ */ jsx(DynamicIcon, { name: card.icon, size: 14, className: "mt-0.5" }),
65520
+ /* @__PURE__ */ jsx("span", { children: card.title })
65521
+ ]
65281
65522
  },
65282
- product.id
65523
+ card.title
65283
65524
  ))
65284
- ) });
65285
- case "resources-with-topics":
65286
- return /* @__PURE__ */ jsx("div", { className: "space-y-4", children: item.resourceItems?.map((resource) => /* @__PURE__ */ jsxs(
65525
+ ] });
65526
+ default:
65527
+ return renderMobileGenericDropdownContent(item);
65528
+ }
65529
+ };
65530
+ var renderMobileGenericDropdownContent = (item) => {
65531
+ const links = item.links ?? [];
65532
+ const groups = (item.dropdownGroups ?? []).filter(
65533
+ (group) => hasItems2(group.links)
65534
+ );
65535
+ return /* @__PURE__ */ jsxs("div", { className: "space-y-4", children: [
65536
+ groups.map((group, groupIndex) => /* @__PURE__ */ jsxs("div", { className: "space-y-2", children: [
65537
+ /* @__PURE__ */ jsx("div", { className: "pt-2 text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.label }),
65538
+ group.links.map((link, linkIndex) => {
65539
+ const iconName = link.icon ?? link.iconName;
65540
+ return /* @__PURE__ */ jsxs(
65541
+ Pressable,
65542
+ {
65543
+ href: getLinkUrl(link),
65544
+ className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65545
+ children: [
65546
+ iconName && /* @__PURE__ */ jsx(DynamicIcon, { name: iconName, size: 14 }),
65547
+ link.label
65548
+ ]
65549
+ },
65550
+ `${groupIndex}-${linkIndex}`
65551
+ );
65552
+ })
65553
+ ] }, groupIndex)),
65554
+ links.map((link, linkIndex) => {
65555
+ const iconName = link.icon ?? link.iconName;
65556
+ return /* @__PURE__ */ jsxs(
65287
65557
  Pressable,
65288
65558
  {
65289
- href: resource.href,
65290
- className: "flex items-center pl-4 gap-2 text-sm text-muted-foreground",
65559
+ href: getLinkUrl(link),
65560
+ className: "flex items-center gap-2 pl-4 text-sm text-muted-foreground",
65291
65561
  children: [
65292
- /* @__PURE__ */ jsx(DynamicIcon, { name: resource.icon, size: 14 }),
65293
- resource.title
65562
+ iconName && /* @__PURE__ */ jsx(DynamicIcon, { name: iconName, size: 14 }),
65563
+ link.label
65294
65564
  ]
65295
65565
  },
65296
- resource.id
65297
- )) });
65298
- case "features-with-locations":
65299
- case "partners-promotional":
65300
- return /* @__PURE__ */ jsx("div", { className: "text-sm text-muted-foreground", children: /* @__PURE__ */ jsxs(Pressable, { href: "#", children: [
65301
- "View all",
65302
- " ",
65303
- typeof item.label === "string" ? item.label.toLowerCase() : "items"
65304
- ] }) });
65305
- default:
65306
- return null;
65307
- }
65566
+ linkIndex
65567
+ );
65568
+ })
65569
+ ] });
65308
65570
  };
65309
65571
  var MobileNavigationMenu = ({
65310
65572
  open,
@@ -65351,7 +65613,7 @@ var MobileNavigationMenu = ({
65351
65613
  title: "Mobile Navigation",
65352
65614
  children: /* @__PURE__ */ jsxs("div", { className: "max-w-screen-sm mx-auto", children: [
65353
65615
  /* @__PURE__ */ jsx(Accordion, { type: "multiple", className: "w-full", children: menuLinks.map((item, index) => {
65354
- const hasDropdown = Boolean(item.layout);
65616
+ const hasDropdown = hasDropdownContent(item);
65355
65617
  if (hasDropdown) {
65356
65618
  return /* @__PURE__ */ jsxs(
65357
65619
  AccordionItem,
@@ -99661,7 +99923,7 @@ function StatsBarComparison({
99661
99923
  const badgeContent = useMemo(() => {
99662
99924
  if (badgeSlot) return badgeSlot;
99663
99925
  if (!badge) return null;
99664
- return /* @__PURE__ */ jsx(Badge, { variant: "outline", className: cn("mb-4", badgeClassName), children: badge });
99926
+ return /* @__PURE__ */ jsx(Badge, { className: cn("mb-4", badgeClassName), children: badge });
99665
99927
  }, [badgeSlot, badge, badgeClassName]);
99666
99928
  const comparisonsContent = useMemo(() => {
99667
99929
  if (comparisonsSlot) return comparisonsSlot;
@@ -99670,9 +99932,7 @@ function StatsBarComparison({
99670
99932
  "div",
99671
99933
  {
99672
99934
  className: cn(
99673
- "rounded-xl border p-6",
99674
- getNestedCardBg(background, "card"),
99675
- getNestedCardTextColor(background),
99935
+ "rounded-xl border p-6 bg-card text-card-foreground",
99676
99936
  group.className,
99677
99937
  groupCardClassName
99678
99938
  ),
@@ -99683,7 +99943,7 @@ function StatsBarComparison({
99683
99943
  className: cn("mb-6 text-lg font-semibold", groupTitleClassName),
99684
99944
  children: group.title
99685
99945
  }
99686
- ) : /* @__PURE__ */ jsx("div", { className: cn("mb-6", groupTitleClassName), children: group.title })),
99946
+ ) : group.title),
99687
99947
  /* @__PURE__ */ jsx("div", { className: "space-y-4", children: group.bars.map((bar, barIndex) => /* @__PURE__ */ jsxs("div", { className: bar.className, children: [
99688
99948
  /* @__PURE__ */ jsxs("div", { className: "mb-2 flex items-center justify-between", children: [
99689
99949
  /* @__PURE__ */ jsx("span", { className: cn("text-sm font-medium", barLabelClassName), children: bar.label }),
@@ -99694,7 +99954,6 @@ function StatsBarComparison({
99694
99954
  {
99695
99955
  className: cn(
99696
99956
  "h-3 w-full overflow-hidden rounded-full",
99697
- getNestedCardBg(background, "muted"),
99698
99957
  barTrackClassName
99699
99958
  ),
99700
99959
  children: /* @__PURE__ */ jsx(
@@ -99752,17 +100011,17 @@ function StatsBarComparison({
99752
100011
  ),
99753
100012
  children: heading
99754
100013
  }
99755
- ) : /* @__PURE__ */ jsx("div", { className: cn("mb-4", headingClassName), children: heading })),
100014
+ ) : heading),
99756
100015
  description && (typeof description === "string" ? /* @__PURE__ */ jsx(
99757
100016
  "p",
99758
100017
  {
99759
100018
  className: cn(
99760
- "mx-auto max-w-2xl text-muted-foreground",
100019
+ "mx-auto max-w-full md:max-w-md text-balance opacity-70",
99761
100020
  descriptionClassName
99762
100021
  ),
99763
100022
  children: description
99764
100023
  }
99765
- ) : /* @__PURE__ */ jsx("div", { className: cn("mx-auto max-w-2xl", descriptionClassName), children: description }))
100024
+ ) : description)
99766
100025
  ] }),
99767
100026
  (comparisonsSlot || comparisons && comparisons.length > 0) && /* @__PURE__ */ jsx("div", { className: cn("space-y-10", comparisonsClassName), children: comparisonsContent })
99768
100027
  ] })