@opensite/ui 3.4.9 → 3.5.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.
Files changed (139) hide show
  1. package/dist/components.cjs +13 -7
  2. package/dist/components.js +13 -7
  3. package/dist/footer-accordion-social.cjs +1 -1
  4. package/dist/footer-accordion-social.js +1 -1
  5. package/dist/footer-animated-social.cjs +1 -1
  6. package/dist/footer-animated-social.js +1 -1
  7. package/dist/footer-background-card.cjs +1 -1
  8. package/dist/footer-background-card.js +1 -1
  9. package/dist/footer-brand-description.cjs +1 -0
  10. package/dist/footer-brand-description.js +1 -0
  11. package/dist/footer-brand-links-contact.cjs +1 -1
  12. package/dist/footer-brand-links-contact.js +1 -1
  13. package/dist/footer-comprehensive-links.cjs +1 -1
  14. package/dist/footer-comprehensive-links.js +1 -1
  15. package/dist/footer-contact-card.cjs +1 -1
  16. package/dist/footer-contact-card.js +1 -1
  17. package/dist/footer-cta-banner.cjs +1 -1
  18. package/dist/footer-cta-banner.js +1 -1
  19. package/dist/footer-cta-social.cjs +1 -1
  20. package/dist/footer-cta-social.js +1 -1
  21. package/dist/footer-info-cards-accordion.cjs +1 -1
  22. package/dist/footer-info-cards-accordion.js +1 -1
  23. package/dist/footer-links-grid.cjs +1 -0
  24. package/dist/footer-links-grid.js +1 -0
  25. package/dist/footer-nav-social.cjs +1 -0
  26. package/dist/footer-nav-social.js +1 -0
  27. package/dist/footer-newsletter-contact.cjs +1 -1
  28. package/dist/footer-newsletter-contact.js +1 -1
  29. package/dist/footer-newsletter-grid.cjs +1 -0
  30. package/dist/footer-newsletter-grid.js +1 -0
  31. package/dist/footer-newsletter-minimal.cjs +1 -1
  32. package/dist/footer-newsletter-minimal.js +1 -1
  33. package/dist/footer-simple-centered.cjs +1 -1
  34. package/dist/footer-simple-centered.js +1 -1
  35. package/dist/footer-social-apps.cjs +1 -0
  36. package/dist/footer-social-apps.js +1 -0
  37. package/dist/footer-social-newsletter.cjs +1 -0
  38. package/dist/footer-social-newsletter.js +1 -0
  39. package/dist/footer-split-image-accordion.cjs +1 -1
  40. package/dist/footer-split-image-accordion.js +1 -1
  41. package/dist/hero-stats-social-proof.cjs +35 -5
  42. package/dist/hero-stats-social-proof.d.cts +1 -1
  43. package/dist/hero-stats-social-proof.d.ts +1 -1
  44. package/dist/hero-stats-social-proof.js +19 -4
  45. package/dist/hero-tech-carousel.cjs +489 -292
  46. package/dist/hero-tech-carousel.d.cts +137 -32
  47. package/dist/hero-tech-carousel.d.ts +137 -32
  48. package/dist/hero-tech-carousel.js +490 -289
  49. package/dist/index.cjs +13 -7
  50. package/dist/index.js +13 -7
  51. package/dist/navbar-animated-preview.cjs +1 -0
  52. package/dist/navbar-animated-preview.d.cts +15 -1
  53. package/dist/navbar-animated-preview.d.ts +15 -1
  54. package/dist/navbar-animated-preview.js +1 -0
  55. package/dist/navbar-centered-menu.cjs +1 -1
  56. package/dist/navbar-centered-menu.d.cts +15 -1
  57. package/dist/navbar-centered-menu.d.ts +15 -1
  58. package/dist/navbar-centered-menu.js +1 -1
  59. package/dist/navbar-dark-icons.cjs +1 -1
  60. package/dist/navbar-dark-icons.d.cts +15 -1
  61. package/dist/navbar-dark-icons.d.ts +15 -1
  62. package/dist/navbar-dark-icons.js +1 -1
  63. package/dist/navbar-dropdown-menu.cjs +1 -1
  64. package/dist/navbar-dropdown-menu.d.cts +15 -1
  65. package/dist/navbar-dropdown-menu.d.ts +15 -1
  66. package/dist/navbar-dropdown-menu.js +1 -1
  67. package/dist/navbar-education-platform.cjs +1 -0
  68. package/dist/navbar-education-platform.d.cts +15 -1
  69. package/dist/navbar-education-platform.d.ts +15 -1
  70. package/dist/navbar-education-platform.js +1 -0
  71. package/dist/navbar-enterprise-mega.cjs +2 -1
  72. package/dist/navbar-enterprise-mega.d.cts +15 -1
  73. package/dist/navbar-enterprise-mega.d.ts +15 -1
  74. package/dist/navbar-enterprise-mega.js +2 -1
  75. package/dist/navbar-feature-grid.cjs +1 -1
  76. package/dist/navbar-feature-grid.d.cts +19 -1
  77. package/dist/navbar-feature-grid.d.ts +19 -1
  78. package/dist/navbar-feature-grid.js +1 -1
  79. package/dist/navbar-floating-pill.cjs +1 -1
  80. package/dist/navbar-floating-pill.d.cts +15 -1
  81. package/dist/navbar-floating-pill.d.ts +15 -1
  82. package/dist/navbar-floating-pill.js +1 -1
  83. package/dist/navbar-fullscreen-menu.cjs +1 -0
  84. package/dist/navbar-fullscreen-menu.d.cts +15 -1
  85. package/dist/navbar-fullscreen-menu.d.ts +15 -1
  86. package/dist/navbar-fullscreen-menu.js +1 -0
  87. package/dist/navbar-icon-links.cjs +1 -1
  88. package/dist/navbar-icon-links.d.cts +15 -1
  89. package/dist/navbar-icon-links.d.ts +15 -1
  90. package/dist/navbar-icon-links.js +1 -1
  91. package/dist/navbar-image-preview.cjs +1 -1
  92. package/dist/navbar-image-preview.d.cts +15 -1
  93. package/dist/navbar-image-preview.d.ts +15 -1
  94. package/dist/navbar-image-preview.js +1 -1
  95. package/dist/navbar-mega-menu.cjs +1 -1
  96. package/dist/navbar-mega-menu.d.cts +15 -1
  97. package/dist/navbar-mega-menu.d.ts +15 -1
  98. package/dist/navbar-mega-menu.js +1 -1
  99. package/dist/navbar-multi-column-groups.cjs +1 -0
  100. package/dist/navbar-multi-column-groups.d.cts +15 -1
  101. package/dist/navbar-multi-column-groups.d.ts +15 -1
  102. package/dist/navbar-multi-column-groups.js +1 -0
  103. package/dist/navbar-platform-resources.cjs +59 -26
  104. package/dist/navbar-platform-resources.d.cts +16 -2
  105. package/dist/navbar-platform-resources.d.ts +16 -2
  106. package/dist/navbar-platform-resources.js +59 -26
  107. package/dist/navbar-search-focused.cjs +1 -0
  108. package/dist/navbar-search-focused.d.cts +19 -1
  109. package/dist/navbar-search-focused.d.ts +19 -1
  110. package/dist/navbar-search-focused.js +1 -0
  111. package/dist/navbar-sidebar-mobile.cjs +1 -0
  112. package/dist/navbar-sidebar-mobile.d.cts +15 -1
  113. package/dist/navbar-sidebar-mobile.d.ts +15 -1
  114. package/dist/navbar-sidebar-mobile.js +1 -0
  115. package/dist/navbar-simple-links.cjs +1 -0
  116. package/dist/navbar-simple-links.d.cts +19 -1
  117. package/dist/navbar-simple-links.d.ts +19 -1
  118. package/dist/navbar-simple-links.js +1 -0
  119. package/dist/navbar-split-cta.cjs +1 -1
  120. package/dist/navbar-split-cta.d.cts +15 -1
  121. package/dist/navbar-split-cta.d.ts +15 -1
  122. package/dist/navbar-split-cta.js +1 -1
  123. package/dist/navbar-sticky-compact.cjs +1 -0
  124. package/dist/navbar-sticky-compact.d.cts +15 -1
  125. package/dist/navbar-sticky-compact.d.ts +15 -1
  126. package/dist/navbar-sticky-compact.js +1 -0
  127. package/dist/navbar-tabbed-sections.cjs +1 -1
  128. package/dist/navbar-tabbed-sections.d.cts +15 -1
  129. package/dist/navbar-tabbed-sections.d.ts +15 -1
  130. package/dist/navbar-tabbed-sections.js +1 -1
  131. package/dist/navbar-transparent-overlay.cjs +1 -0
  132. package/dist/navbar-transparent-overlay.d.cts +15 -1
  133. package/dist/navbar-transparent-overlay.d.ts +15 -1
  134. package/dist/navbar-transparent-overlay.js +1 -0
  135. package/dist/registry.cjs +380 -223
  136. package/dist/registry.js +380 -223
  137. package/dist/social-link-icon.d.cts +1 -1
  138. package/dist/social-link-icon.d.ts +1 -1
  139. package/package.json +1 -1
