@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.
- package/dist/components.cjs +13 -7
- package/dist/components.js +13 -7
- package/dist/footer-accordion-social.cjs +1 -1
- package/dist/footer-accordion-social.js +1 -1
- package/dist/footer-animated-social.cjs +1 -1
- package/dist/footer-animated-social.js +1 -1
- package/dist/footer-background-card.cjs +1 -1
- package/dist/footer-background-card.js +1 -1
- package/dist/footer-brand-description.cjs +1 -0
- package/dist/footer-brand-description.js +1 -0
- package/dist/footer-brand-links-contact.cjs +1 -1
- package/dist/footer-brand-links-contact.js +1 -1
- package/dist/footer-comprehensive-links.cjs +1 -1
- package/dist/footer-comprehensive-links.js +1 -1
- package/dist/footer-contact-card.cjs +1 -1
- package/dist/footer-contact-card.js +1 -1
- package/dist/footer-cta-banner.cjs +1 -1
- package/dist/footer-cta-banner.js +1 -1
- package/dist/footer-cta-social.cjs +1 -1
- package/dist/footer-cta-social.js +1 -1
- package/dist/footer-info-cards-accordion.cjs +1 -1
- package/dist/footer-info-cards-accordion.js +1 -1
- package/dist/footer-links-grid.cjs +1 -0
- package/dist/footer-links-grid.js +1 -0
- package/dist/footer-nav-social.cjs +1 -0
- package/dist/footer-nav-social.js +1 -0
- package/dist/footer-newsletter-contact.cjs +1 -1
- package/dist/footer-newsletter-contact.js +1 -1
- package/dist/footer-newsletter-grid.cjs +1 -0
- package/dist/footer-newsletter-grid.js +1 -0
- package/dist/footer-newsletter-minimal.cjs +1 -1
- package/dist/footer-newsletter-minimal.js +1 -1
- package/dist/footer-simple-centered.cjs +1 -1
- package/dist/footer-simple-centered.js +1 -1
- package/dist/footer-social-apps.cjs +1 -0
- package/dist/footer-social-apps.js +1 -0
- package/dist/footer-social-newsletter.cjs +1 -0
- package/dist/footer-social-newsletter.js +1 -0
- package/dist/footer-split-image-accordion.cjs +1 -1
- package/dist/footer-split-image-accordion.js +1 -1
- package/dist/hero-stats-social-proof.cjs +35 -5
- package/dist/hero-stats-social-proof.d.cts +1 -1
- package/dist/hero-stats-social-proof.d.ts +1 -1
- package/dist/hero-stats-social-proof.js +19 -4
- package/dist/hero-tech-carousel.cjs +489 -292
- package/dist/hero-tech-carousel.d.cts +137 -32
- package/dist/hero-tech-carousel.d.ts +137 -32
- package/dist/hero-tech-carousel.js +490 -289
- package/dist/index.cjs +13 -7
- package/dist/index.js +13 -7
- package/dist/navbar-animated-preview.cjs +1 -0
- package/dist/navbar-animated-preview.d.cts +15 -1
- package/dist/navbar-animated-preview.d.ts +15 -1
- package/dist/navbar-animated-preview.js +1 -0
- package/dist/navbar-centered-menu.cjs +1 -1
- package/dist/navbar-centered-menu.d.cts +15 -1
- package/dist/navbar-centered-menu.d.ts +15 -1
- package/dist/navbar-centered-menu.js +1 -1
- package/dist/navbar-dark-icons.cjs +1 -1
- package/dist/navbar-dark-icons.d.cts +15 -1
- package/dist/navbar-dark-icons.d.ts +15 -1
- package/dist/navbar-dark-icons.js +1 -1
- package/dist/navbar-dropdown-menu.cjs +1 -1
- package/dist/navbar-dropdown-menu.d.cts +15 -1
- package/dist/navbar-dropdown-menu.d.ts +15 -1
- package/dist/navbar-dropdown-menu.js +1 -1
- package/dist/navbar-education-platform.cjs +1 -0
- package/dist/navbar-education-platform.d.cts +15 -1
- package/dist/navbar-education-platform.d.ts +15 -1
- package/dist/navbar-education-platform.js +1 -0
- package/dist/navbar-enterprise-mega.cjs +2 -1
- package/dist/navbar-enterprise-mega.d.cts +15 -1
- package/dist/navbar-enterprise-mega.d.ts +15 -1
- package/dist/navbar-enterprise-mega.js +2 -1
- package/dist/navbar-feature-grid.cjs +1 -1
- package/dist/navbar-feature-grid.d.cts +19 -1
- package/dist/navbar-feature-grid.d.ts +19 -1
- package/dist/navbar-feature-grid.js +1 -1
- package/dist/navbar-floating-pill.cjs +1 -1
- package/dist/navbar-floating-pill.d.cts +15 -1
- package/dist/navbar-floating-pill.d.ts +15 -1
- package/dist/navbar-floating-pill.js +1 -1
- package/dist/navbar-fullscreen-menu.cjs +1 -0
- package/dist/navbar-fullscreen-menu.d.cts +15 -1
- package/dist/navbar-fullscreen-menu.d.ts +15 -1
- package/dist/navbar-fullscreen-menu.js +1 -0
- package/dist/navbar-icon-links.cjs +1 -1
- package/dist/navbar-icon-links.d.cts +15 -1
- package/dist/navbar-icon-links.d.ts +15 -1
- package/dist/navbar-icon-links.js +1 -1
- package/dist/navbar-image-preview.cjs +1 -1
- package/dist/navbar-image-preview.d.cts +15 -1
- package/dist/navbar-image-preview.d.ts +15 -1
- package/dist/navbar-image-preview.js +1 -1
- package/dist/navbar-mega-menu.cjs +1 -1
- package/dist/navbar-mega-menu.d.cts +15 -1
- package/dist/navbar-mega-menu.d.ts +15 -1
- package/dist/navbar-mega-menu.js +1 -1
- package/dist/navbar-multi-column-groups.cjs +1 -0
- package/dist/navbar-multi-column-groups.d.cts +15 -1
- package/dist/navbar-multi-column-groups.d.ts +15 -1
- package/dist/navbar-multi-column-groups.js +1 -0
- package/dist/navbar-platform-resources.cjs +59 -26
- package/dist/navbar-platform-resources.d.cts +16 -2
- package/dist/navbar-platform-resources.d.ts +16 -2
- package/dist/navbar-platform-resources.js +59 -26
- package/dist/navbar-search-focused.cjs +1 -0
- package/dist/navbar-search-focused.d.cts +19 -1
- package/dist/navbar-search-focused.d.ts +19 -1
- package/dist/navbar-search-focused.js +1 -0
- package/dist/navbar-sidebar-mobile.cjs +1 -0
- package/dist/navbar-sidebar-mobile.d.cts +15 -1
- package/dist/navbar-sidebar-mobile.d.ts +15 -1
- package/dist/navbar-sidebar-mobile.js +1 -0
- package/dist/navbar-simple-links.cjs +1 -0
- package/dist/navbar-simple-links.d.cts +19 -1
- package/dist/navbar-simple-links.d.ts +19 -1
- package/dist/navbar-simple-links.js +1 -0
- package/dist/navbar-split-cta.cjs +1 -1
- package/dist/navbar-split-cta.d.cts +15 -1
- package/dist/navbar-split-cta.d.ts +15 -1
- package/dist/navbar-split-cta.js +1 -1
- package/dist/navbar-sticky-compact.cjs +1 -0
- package/dist/navbar-sticky-compact.d.cts +15 -1
- package/dist/navbar-sticky-compact.d.ts +15 -1
- package/dist/navbar-sticky-compact.js +1 -0
- package/dist/navbar-tabbed-sections.cjs +1 -1
- package/dist/navbar-tabbed-sections.d.cts +15 -1
- package/dist/navbar-tabbed-sections.d.ts +15 -1
- package/dist/navbar-tabbed-sections.js +1 -1
- package/dist/navbar-transparent-overlay.cjs +1 -0
- package/dist/navbar-transparent-overlay.d.cts +15 -1
- package/dist/navbar-transparent-overlay.d.ts +15 -1
- package/dist/navbar-transparent-overlay.js +1 -0
- package/dist/registry.cjs +380 -223
- package/dist/registry.js +380 -223
- package/dist/social-link-icon.d.cts +1 -1
- package/dist/social-link-icon.d.ts +1 -1
- 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: "
|
|
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
|
|
867
|
-
item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
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
|
|
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
|
|
918
|
-
ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
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
|
|
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
|
|
960
|
-
showcase.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
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
|
|
993
|
-
item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
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
|
|
1011
|
-
ctaItem.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
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-
|
|
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: "
|
|
1050
|
-
item.description && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
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:
|
|
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, }:
|
|
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, }:
|
|
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: "
|
|
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
|
|
844
|
-
item.description && /* @__PURE__ */ jsx("div", { className: "
|
|
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
|
|
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
|
|
895
|
-
ctaItem.description && /* @__PURE__ */ jsx("div", { className: "
|
|
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
|
|
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
|
|
937
|
-
showcase.description && /* @__PURE__ */ jsx("div", { className: "
|
|
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
|
|
970
|
-
item.description && /* @__PURE__ */ jsx("div", { className: "
|
|
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
|
|
988
|
-
ctaItem.description && /* @__PURE__ */ jsx("div", { className: "
|
|
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-
|
|
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: "
|
|
1027
|
-
item.description && /* @__PURE__ */ jsx("div", { className: "
|
|
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:
|
|
1097
|
+
id: "navbar-platform-resources",
|
|
1065
1098
|
background,
|
|
1066
1099
|
spacing: spacingOverride ?? spacing,
|
|
1067
1100
|
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, }:
|
|
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, }:
|
|
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 };
|
|
@@ -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, }:
|
|
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 };
|