@@ -792,8 +792,41 @@ var NavbarPlatformResources = ({
792
792
  const hasDropdownItems = (link) => Boolean(link.links?.length || link.dropdownGroups?.length);
793
793
  const renderDropdownContent = (link) => {
794
794
  const layout = link.layout || "simple-list";
795
+ if (layout === "list-with-icons") {
796
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] overflow-y-auto p-4 md:!w-[900px]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid w-full grid-cols-3 gap-4", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
797
+ NavigationMenuLink,
798
+ {
799
+ href: getLinkUrl(item),
800
+ className: "!flex h-full min-h-20 !w-full min-w-0 flex-row items-center gap-4 rounded-lg border border-input bg-background p-4 hover:bg-accent hover:text-accent-foreground",
801
+ children: [
802
+ item.image && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-12 w-12 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsxRuntime.jsx(
803
+ img.Img,
804
+ {
805
+ src: item.image,
806
+ alt: typeof item.label === "string" ? item.label : "Menu item",
807
+ className: "h-full w-full object-cover object-center",
808
+ optixFlowConfig
809
+ }
810
+ ) }),
811
+ !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-12 w-12 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(
812
+ DynamicIcon,
813
+ {
814
+ name: item.icon || item.iconName,
815
+ size: 18,
816
+ className: "shrink-0"
817
+ }
818
+ ) }),
819
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1 overflow-hidden", children: [
820
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium truncate", children: item.label }),
821
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
822
+ ] })
823
+ ]
824
+ },
825
+ `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
826
+ )) }) });
827
+ }
795
828
  if (layout === "simple-list") {
796
- return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "w-[400px] max-w-[calc(100vw-2rem)] p-3", children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "w-full space-y-1", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsx(
829
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[400px] max-w-[calc(100vw-2rem)] p-3 md:!w-[400px]", children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "w-full space-y-1", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsx(
797
830
  "li",
798
831
  {
799
832
  className: "w-full",
@@ -812,8 +845,8 @@ var NavbarPlatformResources = ({
812
845
  }
813
846
  ) }),
814
847
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
815
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium", children: item.label }),
816
- item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-xs text-muted-foreground group-hover/link:text-foreground", children: item.description })
848
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium truncate", children: item.label }),
849
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-xs text-muted-foreground group-hover/link:text-foreground", children: item.description })
817
850
  ] })
818
851
  ]
819
852
  }
@@ -825,7 +858,7 @@ var NavbarPlatformResources = ({
825
858
  if (layout === "featured-grid" && link.links && link.links.length > 0) {
826
859
  const featuredItem = link.links[0];
827
860
  const gridItems = link.links.slice(1);
828
- return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(260px,0.8fr)_minmax(0,1.2fr)] gap-8", children: [
861
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-6 md:!w-[900px]", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(260px,0.8fr)_minmax(0,1.2fr)] gap-8", children: [
829
862
  /* @__PURE__ */ jsxRuntime.jsx(
830
863
  NavigationMenuLink,
831
864
  {
@@ -842,8 +875,8 @@ var NavbarPlatformResources = ({
842
875
  }
843
876
  ) }),
844
877
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-5 xl:p-8", children: [
845
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 text-base", children: featuredItem.label }),
846
- featuredItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-normal text-muted-foreground", children: featuredItem.description })
878
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 text-base truncate", children: featuredItem.label }),
879
+ featuredItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: featuredItem.description })
847
880
  ] })
848
881
  ] })
849
882
  }
@@ -863,8 +896,8 @@ var NavbarPlatformResources = ({
863
896
  size: 20
864
897
  }
865
898
  ) }),
866
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-1 break-words text-base", children: item.label }),
867
- item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: item.description })
899
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-1 truncate text-base", children: item.label }),
900
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
868
901
  ]
869
902
  },
870
903
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -874,7 +907,7 @@ var NavbarPlatformResources = ({
874
907
  }
875
908
  if (layout === "two-column-cta" && link.dropdownGroups && link.dropdownGroups.length > 0) {
876
909
  const ctaItem = link.links && link.links.length > 0 ? link.links[link.links.length - 1] : null;
877
- return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(0,1fr)_minmax(0,1fr)] gap-4", children: [
910
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-6 md:!w-[900px]", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(0,1fr)_minmax(0,1fr)] gap-4", children: [
878
911
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0", children: link.dropdownGroups[0] && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
879
912
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-6 text-xs tracking-widest text-muted-foreground uppercase", children: link.dropdownGroups[0].label }),
880
913
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-2 gap-4", children: link.dropdownGroups[0].links.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
@@ -890,7 +923,7 @@ var NavbarPlatformResources = ({
890
923
  size: 16
891
924
  }
892
925
  ) }),
893
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 break-words text-base", children: item.label })
926
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 truncate text-base", children: item.label })
894
927
  ]
895
928
  },
896
929
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -914,8 +947,8 @@ var NavbarPlatformResources = ({
914
947
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-col p-5 xl:p-8", children: [
915
948
  ctaItem.background && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-8 text-xs tracking-widest text-muted-foreground uppercase", children: ctaItem.background }),
916
949
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-auto", children: [
917
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4 break-words text-xl", children: ctaItem.label }),
918
- ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: ctaItem.description })
950
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4 truncate text-xl", children: ctaItem.label }),
951
+ ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: ctaItem.description })
919
952
  ] })
920
953
  ] })
921
954
  ] })
@@ -926,7 +959,7 @@ var NavbarPlatformResources = ({
926
959
  if (layout === "list-showcase" && link.dropdownGroups && link.dropdownGroups.length > 0) {
927
960
  const listItems = link.dropdownGroups[0].links;
928
961
  const showcaseItems = link.links || [];
929
- return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(260px,0.7fr)_minmax(0,1.3fr)] gap-8", children: [
962
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-6 md:!w-[900px]", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-[minmax(260px,0.7fr)_minmax(0,1.3fr)] gap-8", children: [
930
963
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0", children: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
931
964
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4 text-xs tracking-widest text-muted-foreground uppercase", children: link.dropdownGroups[0].label }),
932
965
  link.dropdownGroups[0].description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-6 text-sm font-normal text-muted-foreground", children: link.dropdownGroups[0].description }),
@@ -943,7 +976,7 @@ var NavbarPlatformResources = ({
943
976
  size: 16
944
977
  }
945
978
  ),
946
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 break-words text-base", children: item.label })
979
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "min-w-0 truncate text-base", children: item.label })
947
980
  ]
948
981
  },
949
982
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -956,8 +989,8 @@ var NavbarPlatformResources = ({
956
989
  className: "!flex !w-full min-w-0 flex-row items-center overflow-clip rounded-lg border border-input bg-background p-0 hover:bg-transparent",
957
990
  children: [
958
991
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1 p-5 xl:p-8", children: [
959
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 break-words text-base", children: showcase.label }),
960
- showcase.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: showcase.description })
992
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 truncate text-base", children: showcase.label }),
993
+ showcase.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: showcase.description })
961
994
  ] }),
962
995
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-[154px] max-w-[264px] shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(
963
996
  img.Img,
@@ -976,7 +1009,7 @@ var NavbarPlatformResources = ({
976
1009
  }
977
1010
  if (layout === "multi-section" && link.dropdownGroups) {
978
1011
  const ctaItem = link.links && link.links.length > 0 ? link.links[link.links.length - 1] : null;
979
- return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-8", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-8", children: [
1012
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-8 md:!w-[900px]", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-8", children: [
980
1013
  link.dropdownGroups.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
981
1014
  "div",
982
1015
  {
@@ -989,8 +1022,8 @@ var NavbarPlatformResources = ({
989
1022
  href: getLinkUrl(item),
990
1023
  className: "!flex h-full w-full min-w-0 flex-col overflow-clip rounded-lg border border-input bg-background p-5 hover:bg-accent hover:text-accent-foreground xl:p-8",
991
1024
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-auto", children: [
992
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 break-words text-base", children: item.label }),
993
- item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: item.description })
1025
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 truncate text-base", children: item.label }),
1026
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
994
1027
  ] })
995
1028
  },
996
1029
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -1007,8 +1040,8 @@ var NavbarPlatformResources = ({
1007
1040
  className: "mb-6 !flex !w-full min-w-0 flex-row overflow-clip rounded-lg border border-input bg-background p-0 hover:bg-transparent",
1008
1041
  children: [
1009
1042
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1 p-5 xl:p-8", children: [
1010
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 break-words text-base", children: ctaItem.label }),
1011
- ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: ctaItem.description })
1043
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 truncate text-base", children: ctaItem.label }),
1044
+ ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: ctaItem.description })
1012
1045
  ] }),
1013
1046
  ctaItem.image && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-1/3 max-w-[130px] shrink-0", children: /* @__PURE__ */ jsxRuntime.jsx(
1014
1047
  img.Img,
@@ -1024,12 +1057,12 @@ var NavbarPlatformResources = ({
1024
1057
  ),
1025
1058
  ctaItem.background && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center gap-3 rounded-lg bg-secondary/30 p-3 hover:bg-secondary/80 focus:bg-secondary/80", children: [
1026
1059
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "rounded-md bg-secondary px-2 py-1 text-xs font-semibold text-secondary-foreground", children: ctaItem.background }),
1027
- ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-ellipsis text-secondary-foreground", children: ctaItem.description })
1060
+ ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate text-sm text-secondary-foreground", children: ctaItem.description })
1028
1061
  ] })
1029
1062
  ] })
1030
1063
  ] }) });
1031
1064
  }
1032
- return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-4", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
1065
+ return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-4 md:!w-[900px]", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
1033
1066
  NavigationMenuLink,
1034
1067
  {
1035
1068
  href: getLinkUrl(item),
@@ -1046,8 +1079,8 @@ var NavbarPlatformResources = ({
1046
1079
  ) }),
1047
1080
  !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-12 w-12 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon || item.iconName, size: 18 }) }),
1048
1081
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
1049
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-medium text-foreground", children: item.label }),
1050
- item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: item.description })
1082
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-medium text-foreground", children: item.label }),
1083
+ item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
1051
1084
  ] })
1052
1085
  ]
1053
1086
  },
@@ -1084,7 +1117,7 @@ var NavbarPlatformResources = ({
1084
1117
  return /* @__PURE__ */ jsxRuntime.jsx(
1085
1118
  Section,
1086
1119
  {
1087
- id: sectionId,
1120
+ id: "navbar-platform-resources",
1088
1121
  background,
1089
1122
  spacing: spacingOverride ?? spacing,
1090
1123
  className: sectionClasses,
@@ -53,7 +53,7 @@ import '@opensite/hooks/usePlatformFromUrl';
53
53
  * ctaCard (optional) for promotional content
54
54
  * - Example use case: "Resources" menu with sections for Blog, News, Case Studies, Customers
55
55
  */
56
- type DropdownLayout = "simple-list" | "featured-grid" | "two-column-cta" | "list-showcase" | "multi-section";
56
+ type DropdownLayout = "simple-list" | "list-with-icons" | "featured-grid" | "two-column-cta" | "list-showcase" | "multi-section";
57
57
  /**
58
58
  * Menu link configuration with layout-based dropdown options
59
59
  */
@@ -68,6 +68,20 @@ interface IMenuLink {
68
68
  * Props for the NavbarPlatformResources component
69
69
  */
70
70
  interface NavbarPlatformResourcesProps {
71
+ /**
72
+ * Logo configuration
73
+ */
74
+ logo?: LogoConfig;
75
+ /**
76
+ * Navigation menu links with optional dropdown groups
77
+ */
78
+ menuLinks?: IMenuLink[];
79
+ /**
80
+ * Actions rendered on the right side (desktop) and bottom (mobile)
81
+ */
82
+ actions?: ActionConfig[];
83
+ }
84
+ interface NavbarPlatformResourcesRuntimeProps {
71
85
  /**
72
86
  * Additional CSS classes for the section
73
87
  */
@@ -146,6 +160,6 @@ interface NavbarPlatformResourcesProps {
146
160
  * display icons or images. Mobile view uses a full-screen overlay with accordion navigation.
147
161
  * Ideal for platforms that need configurable navigation and supporting resources.
148
162
  */
149
- declare const NavbarPlatformResources: ({ sectionId, className, containerClassName, navigationMenuClassName, navigationMenuListClassName, actionsClassName, logoClassName, mobileMenuClassName, logo, logoSlot, menuLinks, actions, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarPlatformResourcesProps) => react_jsx_runtime.JSX.Element;
163
+ declare const NavbarPlatformResources: ({ sectionId, className, containerClassName, navigationMenuClassName, navigationMenuListClassName, actionsClassName, logoClassName, mobileMenuClassName, logo, logoSlot, menuLinks, actions, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarPlatformResourcesRuntimeProps) => react_jsx_runtime.JSX.Element;
150
164
 
151
165
  export { type DropdownLayout, ILinkItem, type IMenuLink, IMenuLinkGroup, LogoConfig, NavbarPlatformResources, type NavbarPlatformResourcesProps };
@@ -53,7 +53,7 @@ import '@opensite/hooks/usePlatformFromUrl';
53
53
  * ctaCard (optional) for promotional content
54
54
  * - Example use case: "Resources" menu with sections for Blog, News, Case Studies, Customers
55
55
  */
56
- type DropdownLayout = "simple-list" | "featured-grid" | "two-column-cta" | "list-showcase" | "multi-section";
56
+ type DropdownLayout = "simple-list" | "list-with-icons" | "featured-grid" | "two-column-cta" | "list-showcase" | "multi-section";
57
57
  /**
58
58
  * Menu link configuration with layout-based dropdown options
59
59
  */
@@ -68,6 +68,20 @@ interface IMenuLink {
68
68
  * Props for the NavbarPlatformResources component
69
69
  */
70
70
  interface NavbarPlatformResourcesProps {
71
+ /**
72
+ * Logo configuration
73
+ */
74
+ logo?: LogoConfig;
75
+ /**
76
+ * Navigation menu links with optional dropdown groups
77
+ */
78
+ menuLinks?: IMenuLink[];
79
+ /**
80
+ * Actions rendered on the right side (desktop) and bottom (mobile)
81
+ */
82
+ actions?: ActionConfig[];
83
+ }
84
+ interface NavbarPlatformResourcesRuntimeProps {
71
85
  /**
72
86
  * Additional CSS classes for the section
73
87
  */
@@ -146,6 +160,6 @@ interface NavbarPlatformResourcesProps {
146
160
  * display icons or images. Mobile view uses a full-screen overlay with accordion navigation.
147
161
  * Ideal for platforms that need configurable navigation and supporting resources.
148
162
  */
149
- declare const NavbarPlatformResources: ({ sectionId, className, containerClassName, navigationMenuClassName, navigationMenuListClassName, actionsClassName, logoClassName, mobileMenuClassName, logo, logoSlot, menuLinks, actions, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarPlatformResourcesProps) => react_jsx_runtime.JSX.Element;
163
+ declare const NavbarPlatformResources: ({ sectionId, className, containerClassName, navigationMenuClassName, navigationMenuListClassName, actionsClassName, logoClassName, mobileMenuClassName, logo, logoSlot, menuLinks, actions, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarPlatformResourcesRuntimeProps) => react_jsx_runtime.JSX.Element;
150
164
 
151
165
  export { type DropdownLayout, ILinkItem, type IMenuLink, IMenuLinkGroup, LogoConfig, NavbarPlatformResources, type NavbarPlatformResourcesProps };
@@ -769,8 +769,41 @@ var NavbarPlatformResources = ({
769
769
  const hasDropdownItems = (link) => Boolean(link.links?.length || link.dropdownGroups?.length);
770
770
  const renderDropdownContent = (link) => {
771
771
  const layout = link.layout || "simple-list";
772
+ if (layout === "list-with-icons") {
773
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] overflow-y-auto p-4 md:!w-[900px]", children: /* @__PURE__ */ jsx("div", { className: "grid w-full grid-cols-3 gap-4", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxs(
774
+ NavigationMenuLink,
775
+ {
776
+ href: getLinkUrl(item),
777
+ className: "!flex h-full min-h-20 !w-full min-w-0 flex-row items-center gap-4 rounded-lg border border-input bg-background p-4 hover:bg-accent hover:text-accent-foreground",
778
+ children: [
779
+ item.image && /* @__PURE__ */ jsx("div", { className: "h-12 w-12 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
780
+ Img,
781
+ {
782
+ src: item.image,
783
+ alt: typeof item.label === "string" ? item.label : "Menu item",
784
+ className: "h-full w-full object-cover object-center",
785
+ optixFlowConfig
786
+ }
787
+ ) }),
788
+ !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-12 w-12 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: /* @__PURE__ */ jsx(
789
+ DynamicIcon,
790
+ {
791
+ name: item.icon || item.iconName,
792
+ size: 18,
793
+ className: "shrink-0"
794
+ }
795
+ ) }),
796
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 overflow-hidden", children: [
797
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium truncate", children: item.label }),
798
+ item.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
799
+ ] })
800
+ ]
801
+ },
802
+ `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
803
+ )) }) });
804
+ }
772
805
  if (layout === "simple-list") {
773
- return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "w-[400px] max-w-[calc(100vw-2rem)] p-3", children: /* @__PURE__ */ jsx("ul", { className: "w-full space-y-1", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsx(
806
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[400px] max-w-[calc(100vw-2rem)] p-3 md:!w-[400px]", children: /* @__PURE__ */ jsx("ul", { className: "w-full space-y-1", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsx(
774
807
  "li",
775
808
  {
776
809
  className: "w-full",
@@ -789,8 +822,8 @@ var NavbarPlatformResources = ({
789
822
  }
790
823
  ) }),
791
824
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
792
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
793
- item.description && /* @__PURE__ */ jsx("div", { className: "break-words text-xs text-muted-foreground group-hover/link:text-foreground", children: item.description })
825
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium truncate", children: item.label }),
826
+ item.description && /* @__PURE__ */ jsx("div", { className: "truncate text-xs text-muted-foreground group-hover/link:text-foreground", children: item.description })
794
827
  ] })
795
828
  ]
796
829
  }
@@ -802,7 +835,7 @@ var NavbarPlatformResources = ({
802
835
  if (layout === "featured-grid" && link.links && link.links.length > 0) {
803
836
  const featuredItem = link.links[0];
804
837
  const gridItems = link.links.slice(1);
805
- return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-6", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[minmax(260px,0.8fr)_minmax(0,1.2fr)] gap-8", children: [
838
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-6 md:!w-[900px]", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[minmax(260px,0.8fr)_minmax(0,1.2fr)] gap-8", children: [
806
839
  /* @__PURE__ */ jsx(
807
840
  NavigationMenuLink,
808
841
  {
@@ -819,8 +852,8 @@ var NavbarPlatformResources = ({
819
852
  }
820
853
  ) }),
821
854
  /* @__PURE__ */ jsxs("div", { className: "p-5 xl:p-8", children: [
822
- /* @__PURE__ */ jsx("div", { className: "mb-2 text-base", children: featuredItem.label }),
823
- featuredItem.description && /* @__PURE__ */ jsx("div", { className: "text-sm font-normal text-muted-foreground", children: featuredItem.description })
855
+ /* @__PURE__ */ jsx("div", { className: "mb-2 text-base truncate", children: featuredItem.label }),
856
+ featuredItem.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: featuredItem.description })
824
857
  ] })
825
858
  ] })
826
859
  }
@@ -840,8 +873,8 @@ var NavbarPlatformResources = ({
840
873
  size: 20
841
874
  }
842
875
  ) }),
843
- /* @__PURE__ */ jsx("div", { className: "mb-1 break-words text-base", children: item.label }),
844
- item.description && /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: item.description })
876
+ /* @__PURE__ */ jsx("div", { className: "mb-1 truncate text-base", children: item.label }),
877
+ item.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
845
878
  ]
846
879
  },
847
880
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -851,7 +884,7 @@ var NavbarPlatformResources = ({
851
884
  }
852
885
  if (layout === "two-column-cta" && link.dropdownGroups && link.dropdownGroups.length > 0) {
853
886
  const ctaItem = link.links && link.links.length > 0 ? link.links[link.links.length - 1] : null;
854
- return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-6", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[minmax(0,1fr)_minmax(0,1fr)] gap-4", children: [
887
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-6 md:!w-[900px]", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[minmax(0,1fr)_minmax(0,1fr)] gap-4", children: [
855
888
  /* @__PURE__ */ jsx("div", { className: "min-w-0", children: link.dropdownGroups[0] && /* @__PURE__ */ jsxs(Fragment, { children: [
856
889
  /* @__PURE__ */ jsx("div", { className: "mb-6 text-xs tracking-widest text-muted-foreground uppercase", children: link.dropdownGroups[0].label }),
857
890
  /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-4", children: link.dropdownGroups[0].links.map((item, itemIndex) => /* @__PURE__ */ jsxs(
@@ -867,7 +900,7 @@ var NavbarPlatformResources = ({
867
900
  size: 16
868
901
  }
869
902
  ) }),
870
- /* @__PURE__ */ jsx("div", { className: "min-w-0 break-words text-base", children: item.label })
903
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 truncate text-base", children: item.label })
871
904
  ]
872
905
  },
873
906
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -891,8 +924,8 @@ var NavbarPlatformResources = ({
891
924
  /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-col p-5 xl:p-8", children: [
892
925
  ctaItem.background && /* @__PURE__ */ jsx("div", { className: "mb-8 text-xs tracking-widest text-muted-foreground uppercase", children: ctaItem.background }),
893
926
  /* @__PURE__ */ jsxs("div", { className: "mt-auto", children: [
894
- /* @__PURE__ */ jsx("div", { className: "mb-4 break-words text-xl", children: ctaItem.label }),
895
- ctaItem.description && /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: ctaItem.description })
927
+ /* @__PURE__ */ jsx("div", { className: "mb-4 truncate text-xl", children: ctaItem.label }),
928
+ ctaItem.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: ctaItem.description })
896
929
  ] })
897
930
  ] })
898
931
  ] })
@@ -903,7 +936,7 @@ var NavbarPlatformResources = ({
903
936
  if (layout === "list-showcase" && link.dropdownGroups && link.dropdownGroups.length > 0) {
904
937
  const listItems = link.dropdownGroups[0].links;
905
938
  const showcaseItems = link.links || [];
906
- return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-6", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[minmax(260px,0.7fr)_minmax(0,1.3fr)] gap-8", children: [
939
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-6 md:!w-[900px]", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[minmax(260px,0.7fr)_minmax(0,1.3fr)] gap-8", children: [
907
940
  /* @__PURE__ */ jsx("div", { className: "min-w-0", children: /* @__PURE__ */ jsxs(Fragment, { children: [
908
941
  /* @__PURE__ */ jsx("div", { className: "mb-4 text-xs tracking-widest text-muted-foreground uppercase", children: link.dropdownGroups[0].label }),
909
942
  link.dropdownGroups[0].description && /* @__PURE__ */ jsx("div", { className: "mb-6 text-sm font-normal text-muted-foreground", children: link.dropdownGroups[0].description }),
@@ -920,7 +953,7 @@ var NavbarPlatformResources = ({
920
953
  size: 16
921
954
  }
922
955
  ),
923
- /* @__PURE__ */ jsx("div", { className: "min-w-0 break-words text-base", children: item.label })
956
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 truncate text-base", children: item.label })
924
957
  ]
925
958
  },
926
959
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -933,8 +966,8 @@ var NavbarPlatformResources = ({
933
966
  className: "!flex !w-full min-w-0 flex-row items-center overflow-clip rounded-lg border border-input bg-background p-0 hover:bg-transparent",
934
967
  children: [
935
968
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 p-5 xl:p-8", children: [
936
- /* @__PURE__ */ jsx("div", { className: "mb-2 break-words text-base", children: showcase.label }),
937
- showcase.description && /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: showcase.description })
969
+ /* @__PURE__ */ jsx("div", { className: "mb-2 truncate text-base", children: showcase.label }),
970
+ showcase.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: showcase.description })
938
971
  ] }),
939
972
  /* @__PURE__ */ jsx("div", { className: "h-[154px] max-w-[264px] shrink-0", children: /* @__PURE__ */ jsx(
940
973
  Img,
@@ -953,7 +986,7 @@ var NavbarPlatformResources = ({
953
986
  }
954
987
  if (layout === "multi-section" && link.dropdownGroups) {
955
988
  const ctaItem = link.links && link.links.length > 0 ? link.links[link.links.length - 1] : null;
956
- return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-8", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-8", children: [
989
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-8 md:!w-[900px]", children: /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-2 gap-8", children: [
957
990
  link.dropdownGroups.map((group, groupIndex) => /* @__PURE__ */ jsxs(
958
991
  "div",
959
992
  {
@@ -966,8 +999,8 @@ var NavbarPlatformResources = ({
966
999
  href: getLinkUrl(item),
967
1000
  className: "!flex h-full w-full min-w-0 flex-col overflow-clip rounded-lg border border-input bg-background p-5 hover:bg-accent hover:text-accent-foreground xl:p-8",
968
1001
  children: /* @__PURE__ */ jsxs("div", { className: "mt-auto", children: [
969
- /* @__PURE__ */ jsx("div", { className: "mb-2 break-words text-base", children: item.label }),
970
- item.description && /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: item.description })
1002
+ /* @__PURE__ */ jsx("div", { className: "mb-2 truncate text-base", children: item.label }),
1003
+ item.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
971
1004
  ] })
972
1005
  },
973
1006
  `${typeof item.label === "string" ? item.label : "item"}-${itemIndex}`
@@ -984,8 +1017,8 @@ var NavbarPlatformResources = ({
984
1017
  className: "mb-6 !flex !w-full min-w-0 flex-row overflow-clip rounded-lg border border-input bg-background p-0 hover:bg-transparent",
985
1018
  children: [
986
1019
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 p-5 xl:p-8", children: [
987
- /* @__PURE__ */ jsx("div", { className: "mb-2 break-words text-base", children: ctaItem.label }),
988
- ctaItem.description && /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: ctaItem.description })
1020
+ /* @__PURE__ */ jsx("div", { className: "mb-2 truncate text-base", children: ctaItem.label }),
1021
+ ctaItem.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: ctaItem.description })
989
1022
  ] }),
990
1023
  ctaItem.image && /* @__PURE__ */ jsx("div", { className: "w-1/3 max-w-[130px] shrink-0", children: /* @__PURE__ */ jsx(
991
1024
  Img,
@@ -1001,12 +1034,12 @@ var NavbarPlatformResources = ({
1001
1034
  ),
1002
1035
  ctaItem.background && /* @__PURE__ */ jsxs("div", { className: "flex flex-row items-center gap-3 rounded-lg bg-secondary/30 p-3 hover:bg-secondary/80 focus:bg-secondary/80", children: [
1003
1036
  /* @__PURE__ */ jsx("span", { className: "rounded-md bg-secondary px-2 py-1 text-xs font-semibold text-secondary-foreground", children: ctaItem.background }),
1004
- ctaItem.description && /* @__PURE__ */ jsx("span", { className: "text-sm text-ellipsis text-secondary-foreground", children: ctaItem.description })
1037
+ ctaItem.description && /* @__PURE__ */ jsx("span", { className: "truncate text-sm text-secondary-foreground", children: ctaItem.description })
1005
1038
  ] })
1006
1039
  ] })
1007
1040
  ] }) });
1008
1041
  }
1009
- return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "w-[900px] max-w-[calc(100vw-2rem)] p-4", children: /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxs(
1042
+ return /* @__PURE__ */ jsx(NavigationMenuContent, { className: "md:left-1/2 md:-translate-x-1/2 !w-[900px] max-w-[calc(100vw-2rem)] p-4 md:!w-[900px]", children: /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxs(
1010
1043
  NavigationMenuLink,
1011
1044
  {
1012
1045
  href: getLinkUrl(item),
@@ -1023,8 +1056,8 @@ var NavbarPlatformResources = ({
1023
1056
  ) }),
1024
1057
  !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-12 w-12 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon || item.iconName, size: 18 }) }),
1025
1058
  /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
1026
- /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-medium text-foreground", children: item.label }),
1027
- item.description && /* @__PURE__ */ jsx("div", { className: "break-words text-sm font-normal text-muted-foreground", children: item.description })
1059
+ /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-medium text-foreground", children: item.label }),
1060
+ item.description && /* @__PURE__ */ jsx("div", { className: "truncate text-sm font-normal text-muted-foreground", children: item.description })
1028
1061
  ] })
1029
1062
  ]
1030
1063
  },
@@ -1061,7 +1094,7 @@ var NavbarPlatformResources = ({
1061
1094
  return /* @__PURE__ */ jsx(
1062
1095
  Section,
1063
1096
  {
1064
- id: sectionId,
1097
+ id: "navbar-platform-resources",
1065
1098
  background,
1066
1099
  spacing: spacingOverride ?? spacing,
1067
1100
  className: sectionClasses,
@@ -783,6 +783,7 @@ var NavbarSearchFocused = ({
783
783
  /* @__PURE__ */ jsxRuntime.jsx(
784
784
  Section,
785
785
  {
786
+ id: "navbar-search-focused",
786
787
  background,
787
788
  spacing: spacingOverride ?? spacing,
788
789
  className: sectionClasses,
@@ -19,6 +19,24 @@ interface NavItem {
19
19
  * Props for the NavbarSearchFocused component
20
20
  */
21
21
  interface NavbarSearchFocusedProps {
22
+ /**
23
+ * Logo configuration
24
+ */
25
+ logo?: LogoConfig;
26
+ /**
27
+ * Search placeholder text
28
+ */
29
+ searchPlaceholder?: React.ReactNode;
30
+ /**
31
+ * Navigation items for the left side
32
+ */
33
+ navItems?: NavItem[];
34
+ /**
35
+ * Authentication action configurations for desktop
36
+ */
37
+ authActions?: ActionConfig[];
38
+ }
39
+ interface NavbarSearchFocusedRuntimeProps {
22
40
  /**
23
41
  * Additional CSS classes for the section
24
42
  */
@@ -121,6 +139,6 @@ interface NavbarSearchFocusedProps {
121
139
  * below the logo and hamburger menu, with navigation in a slide-out sheet. Ideal for
122
140
  * e-commerce sites, marketplaces, documentation sites, and content-heavy platforms.
123
141
  */
124
- declare const NavbarSearchFocused: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navItems, navigationSlot, searchPlaceholder, onSearch, searchSlot, authActions, authActionsSlot, mobileMenuActions, mobileMenuActionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarSearchFocusedProps) => react_jsx_runtime.JSX.Element;
142
+ declare const NavbarSearchFocused: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navItems, navigationSlot, searchPlaceholder, onSearch, searchSlot, authActions, authActionsSlot, mobileMenuActions, mobileMenuActionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarSearchFocusedRuntimeProps) => react_jsx_runtime.JSX.Element;
125
143
 
126
144
  export { NavbarSearchFocused, type NavbarSearchFocusedProps };
@@ -19,6 +19,24 @@ interface NavItem {
19
19
  * Props for the NavbarSearchFocused component
20
20
  */
21
21
  interface NavbarSearchFocusedProps {
22
+ /**
23
+ * Logo configuration
24
+ */
25
+ logo?: LogoConfig;
26
+ /**
27
+ * Search placeholder text
28
+ */
29
+ searchPlaceholder?: React.ReactNode;
30
+ /**
31
+ * Navigation items for the left side
32
+ */
33
+ navItems?: NavItem[];
34
+ /**
35
+ * Authentication action configurations for desktop
36
+ */
37
+ authActions?: ActionConfig[];
38
+ }
39
+ interface NavbarSearchFocusedRuntimeProps {
22
40
  /**
23
41
  * Additional CSS classes for the section
24
42
  */
@@ -121,6 +139,6 @@ interface NavbarSearchFocusedProps {
121
139
  * below the logo and hamburger menu, with navigation in a slide-out sheet. Ideal for
122
140
  * e-commerce sites, marketplaces, documentation sites, and content-heavy platforms.
123
141
  */
124
- declare const NavbarSearchFocused: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navItems, navigationSlot, searchPlaceholder, onSearch, searchSlot, authActions, authActionsSlot, mobileMenuActions, mobileMenuActionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarSearchFocusedProps) => react_jsx_runtime.JSX.Element;
142
+ declare const NavbarSearchFocused: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navItems, navigationSlot, searchPlaceholder, onSearch, searchSlot, authActions, authActionsSlot, mobileMenuActions, mobileMenuActionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarSearchFocusedRuntimeProps) => react_jsx_runtime.JSX.Element;
125
143
 
126
144
  export { NavbarSearchFocused, type NavbarSearchFocusedProps };
@@ -761,6 +761,7 @@ var NavbarSearchFocused = ({
761
761
  /* @__PURE__ */ jsx(
762
762
  Section,
763
763
  {
764
+ id: "navbar-search-focused",
764
765
  background,
765
766
  spacing: spacingOverride ?? spacing,
766
767
  className: sectionClasses,
@@ -854,6 +854,7 @@ var NavbarSidebarMobile = ({
854
854
  /* @__PURE__ */ jsxRuntime.jsx(
855
855
  Section,
856
856
  {
857
+ id: "navbar-sidebar-mobile",
857
858
  background,
858
859
  spacing: spacingOverride ?? spacing,
859
860
  className: sectionClasses,
@@ -24,6 +24,20 @@ interface MenuItem {
24
24
  * Props for the NavbarSidebarMobile component
25
25
  */
26
26
  interface NavbarSidebarMobileProps {
27
+ /**
28
+ * Logo configuration
29
+ */
30
+ logo?: LogoConfig;
31
+ /**
32
+ * Navigation menu items
33
+ */
34
+ menu?: MenuItem[];
35
+ /**
36
+ * Authentication action configurations
37
+ */
38
+ authActions?: ActionConfig[];
39
+ }
40
+ interface NavbarSidebarMobileRuntimeProps {
27
41
  /**
28
42
  * Additional CSS classes for the section
29
43
  */
@@ -117,6 +131,6 @@ interface NavbarSidebarMobileProps {
117
131
  * header with logo and close button. Ideal for applications that need a more app-like
118
132
  * mobile navigation experience.
119
133
  */
120
- declare const NavbarSidebarMobile: ({ logo, logoSlot, logoClassName, menu, menuSlot, mobileExtraLinks, mobileExtraLinksSlot, authActions, authActionsSlot, className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarSidebarMobileProps) => react_jsx_runtime.JSX.Element;
134
+ declare const NavbarSidebarMobile: ({ logo, logoSlot, logoClassName, menu, menuSlot, mobileExtraLinks, mobileExtraLinksSlot, authActions, authActionsSlot, className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarSidebarMobileRuntimeProps) => react_jsx_runtime.JSX.Element;
121
135
 
122
136
  export { NavbarSidebarMobile, type NavbarSidebarMobileProps };