@opensite/ui 1.0.7 → 1.0.9
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/navbar-animated-preview.cjs +16 -16
- package/dist/navbar-animated-preview.js +16 -16
- package/dist/navbar-centered-menu.cjs +1 -1
- package/dist/navbar-centered-menu.js +1 -1
- package/dist/navbar-dark-icons.cjs +1 -1
- package/dist/navbar-dark-icons.js +1 -1
- package/dist/navbar-dropdown-menu.cjs +1 -1
- package/dist/navbar-dropdown-menu.js +1 -1
- package/dist/navbar-education-platform.cjs +278 -236
- package/dist/navbar-education-platform.d.cts +61 -36
- package/dist/navbar-education-platform.d.ts +61 -36
- package/dist/navbar-education-platform.js +279 -237
- package/dist/navbar-enterprise-mega.cjs +6 -6
- package/dist/navbar-enterprise-mega.js +6 -6
- package/dist/navbar-feature-grid.cjs +1 -1
- package/dist/navbar-feature-grid.js +1 -1
- package/dist/navbar-icon-links.cjs +2 -1
- package/dist/navbar-icon-links.js +2 -1
- package/dist/navbar-image-preview.cjs +129 -50
- package/dist/navbar-image-preview.js +128 -50
- package/dist/navbar-mega-menu.cjs +1 -1
- package/dist/navbar-mega-menu.js +1 -1
- package/dist/navbar-multi-column-groups.cjs +53 -49
- package/dist/navbar-multi-column-groups.js +53 -49
- package/dist/navbar-platform-resources.cjs +5 -4
- package/dist/navbar-platform-resources.js +5 -4
- package/dist/navbar-search-focused.cjs +1 -1
- package/dist/navbar-search-focused.js +1 -1
- package/dist/navbar-sidebar-mobile.cjs +235 -166
- package/dist/navbar-sidebar-mobile.js +236 -167
- package/dist/navbar-simple-links.cjs +228 -184
- package/dist/navbar-simple-links.d.cts +15 -3
- package/dist/navbar-simple-links.d.ts +15 -3
- package/dist/navbar-simple-links.js +228 -183
- package/dist/navbar-split-cta.cjs +3 -3
- package/dist/navbar-split-cta.js +3 -3
- package/dist/navbar-sticky-compact.cjs +1 -1
- package/dist/navbar-sticky-compact.js +1 -1
- package/dist/navbar-tabbed-sections.cjs +1 -1
- package/dist/navbar-tabbed-sections.js +1 -1
- package/dist/navbar-transparent-overlay.cjs +244 -123
- package/dist/navbar-transparent-overlay.d.cts +30 -1
- package/dist/navbar-transparent-overlay.d.ts +30 -1
- package/dist/navbar-transparent-overlay.js +244 -123
- package/dist/registry.cjs +1008 -894
- package/dist/registry.js +1008 -894
- package/package.json +1 -1
package/dist/registry.cjs
CHANGED
|
@@ -57132,7 +57132,7 @@ var NavbarMobileMenu = ({
|
|
|
57132
57132
|
"data-state": open ? "open" : "closed",
|
|
57133
57133
|
children: [
|
|
57134
57134
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { children: title }) }),
|
|
57135
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-
|
|
57135
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
57136
57136
|
"button",
|
|
57137
57137
|
{
|
|
57138
57138
|
onClick: onClose,
|
|
@@ -58662,7 +58662,7 @@ var DesktopMenuItem2 = ({
|
|
|
58662
58662
|
if (hasDropdown) {
|
|
58663
58663
|
return /* @__PURE__ */ jsxRuntime.jsxs(NavigationMenuItem, { value: `${index}`, children: [
|
|
58664
58664
|
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { className: "h-auto bg-transparent px-3 py-2 font-normal hover:bg-muted focus:bg-muted data-[state=open]:bg-muted/50", children: item.label }),
|
|
58665
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "
|
|
58665
|
+
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "rounded-xl! border-0! p-4!", children: renderDropdownContent(
|
|
58666
58666
|
{ ...item, layout: effectiveLayout },
|
|
58667
58667
|
optixFlowConfig
|
|
58668
58668
|
) })
|
|
@@ -58733,7 +58733,7 @@ var renderDropdownContent = (item, optixFlowConfig) => {
|
|
|
58733
58733
|
var renderMobileDropdownContent = (item) => {
|
|
58734
58734
|
switch (item.layout) {
|
|
58735
58735
|
case "solutions-with-platform":
|
|
58736
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
58736
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col space-y-2", children: item.solutionCards?.map((solution) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2", children: [
|
|
58737
58737
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
58738
58738
|
Pressable,
|
|
58739
58739
|
{
|
|
@@ -58761,7 +58761,7 @@ var renderMobileDropdownContent = (item) => {
|
|
|
58761
58761
|
Pressable,
|
|
58762
58762
|
{
|
|
58763
58763
|
href: product.href,
|
|
58764
|
-
className: "flex items-center gap-2 text-sm text-muted-foreground",
|
|
58764
|
+
className: "flex items-center pl-4 gap-2 text-sm text-muted-foreground",
|
|
58765
58765
|
children: product.title
|
|
58766
58766
|
},
|
|
58767
58767
|
product.id
|
|
@@ -58772,7 +58772,7 @@ var renderMobileDropdownContent = (item) => {
|
|
|
58772
58772
|
Pressable,
|
|
58773
58773
|
{
|
|
58774
58774
|
href: resource.href,
|
|
58775
|
-
className: "flex items-center gap-2 text-sm text-muted-foreground",
|
|
58775
|
+
className: "flex items-center pl-4 gap-2 text-sm text-muted-foreground",
|
|
58776
58776
|
children: [
|
|
58777
58777
|
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: resource.icon, size: 14 }),
|
|
58778
58778
|
resource.title
|
|
@@ -58861,7 +58861,7 @@ var MobileNavigationMenu = ({
|
|
|
58861
58861
|
typeof item.label === "string" ? item.label : `nav-${index}`
|
|
58862
58862
|
);
|
|
58863
58863
|
}) }),
|
|
58864
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-
|
|
58864
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-4 flex flex-col gap-4", actionsClassName), children: renderActions })
|
|
58865
58865
|
] })
|
|
58866
58866
|
}
|
|
58867
58867
|
);
|
|
@@ -59606,6 +59606,7 @@ var NavbarPlatformResources = ({
|
|
|
59606
59606
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
59607
59607
|
NavigationMenu,
|
|
59608
59608
|
{
|
|
59609
|
+
viewport: false,
|
|
59609
59610
|
className: cn("min-w-full", navigationMenuClassName),
|
|
59610
59611
|
children: [
|
|
59611
59612
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full items-center justify-between gap-12 py-4", children: [
|
|
@@ -59628,7 +59629,7 @@ var NavbarPlatformResources = ({
|
|
|
59628
59629
|
NavigationMenuItem,
|
|
59629
59630
|
{
|
|
59630
59631
|
children: [
|
|
59631
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { className: "h-auto bg-transparent px-
|
|
59632
|
+
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { className: "h-auto bg-transparent px-4 py-2 font-normal hover:bg-muted focus:bg-transparent data-[state=open]:bg-transparent", children: link.label }),
|
|
59632
59633
|
renderDropdownContent3(link)
|
|
59633
59634
|
]
|
|
59634
59635
|
},
|
|
@@ -59645,7 +59646,7 @@ var NavbarPlatformResources = ({
|
|
|
59645
59646
|
NavigationMenuLink,
|
|
59646
59647
|
{
|
|
59647
59648
|
href: link.href,
|
|
59648
|
-
className: "group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-muted
|
|
59649
|
+
className: "group inline-flex h-10 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-muted",
|
|
59649
59650
|
children: link.label
|
|
59650
59651
|
}
|
|
59651
59652
|
)
|
|
@@ -59696,7 +59697,7 @@ var NavbarPlatformResources = ({
|
|
|
59696
59697
|
className: "border-b-0",
|
|
59697
59698
|
children: [
|
|
59698
59699
|
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "h-15 items-center text-base font-normal text-foreground hover:no-underline", children: link.label }),
|
|
59699
|
-
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
59700
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none space-y-4", children: link.links?.map((item, itemIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
59700
59701
|
Pressable,
|
|
59701
59702
|
{
|
|
59702
59703
|
href: getLinkUrl(item),
|
|
@@ -60000,7 +60001,7 @@ var DesktopMenuItem3 = ({
|
|
|
60000
60001
|
onMouseLeave: handleMouseLeave,
|
|
60001
60002
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
60002
60003
|
/* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-sm leading-normal font-medium", children: link.label }),
|
|
60003
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs leading-normal
|
|
60004
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs leading-normal", children: link.description })
|
|
60004
60005
|
] })
|
|
60005
60006
|
}
|
|
60006
60007
|
) }, `desktop-nav-sublink-${linkIndex}`)) })
|
|
@@ -60028,44 +60029,17 @@ var MobileNavigationMenu2 = ({
|
|
|
60028
60029
|
authActions,
|
|
60029
60030
|
authActionsSlot
|
|
60030
60031
|
}) => {
|
|
60031
|
-
const
|
|
60032
|
-
if (mobileNavigationSlot) return mobileNavigationSlot;
|
|
60033
|
-
if (!mobileNavigation || mobileNavigation.length === 0) return null;
|
|
60034
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grid w-full grid-cols-2 gap-x-4 gap-y-10", children: mobileNavigation.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
60035
|
-
"div",
|
|
60036
|
-
{
|
|
60037
|
-
className: cn(
|
|
60038
|
-
"flex flex-col gap-4 text-primary-foreground",
|
|
60039
|
-
item.className
|
|
60040
|
-
),
|
|
60041
|
-
children: [
|
|
60042
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-xs text-muted-foreground uppercase", children: item.title }),
|
|
60043
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex flex-col gap-3", children: item.links?.map((link, i) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
60044
|
-
Pressable,
|
|
60045
|
-
{
|
|
60046
|
-
href: getLinkUrl(link),
|
|
60047
|
-
className: cn(
|
|
60048
|
-
"text-primary-foreground leading-normal font-medium",
|
|
60049
|
-
index === 0 ? "text-2xl" : "text-base"
|
|
60050
|
-
),
|
|
60051
|
-
children: link.label
|
|
60052
|
-
}
|
|
60053
|
-
) }, `mobile-nav-link-${i}`)) })
|
|
60054
|
-
]
|
|
60055
|
-
},
|
|
60056
|
-
`mobile-menu-item-${index}`
|
|
60057
|
-
)) });
|
|
60058
|
-
}, [mobileNavigationSlot, mobileNavigation]);
|
|
60032
|
+
const handleClose = () => setOpen(false);
|
|
60059
60033
|
const renderSocialLinks = React52.useMemo(() => {
|
|
60060
60034
|
if (socialLinksSlot) return socialLinksSlot;
|
|
60061
60035
|
if (!socialLinks || socialLinks.length === 0) return null;
|
|
60062
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "
|
|
60063
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-
|
|
60064
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-4", children: socialLinks.map((link, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
60036
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 mt-6", children: [
|
|
60037
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-4 text-[10px] text-muted-foreground uppercase", children: "SOCIAL" }),
|
|
60038
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-4 px-4", children: socialLinks.map((link, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
60065
60039
|
Pressable,
|
|
60066
60040
|
{
|
|
60067
60041
|
href: link.url,
|
|
60068
|
-
|
|
60042
|
+
onClick: handleClose,
|
|
60069
60043
|
children: [
|
|
60070
60044
|
link.icon ?? (link.iconName && /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: link.iconName, size: 20 })),
|
|
60071
60045
|
!link.icon && !link.iconName && link.label
|
|
@@ -60074,11 +60048,11 @@ var MobileNavigationMenu2 = ({
|
|
|
60074
60048
|
`social-link-${index}`
|
|
60075
60049
|
)) })
|
|
60076
60050
|
] });
|
|
60077
|
-
}, [socialLinksSlot, socialLinks]);
|
|
60051
|
+
}, [socialLinksSlot, socialLinks, handleClose]);
|
|
60078
60052
|
const renderMobileAuthActions = React52.useMemo(() => {
|
|
60079
60053
|
if (authActionsSlot) return authActionsSlot;
|
|
60080
60054
|
if (!authActions || authActions.length === 0) return null;
|
|
60081
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-
|
|
60055
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-4 mt-6", children: authActions.map((action, index) => {
|
|
60082
60056
|
const {
|
|
60083
60057
|
label,
|
|
60084
60058
|
icon,
|
|
@@ -60092,6 +60066,7 @@ var MobileNavigationMenu2 = ({
|
|
|
60092
60066
|
{
|
|
60093
60067
|
asButton: true,
|
|
60094
60068
|
className: cn("w-full", actionClassName),
|
|
60069
|
+
onClick: handleClose,
|
|
60095
60070
|
...pressableProps,
|
|
60096
60071
|
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
60097
60072
|
icon,
|
|
@@ -60102,20 +60077,63 @@ var MobileNavigationMenu2 = ({
|
|
|
60102
60077
|
index
|
|
60103
60078
|
);
|
|
60104
60079
|
}) });
|
|
60105
|
-
}, [authActionsSlot, authActions]);
|
|
60106
|
-
|
|
60107
|
-
NavbarMobileMenu,
|
|
60108
|
-
|
|
60109
|
-
|
|
60110
|
-
|
|
60111
|
-
|
|
60112
|
-
|
|
60113
|
-
|
|
60114
|
-
|
|
60115
|
-
|
|
60116
|
-
|
|
60117
|
-
|
|
60118
|
-
|
|
60080
|
+
}, [authActionsSlot, authActions, handleClose]);
|
|
60081
|
+
if (mobileNavigationSlot) {
|
|
60082
|
+
return /* @__PURE__ */ jsxRuntime.jsx(NavbarMobileMenu, { open, onClose: handleClose, title: "Mobile Navigation", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
60083
|
+
mobileNavigationSlot,
|
|
60084
|
+
renderSocialLinks,
|
|
60085
|
+
renderMobileAuthActions
|
|
60086
|
+
] }) }) });
|
|
60087
|
+
}
|
|
60088
|
+
return /* @__PURE__ */ jsxRuntime.jsx(NavbarMobileMenu, { open, onClose: handleClose, title: "Mobile Navigation", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
60089
|
+
/* @__PURE__ */ jsxRuntime.jsx(Accordion, { type: "multiple", className: "w-full", children: mobileNavigation.map((item, index) => {
|
|
60090
|
+
if (item.links && item.links.length > 0) {
|
|
60091
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
60092
|
+
AccordionItem,
|
|
60093
|
+
{
|
|
60094
|
+
value: `nav-${index}`,
|
|
60095
|
+
className: "border-b-0",
|
|
60096
|
+
children: [
|
|
60097
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "h-15 items-center p-0 px-4! text-base leading-[3.75] font-normal text-muted-foreground hover:bg-muted hover:no-underline", children: item.title }),
|
|
60098
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.links.map((link, linkIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
60099
|
+
Pressable,
|
|
60100
|
+
{
|
|
60101
|
+
href: getLinkUrl(link),
|
|
60102
|
+
className: "flex min-h-12 items-center gap-2 rounded-lg px-4 text-muted-foreground transition-colors duration-300 hover:bg-muted hover:text-foreground",
|
|
60103
|
+
onClick: handleClose,
|
|
60104
|
+
children: [
|
|
60105
|
+
link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
60106
|
+
DynamicIcon,
|
|
60107
|
+
{
|
|
60108
|
+
name: link.iconName,
|
|
60109
|
+
size: 16,
|
|
60110
|
+
className: "stroke-muted-foreground"
|
|
60111
|
+
}
|
|
60112
|
+
) : null,
|
|
60113
|
+
link.label
|
|
60114
|
+
]
|
|
60115
|
+
},
|
|
60116
|
+
`mobile-link-${linkIndex}`
|
|
60117
|
+
)) })
|
|
60118
|
+
]
|
|
60119
|
+
},
|
|
60120
|
+
`nav-item-${index}`
|
|
60121
|
+
);
|
|
60122
|
+
}
|
|
60123
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
60124
|
+
Pressable,
|
|
60125
|
+
{
|
|
60126
|
+
href: item.url,
|
|
60127
|
+
className: "flex h-15 items-center rounded-md p-0 px-4 text-left text-base leading-[3.75] font-normal text-muted-foreground ring-ring/10 outline-ring/50 transition-all hover:bg-muted focus-visible:ring-4 focus-visible:outline-1",
|
|
60128
|
+
onClick: handleClose,
|
|
60129
|
+
children: item.title
|
|
60130
|
+
},
|
|
60131
|
+
`nav-link-${index}`
|
|
60132
|
+
);
|
|
60133
|
+
}) }),
|
|
60134
|
+
renderSocialLinks,
|
|
60135
|
+
renderMobileAuthActions
|
|
60136
|
+
] }) }) });
|
|
60119
60137
|
};
|
|
60120
60138
|
var MOBILE_BREAKPOINT3 = 1024;
|
|
60121
60139
|
var NavbarDarkIcons = ({
|
|
@@ -60713,8 +60731,8 @@ var AnimatedImagePreviewDropdown = ({
|
|
|
60713
60731
|
updateImageClasses(0);
|
|
60714
60732
|
};
|
|
60715
60733
|
if (!links) return null;
|
|
60716
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-
|
|
60717
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "grid grid-cols-2 gap-
|
|
60734
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-4", children: [
|
|
60735
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "grid grid-cols-2 gap-4", children: links.map((link, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
60718
60736
|
NavLink,
|
|
60719
60737
|
{
|
|
60720
60738
|
link,
|
|
@@ -60753,7 +60771,7 @@ var FeaturedCardsGridDropdown = ({
|
|
|
60753
60771
|
optixFlowConfig
|
|
60754
60772
|
}) => {
|
|
60755
60773
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
60756
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-
|
|
60774
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex gap-4 pb-8", children: featuredLinks?.map((link, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
60757
60775
|
FeaturedLink,
|
|
60758
60776
|
{
|
|
60759
60777
|
link,
|
|
@@ -60770,7 +60788,7 @@ var GroupedLinksImageDropdown = ({
|
|
|
60770
60788
|
imageLink,
|
|
60771
60789
|
optixFlowConfig
|
|
60772
60790
|
}) => {
|
|
60773
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-
|
|
60791
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-2 gap-4", children: [
|
|
60774
60792
|
/* @__PURE__ */ jsxRuntime.jsx(GroupLinks, { groupLinks }),
|
|
60775
60793
|
/* @__PURE__ */ jsxRuntime.jsx(FeaturedImageLink, { link: imageLink, optixFlowConfig })
|
|
60776
60794
|
] });
|
|
@@ -60791,9 +60809,9 @@ var GroupLinks = ({ groupLinks }) => {
|
|
|
60791
60809
|
};
|
|
60792
60810
|
if (!groupLinks) return null;
|
|
60793
60811
|
let linkIndex = 0;
|
|
60794
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
60795
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4 text-xs
|
|
60796
|
-
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex flex-col gap-
|
|
60812
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-between gap-4", children: groupLinks.map((group, index1) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
60813
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4 text-xs", children: group.label }),
|
|
60814
|
+
/* @__PURE__ */ jsxRuntime.jsx("ul", { className: "flex flex-col gap-4", children: group.links.map((link, index2) => {
|
|
60797
60815
|
const idx = linkIndex++;
|
|
60798
60816
|
return /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
60799
60817
|
NavLink,
|
|
@@ -60821,7 +60839,7 @@ var FeaturedImageLink = ({
|
|
|
60821
60839
|
className: "overflow-hidden rounded-lg bg-muted",
|
|
60822
60840
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "size-full", children: [
|
|
60823
60841
|
/* @__PURE__ */ jsxRuntime.jsx(Badge, { className: "absolute top-2 left-2", children: "New" }),
|
|
60824
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-col items-center justify-center gap-
|
|
60842
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-col items-center justify-center gap-4 pt-10", children: [
|
|
60825
60843
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-2xl font-semibold", children: link.label }),
|
|
60826
60844
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-[80%]", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
60827
60845
|
AspectRatio,
|
|
@@ -60833,7 +60851,7 @@ var FeaturedImageLink = ({
|
|
|
60833
60851
|
{
|
|
60834
60852
|
src: link.image,
|
|
60835
60853
|
alt: typeof link.label === "string" ? link.label : "",
|
|
60836
|
-
className: "size-full object-cover object-
|
|
60854
|
+
className: "size-full object-cover object-center",
|
|
60837
60855
|
optixFlowConfig
|
|
60838
60856
|
}
|
|
60839
60857
|
)
|
|
@@ -60849,7 +60867,7 @@ var FeaturedLink = ({ link, optixFlowConfig }) => {
|
|
|
60849
60867
|
Pressable,
|
|
60850
60868
|
{
|
|
60851
60869
|
href: getLinkUrl(link),
|
|
60852
|
-
className: "group relative flex w-full overflow-hidden rounded-xl bg-muted px-8 py-
|
|
60870
|
+
className: "group relative flex w-full overflow-hidden rounded-xl bg-muted px-8 py-12",
|
|
60853
60871
|
children: [
|
|
60854
60872
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative z-10 flex w-full items-center gap-6", children: [
|
|
60855
60873
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-12 shrink-0 rounded-lg border bg-background shadow-lg", children: link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -60857,12 +60875,12 @@ var FeaturedLink = ({ link, optixFlowConfig }) => {
|
|
|
60857
60875
|
{
|
|
60858
60876
|
name: link.iconName,
|
|
60859
60877
|
size: 20,
|
|
60860
|
-
className: "m-auto stroke-
|
|
60878
|
+
className: "m-auto stroke-white"
|
|
60861
60879
|
}
|
|
60862
60880
|
) : null }),
|
|
60863
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
60864
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-lg font-semibold
|
|
60865
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium
|
|
60881
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 text-white text-shadow-lg", children: [
|
|
60882
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-lg font-semibold", children: link.label }),
|
|
60883
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: link.description })
|
|
60866
60884
|
] })
|
|
60867
60885
|
] }),
|
|
60868
60886
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -60870,7 +60888,7 @@ var FeaturedLink = ({ link, optixFlowConfig }) => {
|
|
|
60870
60888
|
{
|
|
60871
60889
|
src: link.background,
|
|
60872
60890
|
alt: typeof link.label === "string" ? link.label : "",
|
|
60873
|
-
className: "absolute top-0 left-0 size-full object-cover object-
|
|
60891
|
+
className: "absolute top-0 left-0 size-full brightness-50 object-cover object-center opacity-90 transition-opacity duration-300 ease-in-out group-hover:opacity-100",
|
|
60874
60892
|
optixFlowConfig
|
|
60875
60893
|
}
|
|
60876
60894
|
)
|
|
@@ -61210,10 +61228,11 @@ var MobileNavigationMenu5 = ({
|
|
|
61210
61228
|
authActions,
|
|
61211
61229
|
authActionsSlot
|
|
61212
61230
|
}) => {
|
|
61231
|
+
const handleClose = () => setOpen(false);
|
|
61213
61232
|
const renderMobileAuthActions = React52.useMemo(() => {
|
|
61214
61233
|
if (authActionsSlot) return authActionsSlot;
|
|
61215
61234
|
if (!authActions || authActions.length === 0) return null;
|
|
61216
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-4", children: authActions.map((action, index) => {
|
|
61235
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-4 mt-6", children: authActions.map((action, index) => {
|
|
61217
61236
|
const {
|
|
61218
61237
|
label,
|
|
61219
61238
|
icon,
|
|
@@ -61227,6 +61246,7 @@ var MobileNavigationMenu5 = ({
|
|
|
61227
61246
|
{
|
|
61228
61247
|
asButton: true,
|
|
61229
61248
|
className: cn("w-full", actionClassName),
|
|
61249
|
+
onClick: handleClose,
|
|
61230
61250
|
...pressableProps,
|
|
61231
61251
|
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61232
61252
|
icon,
|
|
@@ -61237,63 +61257,65 @@ var MobileNavigationMenu5 = ({
|
|
|
61237
61257
|
index
|
|
61238
61258
|
);
|
|
61239
61259
|
}) });
|
|
61240
|
-
}, [authActionsSlot, authActions]);
|
|
61260
|
+
}, [authActionsSlot, authActions, handleClose]);
|
|
61241
61261
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61242
61262
|
NavbarMobileMenu,
|
|
61243
61263
|
{
|
|
61244
61264
|
open,
|
|
61245
|
-
onClose:
|
|
61265
|
+
onClose: handleClose,
|
|
61246
61266
|
title: "Mobile Navigation",
|
|
61247
61267
|
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
61248
|
-
/* @__PURE__ */ jsxRuntime.jsx(Accordion, { type: "multiple", className: "w-full", children: navigation.map((item, index) =>
|
|
61249
|
-
|
|
61250
|
-
|
|
61251
|
-
|
|
61252
|
-
);
|
|
61253
|
-
};
|
|
61254
|
-
var renderMobileMenuItem5 = (item, index) => {
|
|
61255
|
-
if (item.groups) {
|
|
61256
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61257
|
-
AccordionItem,
|
|
61258
|
-
{
|
|
61259
|
-
value: `nav-${index}`,
|
|
61260
|
-
className: "border-b-0",
|
|
61261
|
-
children: [
|
|
61262
|
-
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "h-15 items-center p-0 px-4! text-base leading-[3.75] font-normal text-muted-foreground hover:bg-muted hover:no-underline", children: item.title }),
|
|
61263
|
-
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.flatMap(
|
|
61264
|
-
(group, groupIndex) => group.links.map((link, linkIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61265
|
-
Pressable,
|
|
61268
|
+
/* @__PURE__ */ jsxRuntime.jsx(Accordion, { type: "multiple", className: "w-full", children: navigation.map((item, index) => {
|
|
61269
|
+
if (item.groups && item.groups.length > 0) {
|
|
61270
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61271
|
+
AccordionItem,
|
|
61266
61272
|
{
|
|
61267
|
-
|
|
61268
|
-
className: "
|
|
61273
|
+
value: `nav-${index}`,
|
|
61274
|
+
className: "border-b-0",
|
|
61269
61275
|
children: [
|
|
61270
|
-
|
|
61271
|
-
|
|
61272
|
-
{
|
|
61273
|
-
|
|
61274
|
-
|
|
61275
|
-
|
|
61276
|
-
|
|
61277
|
-
|
|
61278
|
-
|
|
61276
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "h-15 items-center p-0 px-4! text-base leading-[3.75] font-normal text-muted-foreground hover:bg-muted hover:no-underline", children: item.title }),
|
|
61277
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4", children: [
|
|
61278
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-2 px-4 text-[10px] text-muted-foreground uppercase", children: group.title }),
|
|
61279
|
+
group.links.map((link, linkIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61280
|
+
Pressable,
|
|
61281
|
+
{
|
|
61282
|
+
href: link.url,
|
|
61283
|
+
className: "flex min-h-12 items-center gap-2 rounded-lg px-4 text-muted-foreground transition-colors duration-300 hover:bg-muted hover:text-foreground",
|
|
61284
|
+
onClick: handleClose,
|
|
61285
|
+
children: [
|
|
61286
|
+
link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
61287
|
+
DynamicIcon,
|
|
61288
|
+
{
|
|
61289
|
+
name: link.iconName,
|
|
61290
|
+
size: 16,
|
|
61291
|
+
className: "stroke-muted-foreground"
|
|
61292
|
+
}
|
|
61293
|
+
) : null,
|
|
61294
|
+
link.label
|
|
61295
|
+
]
|
|
61296
|
+
},
|
|
61297
|
+
`mobile-link-${groupIndex}-${linkIndex}`
|
|
61298
|
+
))
|
|
61299
|
+
] }, `mobile-group-${groupIndex}`)) })
|
|
61279
61300
|
]
|
|
61280
61301
|
},
|
|
61281
|
-
`
|
|
61282
|
-
)
|
|
61283
|
-
|
|
61284
|
-
|
|
61285
|
-
|
|
61286
|
-
|
|
61287
|
-
|
|
61288
|
-
|
|
61289
|
-
|
|
61290
|
-
|
|
61291
|
-
|
|
61292
|
-
|
|
61293
|
-
|
|
61294
|
-
|
|
61295
|
-
|
|
61296
|
-
|
|
61302
|
+
`nav-item-${index}`
|
|
61303
|
+
);
|
|
61304
|
+
}
|
|
61305
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61306
|
+
Pressable,
|
|
61307
|
+
{
|
|
61308
|
+
href: item.url,
|
|
61309
|
+
className: "flex h-15 items-center rounded-md p-0 px-4 text-left text-base leading-[3.75] font-normal text-muted-foreground ring-ring/10 outline-ring/50 transition-all hover:bg-muted focus-visible:ring-4 focus-visible:outline-1",
|
|
61310
|
+
onClick: handleClose,
|
|
61311
|
+
children: item.title
|
|
61312
|
+
},
|
|
61313
|
+
`nav-link-${index}`
|
|
61314
|
+
);
|
|
61315
|
+
}) }),
|
|
61316
|
+
renderMobileAuthActions
|
|
61317
|
+
] }) })
|
|
61318
|
+
}
|
|
61297
61319
|
);
|
|
61298
61320
|
};
|
|
61299
61321
|
var NavbarSidebarMobile = ({
|
|
@@ -61319,7 +61341,29 @@ var NavbarSidebarMobile = ({
|
|
|
61319
61341
|
optixFlowConfig
|
|
61320
61342
|
}) => {
|
|
61321
61343
|
const [isOpen, setIsOpen] = React52.useState(false);
|
|
61322
|
-
const
|
|
61344
|
+
const MOBILE_BREAKPOINT8 = 1024;
|
|
61345
|
+
React52.useEffect(() => {
|
|
61346
|
+
if (typeof window === "undefined") return;
|
|
61347
|
+
const handleResize = () => {
|
|
61348
|
+
if (window.innerWidth > MOBILE_BREAKPOINT8) {
|
|
61349
|
+
setIsOpen(false);
|
|
61350
|
+
}
|
|
61351
|
+
};
|
|
61352
|
+
handleResize();
|
|
61353
|
+
window.addEventListener("resize", handleResize);
|
|
61354
|
+
return () => window.removeEventListener("resize", handleResize);
|
|
61355
|
+
}, []);
|
|
61356
|
+
React52.useEffect(() => {
|
|
61357
|
+
if (typeof document === "undefined") return;
|
|
61358
|
+
document.body.style.overflow = isOpen ? "hidden" : "auto";
|
|
61359
|
+
return () => {
|
|
61360
|
+
document.body.style.overflow = "auto";
|
|
61361
|
+
};
|
|
61362
|
+
}, [isOpen]);
|
|
61363
|
+
const handleMobileMenu = () => {
|
|
61364
|
+
setIsOpen(!isOpen);
|
|
61365
|
+
};
|
|
61366
|
+
const renderAuthActions = React52.useMemo(() => {
|
|
61323
61367
|
if (authActionsSlot) return authActionsSlot;
|
|
61324
61368
|
if (!authActions || authActions.length === 0) return null;
|
|
61325
61369
|
return authActions.map((action, index) => {
|
|
@@ -61346,17 +61390,12 @@ var NavbarSidebarMobile = ({
|
|
|
61346
61390
|
index
|
|
61347
61391
|
);
|
|
61348
61392
|
});
|
|
61349
|
-
};
|
|
61393
|
+
}, [authActionsSlot, authActions]);
|
|
61350
61394
|
const renderMenu = () => {
|
|
61351
61395
|
if (menuSlot) return null;
|
|
61352
61396
|
if (!menu || menu.length === 0) return null;
|
|
61353
61397
|
return menu;
|
|
61354
61398
|
};
|
|
61355
|
-
const renderMobileExtraLinks = () => {
|
|
61356
|
-
if (mobileExtraLinksSlot) return null;
|
|
61357
|
-
if (!mobileExtraLinks || mobileExtraLinks.length === 0) return null;
|
|
61358
|
-
return mobileExtraLinks;
|
|
61359
|
-
};
|
|
61360
61399
|
const {
|
|
61361
61400
|
sectionClasses,
|
|
61362
61401
|
containerWrapperClasses,
|
|
@@ -61366,180 +61405,283 @@ var NavbarSidebarMobile = ({
|
|
|
61366
61405
|
sectionContainerMaxWidth,
|
|
61367
61406
|
spacingOverride
|
|
61368
61407
|
} = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
|
|
61369
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
61370
|
-
|
|
61371
|
-
|
|
61372
|
-
|
|
61373
|
-
|
|
61374
|
-
|
|
61375
|
-
|
|
61376
|
-
|
|
61377
|
-
|
|
61378
|
-
|
|
61379
|
-
|
|
61380
|
-
"
|
|
61381
|
-
|
|
61382
|
-
|
|
61383
|
-
|
|
61384
|
-
|
|
61385
|
-
|
|
61386
|
-
|
|
61387
|
-
|
|
61408
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61409
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61410
|
+
Section,
|
|
61411
|
+
{
|
|
61412
|
+
background,
|
|
61413
|
+
spacing: spacingOverride ?? spacing,
|
|
61414
|
+
className: sectionClasses,
|
|
61415
|
+
pattern,
|
|
61416
|
+
patternOpacity,
|
|
61417
|
+
containerClassName: sectionContainerClassName,
|
|
61418
|
+
containerMaxWidth: sectionContainerMaxWidth,
|
|
61419
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61420
|
+
"nav",
|
|
61421
|
+
{
|
|
61422
|
+
className: cn(
|
|
61423
|
+
"flex items-center justify-between py-4",
|
|
61424
|
+
navClassName
|
|
61425
|
+
),
|
|
61426
|
+
children: [
|
|
61427
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-8", children: [
|
|
61428
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61429
|
+
NavbarLogo,
|
|
61430
|
+
{
|
|
61431
|
+
logo,
|
|
61432
|
+
logoSlot,
|
|
61433
|
+
logoClassName,
|
|
61434
|
+
optixFlowConfig
|
|
61435
|
+
}
|
|
61436
|
+
),
|
|
61437
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61438
|
+
NavigationMenu,
|
|
61439
|
+
{
|
|
61440
|
+
className: cn("hidden lg:flex", navigationMenuClassName),
|
|
61441
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuList, { children: menuSlot ? menuSlot : renderMenu()?.map(
|
|
61442
|
+
(item, index) => item.items ? /* @__PURE__ */ jsxRuntime.jsxs(NavigationMenuItem, { children: [
|
|
61443
|
+
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { children: item.title }),
|
|
61444
|
+
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { children: /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "grid w-[400px] gap-3 p-4 md:w-[500px] md:grid-cols-2", children: item.items.map((subItem, subIndex) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61445
|
+
Pressable,
|
|
61446
|
+
{
|
|
61447
|
+
href: subItem.url,
|
|
61448
|
+
className: "block w-full select-none space-y-1 rounded-md p-3 leading-none no-underline outline-none transition-colors hover:bg-muted focus:bg-muted",
|
|
61449
|
+
children: [
|
|
61450
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
61451
|
+
subItem.icon && /* @__PURE__ */ jsxRuntime.jsx(
|
|
61452
|
+
DynamicIcon,
|
|
61453
|
+
{
|
|
61454
|
+
name: subItem.icon,
|
|
61455
|
+
size: 16
|
|
61456
|
+
}
|
|
61457
|
+
),
|
|
61458
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium leading-none", children: subItem.title })
|
|
61459
|
+
] }),
|
|
61460
|
+
subItem.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "line-clamp-2 text-sm leading-snug text-muted-foreground", children: subItem.description })
|
|
61461
|
+
]
|
|
61462
|
+
}
|
|
61463
|
+
) }) }, subIndex)) }) })
|
|
61464
|
+
] }, index) : /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuItem, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61465
|
+
NavigationMenuLink,
|
|
61466
|
+
{
|
|
61467
|
+
asChild: true,
|
|
61468
|
+
className: navigationMenuTriggerStyle(),
|
|
61469
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: item.url, children: item.title })
|
|
61470
|
+
}
|
|
61471
|
+
) }, index)
|
|
61472
|
+
) })
|
|
61473
|
+
}
|
|
61474
|
+
)
|
|
61475
|
+
] }),
|
|
61388
61476
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61389
|
-
|
|
61477
|
+
"div",
|
|
61390
61478
|
{
|
|
61391
|
-
|
|
61392
|
-
|
|
61393
|
-
|
|
61394
|
-
|
|
61479
|
+
className: cn(
|
|
61480
|
+
"hidden items-center gap-2 lg:flex",
|
|
61481
|
+
actionsClassName
|
|
61482
|
+
),
|
|
61483
|
+
children: renderAuthActions
|
|
61395
61484
|
}
|
|
61396
61485
|
),
|
|
61397
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61398
|
-
|
|
61486
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61487
|
+
Pressable,
|
|
61399
61488
|
{
|
|
61400
|
-
className:
|
|
61401
|
-
|
|
61402
|
-
|
|
61403
|
-
|
|
61404
|
-
|
|
61405
|
-
|
|
61406
|
-
|
|
61407
|
-
href: subItem.url,
|
|
61408
|
-
className: "block select-none space-y-1 rounded-md p-3 leading-none no-underline outline-none transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground",
|
|
61409
|
-
children: [
|
|
61410
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
|
|
61411
|
-
subItem.icon && /* @__PURE__ */ jsxRuntime.jsx(
|
|
61412
|
-
DynamicIcon,
|
|
61413
|
-
{
|
|
61414
|
-
name: subItem.icon,
|
|
61415
|
-
size: 16
|
|
61416
|
-
}
|
|
61417
|
-
),
|
|
61418
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium leading-none", children: subItem.title })
|
|
61419
|
-
] }),
|
|
61420
|
-
subItem.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "line-clamp-2 text-sm leading-snug text-muted-foreground", children: subItem.description })
|
|
61421
|
-
]
|
|
61422
|
-
}
|
|
61423
|
-
) }) }, subIndex)) }) })
|
|
61424
|
-
] }, index) : /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuItem, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61425
|
-
NavigationMenuLink,
|
|
61426
|
-
{
|
|
61427
|
-
asChild: true,
|
|
61428
|
-
className: navigationMenuTriggerStyle(),
|
|
61429
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: item.url, children: item.title })
|
|
61430
|
-
}
|
|
61431
|
-
) }, index)
|
|
61432
|
-
) })
|
|
61433
|
-
}
|
|
61434
|
-
)
|
|
61435
|
-
] }),
|
|
61436
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61437
|
-
"div",
|
|
61438
|
-
{
|
|
61439
|
-
className: cn(
|
|
61440
|
-
"hidden items-center gap-2 lg:flex",
|
|
61441
|
-
actionsClassName
|
|
61442
|
-
),
|
|
61443
|
-
children: renderAuthActions()
|
|
61444
|
-
}
|
|
61445
|
-
),
|
|
61446
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
61447
|
-
Pressable,
|
|
61448
|
-
{
|
|
61449
|
-
variant: "outline",
|
|
61450
|
-
size: "icon",
|
|
61451
|
-
asButton: true,
|
|
61452
|
-
className: "lg:hidden",
|
|
61453
|
-
onClick: () => setIsOpen(!isOpen),
|
|
61454
|
-
children: [
|
|
61455
|
-
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
|
|
61456
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Toggle menu" })
|
|
61457
|
-
]
|
|
61458
|
-
}
|
|
61459
|
-
),
|
|
61460
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61461
|
-
NavbarMobileMenu,
|
|
61462
|
-
{
|
|
61463
|
-
open: isOpen,
|
|
61464
|
-
onClose: () => setIsOpen(false),
|
|
61465
|
-
title: "Navigation Menu",
|
|
61466
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex h-full flex-col", children: [
|
|
61467
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-between border-b pb-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61468
|
-
NavbarLogo,
|
|
61489
|
+
className: "size-11",
|
|
61490
|
+
variant: "ghost",
|
|
61491
|
+
size: "icon",
|
|
61492
|
+
asButton: true,
|
|
61493
|
+
onClick: handleMobileMenu,
|
|
61494
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61495
|
+
DynamicIcon,
|
|
61469
61496
|
{
|
|
61470
|
-
|
|
61471
|
-
|
|
61472
|
-
|
|
61473
|
-
optixFlowConfig
|
|
61497
|
+
name: "lucide/menu",
|
|
61498
|
+
size: 22,
|
|
61499
|
+
className: "stroke-foreground"
|
|
61474
61500
|
}
|
|
61475
|
-
)
|
|
61476
|
-
|
|
61477
|
-
|
|
61478
|
-
|
|
61479
|
-
|
|
61480
|
-
|
|
61481
|
-
|
|
61482
|
-
|
|
61483
|
-
|
|
61484
|
-
|
|
61485
|
-
|
|
61486
|
-
|
|
61487
|
-
|
|
61488
|
-
|
|
61489
|
-
|
|
61490
|
-
|
|
61491
|
-
|
|
61492
|
-
|
|
61493
|
-
|
|
61494
|
-
|
|
61495
|
-
|
|
61496
|
-
|
|
61497
|
-
|
|
61498
|
-
|
|
61499
|
-
|
|
61500
|
-
|
|
61501
|
-
|
|
61502
|
-
|
|
61503
|
-
|
|
61504
|
-
|
|
61505
|
-
|
|
61506
|
-
|
|
61507
|
-
|
|
61508
|
-
|
|
61509
|
-
|
|
61510
|
-
|
|
61511
|
-
|
|
61512
|
-
|
|
61513
|
-
|
|
61514
|
-
|
|
61515
|
-
|
|
61516
|
-
|
|
61517
|
-
|
|
61518
|
-
|
|
61519
|
-
|
|
61520
|
-
|
|
61521
|
-
|
|
61522
|
-
|
|
61523
|
-
|
|
61524
|
-
|
|
61525
|
-
|
|
61526
|
-
|
|
61527
|
-
|
|
61528
|
-
|
|
61529
|
-
|
|
61530
|
-
|
|
61531
|
-
|
|
61532
|
-
|
|
61533
|
-
)
|
|
61501
|
+
)
|
|
61502
|
+
}
|
|
61503
|
+
) })
|
|
61504
|
+
]
|
|
61505
|
+
}
|
|
61506
|
+
) }) }) })
|
|
61507
|
+
}
|
|
61508
|
+
),
|
|
61509
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61510
|
+
MobileNavigationMenu6,
|
|
61511
|
+
{
|
|
61512
|
+
open: isOpen,
|
|
61513
|
+
setOpen: setIsOpen,
|
|
61514
|
+
menu: menu ?? [],
|
|
61515
|
+
menuSlot,
|
|
61516
|
+
authActions,
|
|
61517
|
+
authActionsSlot,
|
|
61518
|
+
mobileExtraLinks,
|
|
61519
|
+
mobileExtraLinksSlot
|
|
61520
|
+
}
|
|
61521
|
+
)
|
|
61522
|
+
] });
|
|
61523
|
+
};
|
|
61524
|
+
var MobileNavigationMenu6 = ({
|
|
61525
|
+
open,
|
|
61526
|
+
setOpen,
|
|
61527
|
+
menu,
|
|
61528
|
+
menuSlot,
|
|
61529
|
+
authActions,
|
|
61530
|
+
authActionsSlot,
|
|
61531
|
+
mobileExtraLinks,
|
|
61532
|
+
mobileExtraLinksSlot
|
|
61533
|
+
}) => {
|
|
61534
|
+
const renderMobileAuthActions = React52.useMemo(() => {
|
|
61535
|
+
if (authActionsSlot) return authActionsSlot;
|
|
61536
|
+
if (!authActions || authActions.length === 0) return null;
|
|
61537
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-4", children: authActions.map((action, index) => {
|
|
61538
|
+
const {
|
|
61539
|
+
label,
|
|
61540
|
+
icon,
|
|
61541
|
+
iconAfter,
|
|
61542
|
+
children,
|
|
61543
|
+
className: actionClassName,
|
|
61544
|
+
...pressableProps
|
|
61545
|
+
} = action;
|
|
61546
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61547
|
+
Pressable,
|
|
61548
|
+
{
|
|
61549
|
+
asButton: true,
|
|
61550
|
+
className: cn("w-full", actionClassName),
|
|
61551
|
+
...pressableProps,
|
|
61552
|
+
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61553
|
+
icon,
|
|
61554
|
+
label,
|
|
61555
|
+
iconAfter
|
|
61556
|
+
] })
|
|
61557
|
+
},
|
|
61558
|
+
index
|
|
61559
|
+
);
|
|
61560
|
+
}) });
|
|
61561
|
+
}, [authActionsSlot, authActions]);
|
|
61562
|
+
const renderMobileExtraLinks = React52.useMemo(() => {
|
|
61563
|
+
if (mobileExtraLinksSlot) return mobileExtraLinksSlot;
|
|
61564
|
+
if (!mobileExtraLinks || mobileExtraLinks.length === 0) return null;
|
|
61565
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4 flex flex-wrap gap-x-4 gap-y-2", children: mobileExtraLinks.map((link, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
61566
|
+
Pressable,
|
|
61567
|
+
{
|
|
61568
|
+
href: link.url,
|
|
61569
|
+
className: "text-xs text-muted-foreground hover:text-foreground",
|
|
61570
|
+
children: link.title
|
|
61571
|
+
},
|
|
61572
|
+
index
|
|
61573
|
+
)) });
|
|
61574
|
+
}, [mobileExtraLinksSlot, mobileExtraLinks]);
|
|
61575
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61576
|
+
NavbarMobileMenu,
|
|
61577
|
+
{
|
|
61578
|
+
open,
|
|
61579
|
+
onClose: () => setOpen(false),
|
|
61580
|
+
title: "Navigation Menu",
|
|
61581
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
61582
|
+
/* @__PURE__ */ jsxRuntime.jsx(Accordion, { type: "single", collapsible: true, className: "w-full", children: menuSlot ? menuSlot : menu.map(
|
|
61583
|
+
(item, index) => item.items ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61584
|
+
AccordionItem,
|
|
61585
|
+
{
|
|
61586
|
+
value: `nav-${index}`,
|
|
61587
|
+
className: "border-b-0",
|
|
61588
|
+
children: [
|
|
61589
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "h-15 items-center p-0 px-4! text-base leading-[3.75] font-normal text-muted-foreground hover:bg-muted hover:no-underline", children: item.title }),
|
|
61590
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.items.map((subItem, subIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61591
|
+
Pressable,
|
|
61592
|
+
{
|
|
61593
|
+
href: subItem.url,
|
|
61594
|
+
className: "flex min-h-12 items-center gap-2 rounded-lg px-4 text-muted-foreground transition-colors duration-300 hover:bg-muted hover:text-foreground",
|
|
61595
|
+
children: [
|
|
61596
|
+
subItem.icon && /* @__PURE__ */ jsxRuntime.jsx(
|
|
61597
|
+
DynamicIcon,
|
|
61598
|
+
{
|
|
61599
|
+
name: subItem.icon,
|
|
61600
|
+
size: 16,
|
|
61601
|
+
className: "stroke-muted-foreground"
|
|
61602
|
+
}
|
|
61603
|
+
),
|
|
61604
|
+
subItem.title
|
|
61605
|
+
]
|
|
61606
|
+
},
|
|
61607
|
+
`mobile-link-${index}-${subIndex}`
|
|
61608
|
+
)) })
|
|
61609
|
+
]
|
|
61610
|
+
},
|
|
61611
|
+
`nav-item-${index}`
|
|
61612
|
+
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
61613
|
+
Pressable,
|
|
61614
|
+
{
|
|
61615
|
+
href: item.url,
|
|
61616
|
+
className: "flex h-15 items-center rounded-md p-0 px-4 text-left text-base leading-[3.75] font-normal text-muted-foreground ring-ring/10 outline-ring/50 transition-all hover:bg-muted focus-visible:ring-4 focus-visible:outline-1 nth-last-1:border-0",
|
|
61617
|
+
children: item.title
|
|
61618
|
+
},
|
|
61619
|
+
`nav-link-${index}`
|
|
61620
|
+
)
|
|
61621
|
+
) }),
|
|
61622
|
+
renderMobileAuthActions,
|
|
61623
|
+
renderMobileExtraLinks
|
|
61624
|
+
] }) })
|
|
61534
61625
|
}
|
|
61535
61626
|
);
|
|
61536
61627
|
};
|
|
61628
|
+
var platformIconMap = {
|
|
61629
|
+
instagram: "cib/instagram",
|
|
61630
|
+
linkedin: "cib/linkedin",
|
|
61631
|
+
google: "cib/google",
|
|
61632
|
+
facebook: "cib/facebook",
|
|
61633
|
+
tiktok: "cib/tiktok",
|
|
61634
|
+
youtube: "cib/youtube",
|
|
61635
|
+
yelp: "cib/yelp",
|
|
61636
|
+
spotify: "cib/spotify",
|
|
61637
|
+
apple: "cib/apple",
|
|
61638
|
+
x: "line-md/twitter-x"
|
|
61639
|
+
};
|
|
61640
|
+
var SocialLinkIcon = React52__namespace.forwardRef(
|
|
61641
|
+
({
|
|
61642
|
+
platformName,
|
|
61643
|
+
label,
|
|
61644
|
+
iconSize = 20,
|
|
61645
|
+
iconColor,
|
|
61646
|
+
iconClassName,
|
|
61647
|
+
className,
|
|
61648
|
+
...pressableProps
|
|
61649
|
+
}, ref) => {
|
|
61650
|
+
const iconName = platformIconMap[platformName];
|
|
61651
|
+
const accessibleLabel = label || platformName;
|
|
61652
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61653
|
+
Pressable,
|
|
61654
|
+
{
|
|
61655
|
+
ref,
|
|
61656
|
+
"aria-label": accessibleLabel,
|
|
61657
|
+
className: cn(
|
|
61658
|
+
"inline-flex items-center justify-center transition-colors",
|
|
61659
|
+
className
|
|
61660
|
+
),
|
|
61661
|
+
...pressableProps,
|
|
61662
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61663
|
+
DynamicIcon,
|
|
61664
|
+
{
|
|
61665
|
+
name: iconName,
|
|
61666
|
+
size: iconSize,
|
|
61667
|
+
color: iconColor,
|
|
61668
|
+
className: iconClassName,
|
|
61669
|
+
alt: accessibleLabel
|
|
61670
|
+
}
|
|
61671
|
+
)
|
|
61672
|
+
}
|
|
61673
|
+
);
|
|
61674
|
+
}
|
|
61675
|
+
);
|
|
61676
|
+
SocialLinkIcon.displayName = "SocialLinkIcon";
|
|
61537
61677
|
var NavbarTransparentOverlay = ({
|
|
61538
61678
|
className,
|
|
61539
61679
|
containerClassName,
|
|
61540
61680
|
navClassName,
|
|
61541
61681
|
navigationMenuClassName,
|
|
61542
61682
|
actionsClassName,
|
|
61683
|
+
mobileMenuClassName,
|
|
61684
|
+
socialLinksClassName,
|
|
61543
61685
|
logo,
|
|
61544
61686
|
logoSlot,
|
|
61545
61687
|
logoClassName,
|
|
@@ -61549,6 +61691,8 @@ var NavbarTransparentOverlay = ({
|
|
|
61549
61691
|
authActionsSlot,
|
|
61550
61692
|
mobileAuthActions,
|
|
61551
61693
|
mobileAuthActionsSlot,
|
|
61694
|
+
socialLinks,
|
|
61695
|
+
socialLinksSlot,
|
|
61552
61696
|
layoutVariant = "fullScreenContainerizedLinks",
|
|
61553
61697
|
background,
|
|
61554
61698
|
spacing,
|
|
@@ -61567,14 +61711,7 @@ var NavbarTransparentOverlay = ({
|
|
|
61567
61711
|
window.addEventListener("scroll", handleScroll);
|
|
61568
61712
|
return () => window.removeEventListener("scroll", handleScroll);
|
|
61569
61713
|
}, []);
|
|
61570
|
-
|
|
61571
|
-
if (typeof document === "undefined") return;
|
|
61572
|
-
document.body.style.overflow = isOpen ? "hidden" : "auto";
|
|
61573
|
-
return () => {
|
|
61574
|
-
document.body.style.overflow = "auto";
|
|
61575
|
-
};
|
|
61576
|
-
}, [isOpen]);
|
|
61577
|
-
const toggleMenu = () => setIsOpen(!isOpen);
|
|
61714
|
+
const handleMobileMenuClose = () => setIsOpen(false);
|
|
61578
61715
|
const renderNavigation = React52.useMemo(() => {
|
|
61579
61716
|
if (navigationSlot) return navigationSlot;
|
|
61580
61717
|
if (!navItems || navItems.length === 0) return null;
|
|
@@ -61629,35 +61766,6 @@ var NavbarTransparentOverlay = ({
|
|
|
61629
61766
|
);
|
|
61630
61767
|
});
|
|
61631
61768
|
}, [authActionsSlot, authActions, isScrolled]);
|
|
61632
|
-
const renderMobileAuthActions = React52.useMemo(() => {
|
|
61633
|
-
if (mobileAuthActionsSlot) return mobileAuthActionsSlot;
|
|
61634
|
-
if (!mobileAuthActions || mobileAuthActions.length === 0) return null;
|
|
61635
|
-
return mobileAuthActions.map((action, index) => {
|
|
61636
|
-
const {
|
|
61637
|
-
label,
|
|
61638
|
-
icon,
|
|
61639
|
-
iconAfter,
|
|
61640
|
-
children,
|
|
61641
|
-
className: actionClassName,
|
|
61642
|
-
...pressableProps
|
|
61643
|
-
} = action;
|
|
61644
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61645
|
-
Pressable,
|
|
61646
|
-
{
|
|
61647
|
-
asButton: true,
|
|
61648
|
-
className: cn("min-w-[200px]", actionClassName),
|
|
61649
|
-
onClick: () => setIsOpen(false),
|
|
61650
|
-
...pressableProps,
|
|
61651
|
-
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61652
|
-
icon,
|
|
61653
|
-
label,
|
|
61654
|
-
iconAfter
|
|
61655
|
-
] })
|
|
61656
|
-
},
|
|
61657
|
-
index
|
|
61658
|
-
);
|
|
61659
|
-
});
|
|
61660
|
-
}, [mobileAuthActionsSlot, mobileAuthActions]);
|
|
61661
61769
|
const {
|
|
61662
61770
|
sectionClasses,
|
|
61663
61771
|
containerWrapperClasses,
|
|
@@ -61667,18 +61775,18 @@ var NavbarTransparentOverlay = ({
|
|
|
61667
61775
|
sectionContainerMaxWidth,
|
|
61668
61776
|
spacingOverride
|
|
61669
61777
|
} = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
|
|
61670
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61671
|
-
|
|
61672
|
-
|
|
61673
|
-
|
|
61674
|
-
|
|
61675
|
-
|
|
61676
|
-
|
|
61677
|
-
|
|
61678
|
-
|
|
61679
|
-
|
|
61680
|
-
|
|
61681
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61778
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61779
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61780
|
+
Section,
|
|
61781
|
+
{
|
|
61782
|
+
background,
|
|
61783
|
+
spacing: spacingOverride ?? spacing,
|
|
61784
|
+
className: sectionClasses,
|
|
61785
|
+
pattern,
|
|
61786
|
+
patternOpacity,
|
|
61787
|
+
containerClassName: sectionContainerClassName,
|
|
61788
|
+
containerMaxWidth: sectionContainerMaxWidth,
|
|
61789
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61682
61790
|
"nav",
|
|
61683
61791
|
{
|
|
61684
61792
|
className: cn(
|
|
@@ -61718,95 +61826,144 @@ var NavbarTransparentOverlay = ({
|
|
|
61718
61826
|
children: renderAuthActions
|
|
61719
61827
|
}
|
|
61720
61828
|
),
|
|
61721
|
-
/* @__PURE__ */ jsxRuntime.
|
|
61722
|
-
|
|
61829
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61830
|
+
Pressable,
|
|
61723
61831
|
{
|
|
61724
|
-
|
|
61832
|
+
variant: "ghost",
|
|
61833
|
+
size: "icon",
|
|
61834
|
+
asButton: true,
|
|
61835
|
+
"aria-label": "Open menu",
|
|
61836
|
+
onClick: () => setIsOpen(true),
|
|
61725
61837
|
className: cn(
|
|
61726
|
-
"
|
|
61838
|
+
"size-11",
|
|
61839
|
+
!isScrolled && "hover:bg-white/10"
|
|
61727
61840
|
),
|
|
61728
|
-
|
|
61729
|
-
|
|
61730
|
-
|
|
61731
|
-
"
|
|
61732
|
-
|
|
61733
|
-
|
|
61734
|
-
|
|
61735
|
-
|
|
61736
|
-
|
|
61737
|
-
|
|
61738
|
-
),
|
|
61739
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61740
|
-
"span",
|
|
61741
|
-
{
|
|
61742
|
-
className: cn(
|
|
61743
|
-
"h-0.5 w-6 transition-all duration-300",
|
|
61744
|
-
isOpen ? "opacity-0" : isScrolled ? "bg-foreground" : "bg-white"
|
|
61745
|
-
)
|
|
61746
|
-
}
|
|
61747
|
-
),
|
|
61748
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61749
|
-
"span",
|
|
61750
|
-
{
|
|
61751
|
-
className: cn(
|
|
61752
|
-
"h-0.5 w-6 transition-all duration-300",
|
|
61753
|
-
isOpen ? "-translate-y-2 -rotate-45 bg-foreground" : isScrolled ? "bg-foreground" : "bg-white"
|
|
61754
|
-
)
|
|
61755
|
-
}
|
|
61756
|
-
)
|
|
61757
|
-
]
|
|
61841
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61842
|
+
DynamicIcon,
|
|
61843
|
+
{
|
|
61844
|
+
name: "lucide/menu",
|
|
61845
|
+
size: 16,
|
|
61846
|
+
className: cn(
|
|
61847
|
+
isScrolled ? "stroke-foreground" : "stroke-white"
|
|
61848
|
+
)
|
|
61849
|
+
}
|
|
61850
|
+
)
|
|
61758
61851
|
}
|
|
61759
|
-
)
|
|
61852
|
+
) })
|
|
61760
61853
|
] }) })
|
|
61761
61854
|
}
|
|
61762
|
-
) })
|
|
61763
|
-
|
|
61855
|
+
) })
|
|
61856
|
+
}
|
|
61857
|
+
),
|
|
61858
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61859
|
+
MobileNavigationMenu7,
|
|
61860
|
+
{
|
|
61861
|
+
open: isOpen,
|
|
61862
|
+
onClose: handleMobileMenuClose,
|
|
61863
|
+
navItems,
|
|
61864
|
+
mobileAuthActions,
|
|
61865
|
+
mobileAuthActionsSlot,
|
|
61866
|
+
socialLinks,
|
|
61867
|
+
socialLinksSlot,
|
|
61868
|
+
mobileMenuClassName,
|
|
61869
|
+
socialLinksClassName
|
|
61870
|
+
}
|
|
61871
|
+
)
|
|
61872
|
+
] });
|
|
61873
|
+
};
|
|
61874
|
+
var MobileNavigationMenu7 = ({
|
|
61875
|
+
open,
|
|
61876
|
+
onClose,
|
|
61877
|
+
navItems,
|
|
61878
|
+
mobileAuthActions,
|
|
61879
|
+
mobileAuthActionsSlot,
|
|
61880
|
+
socialLinks,
|
|
61881
|
+
socialLinksSlot,
|
|
61882
|
+
mobileMenuClassName,
|
|
61883
|
+
socialLinksClassName
|
|
61884
|
+
}) => {
|
|
61885
|
+
const renderMobileAuthActions = React52.useMemo(() => {
|
|
61886
|
+
if (mobileAuthActionsSlot) return mobileAuthActionsSlot;
|
|
61887
|
+
if (!mobileAuthActions || mobileAuthActions.length === 0) return null;
|
|
61888
|
+
return mobileAuthActions.map((action, index) => {
|
|
61889
|
+
const {
|
|
61890
|
+
label,
|
|
61891
|
+
icon,
|
|
61892
|
+
iconAfter,
|
|
61893
|
+
children,
|
|
61894
|
+
className: actionClassName,
|
|
61895
|
+
...pressableProps
|
|
61896
|
+
} = action;
|
|
61897
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61898
|
+
Pressable,
|
|
61899
|
+
{
|
|
61900
|
+
asButton: true,
|
|
61901
|
+
className: cn("min-w-[200px]", actionClassName),
|
|
61902
|
+
onClick: onClose,
|
|
61903
|
+
...pressableProps,
|
|
61904
|
+
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61905
|
+
icon,
|
|
61906
|
+
label,
|
|
61907
|
+
iconAfter
|
|
61908
|
+
] })
|
|
61909
|
+
},
|
|
61910
|
+
index
|
|
61911
|
+
);
|
|
61912
|
+
});
|
|
61913
|
+
}, [mobileAuthActionsSlot, mobileAuthActions, onClose]);
|
|
61914
|
+
const renderSocialLinks = React52.useMemo(() => {
|
|
61915
|
+
if (socialLinksSlot) return socialLinksSlot;
|
|
61916
|
+
if (!socialLinks || socialLinks.length === 0) return null;
|
|
61917
|
+
return socialLinks.map((link) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
61918
|
+
SocialLinkIcon,
|
|
61919
|
+
{
|
|
61920
|
+
platformName: link.platformName,
|
|
61921
|
+
href: link.href,
|
|
61922
|
+
label: link.label,
|
|
61923
|
+
iconSize: 24,
|
|
61924
|
+
className: "text-white/70 transition-all duration-300 hover:text-white hover:scale-110"
|
|
61925
|
+
},
|
|
61926
|
+
link.platformName
|
|
61927
|
+
));
|
|
61928
|
+
}, [socialLinksSlot, socialLinks]);
|
|
61929
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
61930
|
+
NavbarMobileMenu,
|
|
61931
|
+
{
|
|
61932
|
+
open,
|
|
61933
|
+
onClose,
|
|
61934
|
+
title: "Mobile Navigation",
|
|
61935
|
+
className: cn("bg-black/95", mobileMenuClassName),
|
|
61936
|
+
contentClassName: "flex flex-col items-center justify-center",
|
|
61937
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex h-full flex-col items-center justify-center", children: [
|
|
61938
|
+
/* @__PURE__ */ jsxRuntime.jsx("nav", { className: "flex flex-col items-center gap-8", children: navItems?.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61939
|
+
Pressable,
|
|
61940
|
+
{
|
|
61941
|
+
href: item.url,
|
|
61942
|
+
className: "text-3xl font-medium text-white transition-all duration-300 hover:text-white/80",
|
|
61943
|
+
onClick: onClose,
|
|
61944
|
+
children: [
|
|
61945
|
+
item.icon ?? (item.iconName && /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.iconName, size: 24 })),
|
|
61946
|
+
item.title
|
|
61947
|
+
]
|
|
61948
|
+
},
|
|
61949
|
+
index
|
|
61950
|
+
)) }),
|
|
61951
|
+
renderMobileAuthActions && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-12 flex flex-col items-center gap-4", children: renderMobileAuthActions }),
|
|
61952
|
+
renderSocialLinks && /* @__PURE__ */ jsxRuntime.jsx(
|
|
61764
61953
|
"div",
|
|
61765
61954
|
{
|
|
61766
61955
|
className: cn(
|
|
61767
|
-
"
|
|
61768
|
-
|
|
61956
|
+
"mt-12 flex flex-row flex-wrap items-center justify-center gap-6",
|
|
61957
|
+
socialLinksClassName
|
|
61769
61958
|
),
|
|
61770
|
-
children:
|
|
61771
|
-
/* @__PURE__ */ jsxRuntime.jsx("nav", { className: "flex flex-col items-center gap-8", children: navItems?.map((item, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61772
|
-
Pressable,
|
|
61773
|
-
{
|
|
61774
|
-
href: item.url,
|
|
61775
|
-
className: cn(
|
|
61776
|
-
"text-3xl font-medium text-foreground transition-all duration-300",
|
|
61777
|
-
isOpen ? "translate-y-0 opacity-100" : "translate-y-4 opacity-0"
|
|
61778
|
-
),
|
|
61779
|
-
style: {
|
|
61780
|
-
transitionDelay: isOpen ? `${index * 100}ms` : "0ms"
|
|
61781
|
-
},
|
|
61782
|
-
onClick: () => setIsOpen(false),
|
|
61783
|
-
children: [
|
|
61784
|
-
item.icon ?? (item.iconName && /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.iconName, size: 24 })),
|
|
61785
|
-
item.title
|
|
61786
|
-
]
|
|
61787
|
-
},
|
|
61788
|
-
index
|
|
61789
|
-
)) }),
|
|
61790
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61791
|
-
"div",
|
|
61792
|
-
{
|
|
61793
|
-
className: cn(
|
|
61794
|
-
"mt-12 flex flex-col items-center gap-4 transition-all duration-300",
|
|
61795
|
-
isOpen ? "translate-y-0 opacity-100" : "translate-y-4 opacity-0"
|
|
61796
|
-
),
|
|
61797
|
-
style: {
|
|
61798
|
-
transitionDelay: isOpen ? `${(navItems?.length ?? 0) * 100}ms` : "0ms"
|
|
61799
|
-
},
|
|
61800
|
-
children: renderMobileAuthActions
|
|
61801
|
-
}
|
|
61802
|
-
)
|
|
61803
|
-
] })
|
|
61959
|
+
children: renderSocialLinks
|
|
61804
61960
|
}
|
|
61805
61961
|
)
|
|
61806
|
-
]
|
|
61962
|
+
] })
|
|
61807
61963
|
}
|
|
61808
61964
|
);
|
|
61809
61965
|
};
|
|
61966
|
+
var MOBILE_BREAKPOINT6 = 1024;
|
|
61810
61967
|
var NavbarEducationPlatform = ({
|
|
61811
61968
|
className,
|
|
61812
61969
|
containerClassName,
|
|
@@ -61817,12 +61974,12 @@ var NavbarEducationPlatform = ({
|
|
|
61817
61974
|
mobileMenuClassName,
|
|
61818
61975
|
logo,
|
|
61819
61976
|
logoSlot,
|
|
61820
|
-
|
|
61821
|
-
|
|
61822
|
-
company,
|
|
61823
|
-
featuredImage,
|
|
61977
|
+
menu,
|
|
61978
|
+
menuSlot,
|
|
61824
61979
|
authActions,
|
|
61825
61980
|
authActionsSlot,
|
|
61981
|
+
mobileAuthActions,
|
|
61982
|
+
mobileAuthActionsSlot,
|
|
61826
61983
|
layoutVariant = "fullScreenContainerizedLinks",
|
|
61827
61984
|
background,
|
|
61828
61985
|
spacing,
|
|
@@ -61831,6 +61988,33 @@ var NavbarEducationPlatform = ({
|
|
|
61831
61988
|
optixFlowConfig
|
|
61832
61989
|
}) => {
|
|
61833
61990
|
const [isOpen, setIsOpen] = React52.useState(false);
|
|
61991
|
+
React52.useEffect(() => {
|
|
61992
|
+
if (typeof window === "undefined") return;
|
|
61993
|
+
const handleResize = () => {
|
|
61994
|
+
if (window.innerWidth > MOBILE_BREAKPOINT6) {
|
|
61995
|
+
setIsOpen(false);
|
|
61996
|
+
}
|
|
61997
|
+
};
|
|
61998
|
+
handleResize();
|
|
61999
|
+
window.addEventListener("resize", handleResize);
|
|
62000
|
+
return () => window.removeEventListener("resize", handleResize);
|
|
62001
|
+
}, []);
|
|
62002
|
+
const handleMobileMenuClose = () => {
|
|
62003
|
+
setIsOpen(false);
|
|
62004
|
+
};
|
|
62005
|
+
const renderNavigation = React52.useMemo(() => {
|
|
62006
|
+
if (menuSlot) return menuSlot;
|
|
62007
|
+
if (!menu || menu.length === 0) return null;
|
|
62008
|
+
return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuList, { children: menu.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
62009
|
+
DesktopMenuItem7,
|
|
62010
|
+
{
|
|
62011
|
+
item,
|
|
62012
|
+
index,
|
|
62013
|
+
optixFlowConfig
|
|
62014
|
+
},
|
|
62015
|
+
`desktop-link-${index}`
|
|
62016
|
+
)) });
|
|
62017
|
+
}, [menuSlot, menu, optixFlowConfig]);
|
|
61834
62018
|
const renderAuthActions = React52.useMemo(() => {
|
|
61835
62019
|
if (authActionsSlot) return authActionsSlot;
|
|
61836
62020
|
if (!authActions || authActions.length === 0) return null;
|
|
@@ -61859,166 +62043,43 @@ var NavbarEducationPlatform = ({
|
|
|
61859
62043
|
sectionContainerMaxWidth,
|
|
61860
62044
|
spacingOverride
|
|
61861
62045
|
} = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
|
|
61862
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61863
|
-
|
|
61864
|
-
|
|
61865
|
-
|
|
61866
|
-
|
|
61867
|
-
|
|
61868
|
-
|
|
61869
|
-
|
|
61870
|
-
|
|
61871
|
-
|
|
61872
|
-
|
|
61873
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61874
|
-
"nav",
|
|
61875
|
-
{
|
|
61876
|
-
className: cn(
|
|
61877
|
-
"flex items-center justify-between py-4",
|
|
61878
|
-
navClassName
|
|
61879
|
-
),
|
|
61880
|
-
children: [
|
|
61881
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-1 items-center gap-9", children: [
|
|
61882
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61883
|
-
NavbarLogo,
|
|
61884
|
-
{
|
|
61885
|
-
logo,
|
|
61886
|
-
logoSlot,
|
|
61887
|
-
logoClassName,
|
|
61888
|
-
optixFlowConfig
|
|
61889
|
-
}
|
|
61890
|
-
),
|
|
61891
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61892
|
-
"div",
|
|
61893
|
-
{
|
|
61894
|
-
className: cn(
|
|
61895
|
-
"hidden items-center gap-1.5 lg:flex",
|
|
61896
|
-
navigationMenuClassName
|
|
61897
|
-
),
|
|
61898
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(NavigationMenu, { delayDuration: 0,
|
|
61899
|
-
/* @__PURE__ */ jsxRuntime.jsxs(NavigationMenuItem, { children: [
|
|
61900
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { children: "Products" }),
|
|
61901
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "p-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex", children: [
|
|
61902
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
|
|
61903
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "TOOLS" }),
|
|
61904
|
-
features?.map((feature) => /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61905
|
-
Pressable,
|
|
61906
|
-
{
|
|
61907
|
-
href: feature.link,
|
|
61908
|
-
className: "group flex cursor-pointer flex-row gap-3",
|
|
61909
|
-
children: [
|
|
61910
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex size-10 shrink-0 items-center justify-center rounded-md border border-border bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61911
|
-
DynamicIcon,
|
|
61912
|
-
{
|
|
61913
|
-
name: feature.icon,
|
|
61914
|
-
size: 20
|
|
61915
|
-
}
|
|
61916
|
-
) }),
|
|
61917
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
|
|
61918
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
|
|
61919
|
-
feature.title,
|
|
61920
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61921
|
-
DynamicIcon,
|
|
61922
|
-
{
|
|
61923
|
-
name: "lucide/chevron-right",
|
|
61924
|
-
size: 16,
|
|
61925
|
-
className: "text-primary! opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
|
|
61926
|
-
}
|
|
61927
|
-
)
|
|
61928
|
-
] }),
|
|
61929
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: feature.description })
|
|
61930
|
-
] })
|
|
61931
|
-
]
|
|
61932
|
-
}
|
|
61933
|
-
) }, feature.title))
|
|
61934
|
-
] }),
|
|
61935
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61936
|
-
Separator,
|
|
61937
|
-
{
|
|
61938
|
-
orientation: "vertical",
|
|
61939
|
-
className: "data-[orientation=vertical]:h-auto"
|
|
61940
|
-
}
|
|
61941
|
-
),
|
|
61942
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
|
|
61943
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "QUICK START" }),
|
|
61944
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", {}),
|
|
61945
|
-
featuredImage && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
61946
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-5 mb-3 text-[10px] text-muted-foreground uppercase", children: "LATEST UPDATES" }),
|
|
61947
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: featuredImage.href || "#", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-lg bg-primary p-3", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
61948
|
-
img.Img,
|
|
61949
|
-
{
|
|
61950
|
-
src: featuredImage.src,
|
|
61951
|
-
alt: featuredImage.alt || "Featured update",
|
|
61952
|
-
className: "aspect-video min-w-52 rounded-md object-cover",
|
|
61953
|
-
optixFlowConfig
|
|
61954
|
-
}
|
|
61955
|
-
) }) }) })
|
|
61956
|
-
] })
|
|
61957
|
-
] })
|
|
61958
|
-
] }) })
|
|
61959
|
-
] }),
|
|
61960
|
-
/* @__PURE__ */ jsxRuntime.jsxs(NavigationMenuItem, { children: [
|
|
61961
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { children: "Support" }),
|
|
61962
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "p-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex", children: [
|
|
61963
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
|
|
61964
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "GUIDES" }),
|
|
61965
|
-
docs?.map((doc) => /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
61966
|
-
Pressable,
|
|
61967
|
-
{
|
|
61968
|
-
href: doc.link,
|
|
61969
|
-
className: "group flex flex-row gap-3",
|
|
61970
|
-
children: [
|
|
61971
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex size-10 shrink-0 items-center justify-center rounded-md border border-border bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: doc.icon, size: 20 }) }),
|
|
61972
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
|
|
61973
|
-
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
|
|
61974
|
-
doc.title,
|
|
61975
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61976
|
-
DynamicIcon,
|
|
61977
|
-
{
|
|
61978
|
-
name: "lucide/chevron-right",
|
|
61979
|
-
size: 16,
|
|
61980
|
-
className: "text-primary! opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
|
|
61981
|
-
}
|
|
61982
|
-
)
|
|
61983
|
-
] }),
|
|
61984
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: doc.description })
|
|
61985
|
-
] })
|
|
61986
|
-
]
|
|
61987
|
-
}
|
|
61988
|
-
) }, doc.title))
|
|
61989
|
-
] }),
|
|
61990
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
61991
|
-
Separator,
|
|
61992
|
-
{
|
|
61993
|
-
orientation: "vertical",
|
|
61994
|
-
className: "data-[orientation=vertical]:h-auto"
|
|
61995
|
-
}
|
|
61996
|
-
),
|
|
61997
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
|
|
61998
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "ABOUT US" }),
|
|
61999
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: company?.map((item) => /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62000
|
-
Pressable,
|
|
62001
|
-
{
|
|
62002
|
-
href: item.link,
|
|
62003
|
-
className: "flex flex-row items-center gap-3",
|
|
62004
|
-
children: [
|
|
62005
|
-
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 16 }),
|
|
62006
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium whitespace-nowrap", children: item.title })
|
|
62007
|
-
]
|
|
62008
|
-
}
|
|
62009
|
-
) }, item.title)) })
|
|
62010
|
-
] })
|
|
62011
|
-
] }) })
|
|
62012
|
-
] }),
|
|
62013
|
-
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuItem, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62014
|
-
NavigationMenuLink,
|
|
62015
|
-
{
|
|
62016
|
-
asChild: true,
|
|
62017
|
-
className: navigationMenuTriggerStyle(),
|
|
62018
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: "#", children: "About" })
|
|
62019
|
-
}
|
|
62020
|
-
) })
|
|
62021
|
-
] }) })
|
|
62046
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
62047
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62048
|
+
Section,
|
|
62049
|
+
{
|
|
62050
|
+
background,
|
|
62051
|
+
spacing: spacingOverride ?? spacing,
|
|
62052
|
+
className: sectionClasses,
|
|
62053
|
+
pattern,
|
|
62054
|
+
patternOpacity,
|
|
62055
|
+
containerClassName: sectionContainerClassName,
|
|
62056
|
+
containerMaxWidth: sectionContainerMaxWidth,
|
|
62057
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62058
|
+
"nav",
|
|
62059
|
+
{
|
|
62060
|
+
className: cn(
|
|
62061
|
+
"flex items-center justify-between py-4",
|
|
62062
|
+
navClassName
|
|
62063
|
+
),
|
|
62064
|
+
children: [
|
|
62065
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-1 items-center gap-9", children: [
|
|
62066
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62067
|
+
NavbarLogo,
|
|
62068
|
+
{
|
|
62069
|
+
logo,
|
|
62070
|
+
logoSlot,
|
|
62071
|
+
logoClassName,
|
|
62072
|
+
optixFlowConfig
|
|
62073
|
+
}
|
|
62074
|
+
),
|
|
62075
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62076
|
+
"div",
|
|
62077
|
+
{
|
|
62078
|
+
className: cn(
|
|
62079
|
+
"hidden items-center gap-1.5 lg:flex",
|
|
62080
|
+
navigationMenuClassName
|
|
62081
|
+
),
|
|
62082
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(NavigationMenu, { delayDuration: 0, viewport: false, children: renderNavigation })
|
|
62022
62083
|
}
|
|
62023
62084
|
)
|
|
62024
62085
|
] }),
|
|
@@ -62032,113 +62093,194 @@ var NavbarEducationPlatform = ({
|
|
|
62032
62093
|
children: renderAuthActions
|
|
62033
62094
|
}
|
|
62034
62095
|
),
|
|
62035
|
-
/* @__PURE__ */ jsxRuntime.
|
|
62096
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62036
62097
|
Pressable,
|
|
62037
62098
|
{
|
|
62038
|
-
|
|
62099
|
+
className: "size-11",
|
|
62100
|
+
variant: "ghost",
|
|
62039
62101
|
size: "icon",
|
|
62040
62102
|
asButton: true,
|
|
62041
|
-
className: "lg:hidden",
|
|
62042
62103
|
onClick: () => setIsOpen(!isOpen),
|
|
62043
|
-
children:
|
|
62044
|
-
|
|
62045
|
-
|
|
62046
|
-
|
|
62104
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62105
|
+
DynamicIcon,
|
|
62106
|
+
{
|
|
62107
|
+
name: "lucide/menu",
|
|
62108
|
+
size: 22,
|
|
62109
|
+
className: "stroke-foreground"
|
|
62110
|
+
}
|
|
62111
|
+
)
|
|
62047
62112
|
}
|
|
62048
|
-
)
|
|
62113
|
+
) })
|
|
62049
62114
|
]
|
|
62050
62115
|
}
|
|
62051
|
-
) }) }) })
|
|
62052
|
-
|
|
62053
|
-
|
|
62116
|
+
) }) }) })
|
|
62117
|
+
}
|
|
62118
|
+
),
|
|
62119
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62120
|
+
MobileNavigationMenu8,
|
|
62121
|
+
{
|
|
62122
|
+
open: isOpen,
|
|
62123
|
+
onClose: handleMobileMenuClose,
|
|
62124
|
+
menu: menu ?? [],
|
|
62125
|
+
mobileAuthActions,
|
|
62126
|
+
mobileAuthActionsSlot,
|
|
62127
|
+
mobileMenuClassName
|
|
62128
|
+
}
|
|
62129
|
+
)
|
|
62130
|
+
] });
|
|
62131
|
+
};
|
|
62132
|
+
var DesktopMenuItem7 = ({
|
|
62133
|
+
item,
|
|
62134
|
+
index,
|
|
62135
|
+
optixFlowConfig
|
|
62136
|
+
}) => {
|
|
62137
|
+
if (item.groups && item.groups.length > 0) {
|
|
62138
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(NavigationMenuItem, { value: `${index}`, children: [
|
|
62139
|
+
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuTrigger, { children: item.label }),
|
|
62140
|
+
/* @__PURE__ */ jsxRuntime.jsx(NavigationMenuContent, { className: "p-0", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs(React52__namespace.Fragment, { children: [
|
|
62141
|
+
groupIndex > 0 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
62142
|
+
Separator,
|
|
62054
62143
|
{
|
|
62055
|
-
|
|
62056
|
-
|
|
62057
|
-
|
|
62058
|
-
|
|
62059
|
-
|
|
62060
|
-
|
|
62061
|
-
|
|
62062
|
-
|
|
62063
|
-
|
|
62064
|
-
|
|
62065
|
-
|
|
62066
|
-
|
|
62067
|
-
|
|
62068
|
-
|
|
62069
|
-
|
|
62070
|
-
|
|
62071
|
-
|
|
62072
|
-
|
|
62073
|
-
|
|
62074
|
-
|
|
62075
|
-
|
|
62076
|
-
|
|
62077
|
-
|
|
62078
|
-
|
|
62079
|
-
|
|
62080
|
-
|
|
62081
|
-
)) })
|
|
62082
|
-
] }),
|
|
62083
|
-
/* @__PURE__ */ jsxRuntime.jsx(Separator, {}),
|
|
62084
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "QUICK START" }) })
|
|
62085
|
-
] }) })
|
|
62086
|
-
] }),
|
|
62087
|
-
/* @__PURE__ */ jsxRuntime.jsxs(AccordionItem, { value: "support", className: "last:border-b", children: [
|
|
62088
|
-
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "pr-2.5 text-base font-medium hover:no-underline", children: "Support" }),
|
|
62089
|
-
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-4", children: [
|
|
62090
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
62091
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "GUIDES" }),
|
|
62092
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-5", children: docs?.map((doc) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62093
|
-
Pressable,
|
|
62094
|
-
{
|
|
62095
|
-
href: doc.link,
|
|
62096
|
-
className: "group flex cursor-pointer flex-row gap-3 rounded-md transition-colors",
|
|
62097
|
-
onClick: () => setIsOpen(false),
|
|
62098
|
-
children: [
|
|
62099
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex size-8 shrink-0 items-center justify-center rounded-md border border-border bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: doc.icon, size: 16 }) }),
|
|
62100
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex min-w-0 flex-col", children: [
|
|
62101
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm leading-tight font-medium", children: doc.title }),
|
|
62102
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs leading-tight text-muted-foreground", children: doc.description })
|
|
62103
|
-
] })
|
|
62104
|
-
]
|
|
62105
|
-
},
|
|
62106
|
-
doc.title
|
|
62107
|
-
)) })
|
|
62108
|
-
] }),
|
|
62109
|
-
/* @__PURE__ */ jsxRuntime.jsx(Separator, {}),
|
|
62110
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
62111
|
-
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: "ABOUT US" }),
|
|
62112
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-5", children: company?.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62113
|
-
Pressable,
|
|
62114
|
-
{
|
|
62115
|
-
href: item.link,
|
|
62116
|
-
className: "flex cursor-pointer flex-row items-center gap-3 rounded-md transition-colors",
|
|
62117
|
-
onClick: () => setIsOpen(false),
|
|
62118
|
-
children: [
|
|
62119
|
-
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 16 }),
|
|
62120
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium", children: item.title })
|
|
62121
|
-
]
|
|
62122
|
-
},
|
|
62123
|
-
item.title
|
|
62124
|
-
)) })
|
|
62125
|
-
] })
|
|
62126
|
-
] }) })
|
|
62144
|
+
orientation: "vertical",
|
|
62145
|
+
className: "data-[orientation=vertical]:h-auto"
|
|
62146
|
+
}
|
|
62147
|
+
),
|
|
62148
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
|
|
62149
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: group.label }),
|
|
62150
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-1", children: group.links.map((link) => /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62151
|
+
Pressable,
|
|
62152
|
+
{
|
|
62153
|
+
href: link.href,
|
|
62154
|
+
className: "group flex cursor-pointer flex-row gap-3",
|
|
62155
|
+
children: [
|
|
62156
|
+
link.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex size-10 shrink-0 items-center justify-center rounded-md border border-border bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: link.icon, size: 20 }) }),
|
|
62157
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
|
|
62158
|
+
/* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
|
|
62159
|
+
link.title,
|
|
62160
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62161
|
+
DynamicIcon,
|
|
62162
|
+
{
|
|
62163
|
+
name: "lucide/chevron-right",
|
|
62164
|
+
size: 16,
|
|
62165
|
+
className: "text-primary! opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
|
|
62166
|
+
}
|
|
62167
|
+
)
|
|
62168
|
+
] }),
|
|
62169
|
+
link.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: link.description })
|
|
62127
62170
|
] })
|
|
62128
|
-
]
|
|
62129
|
-
|
|
62130
|
-
|
|
62131
|
-
|
|
62132
|
-
|
|
62133
|
-
|
|
62134
|
-
|
|
62135
|
-
|
|
62136
|
-
|
|
62137
|
-
|
|
62138
|
-
|
|
62171
|
+
]
|
|
62172
|
+
}
|
|
62173
|
+
) }, link.title)) }),
|
|
62174
|
+
group.featuredImage && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-4", children: /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: group.featuredImage.href || "#", children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-lg bg-muted p-3", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62175
|
+
img.Img,
|
|
62176
|
+
{
|
|
62177
|
+
src: group.featuredImage.src,
|
|
62178
|
+
alt: group.featuredImage.alt || "Featured image",
|
|
62179
|
+
className: "aspect-video w-full max-w-[240px] rounded-md object-cover object-center",
|
|
62180
|
+
optixFlowConfig
|
|
62181
|
+
}
|
|
62182
|
+
) }) }) }) })
|
|
62183
|
+
] })
|
|
62184
|
+
] }, `group-${groupIndex}`)) }) })
|
|
62185
|
+
] }, `desktop-menu-item-${index}`);
|
|
62186
|
+
}
|
|
62187
|
+
return /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuItem, { value: `${index}`, children: /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, className: navigationMenuTriggerStyle(), children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { href: item.href, children: item.label }) }) }, `desktop-menu-item-${index}`);
|
|
62188
|
+
};
|
|
62189
|
+
var MobileNavigationMenu8 = ({
|
|
62190
|
+
open,
|
|
62191
|
+
onClose,
|
|
62192
|
+
menu,
|
|
62193
|
+
mobileAuthActions,
|
|
62194
|
+
mobileAuthActionsSlot,
|
|
62195
|
+
mobileMenuClassName
|
|
62196
|
+
}) => {
|
|
62197
|
+
const renderMobileAuthActions = React52.useMemo(() => {
|
|
62198
|
+
if (mobileAuthActionsSlot) return mobileAuthActionsSlot;
|
|
62199
|
+
if (!mobileAuthActions || mobileAuthActions.length === 0) return null;
|
|
62200
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-4", children: mobileAuthActions.map((action, index) => {
|
|
62201
|
+
const {
|
|
62202
|
+
label,
|
|
62203
|
+
icon,
|
|
62204
|
+
iconAfter,
|
|
62205
|
+
children,
|
|
62206
|
+
className: actionClassName,
|
|
62207
|
+
...pressableProps
|
|
62208
|
+
} = action;
|
|
62209
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62210
|
+
Pressable,
|
|
62211
|
+
{
|
|
62212
|
+
asButton: true,
|
|
62213
|
+
className: cn("w-full", actionClassName),
|
|
62214
|
+
onClick: onClose,
|
|
62215
|
+
...pressableProps,
|
|
62216
|
+
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
62217
|
+
icon,
|
|
62218
|
+
label,
|
|
62219
|
+
iconAfter
|
|
62220
|
+
] })
|
|
62221
|
+
},
|
|
62222
|
+
index
|
|
62223
|
+
);
|
|
62224
|
+
}) });
|
|
62225
|
+
}, [mobileAuthActionsSlot, mobileAuthActions, onClose]);
|
|
62226
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62227
|
+
NavbarMobileMenu,
|
|
62228
|
+
{
|
|
62229
|
+
open,
|
|
62230
|
+
onClose,
|
|
62231
|
+
title: "Mobile Navigation",
|
|
62232
|
+
className: mobileMenuClassName,
|
|
62233
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
62234
|
+
/* @__PURE__ */ jsxRuntime.jsx(Accordion, { type: "multiple", className: "w-full", children: menu.map((item, index) => {
|
|
62235
|
+
if (item.groups && item.groups.length > 0) {
|
|
62236
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62237
|
+
AccordionItem,
|
|
62238
|
+
{
|
|
62239
|
+
value: `nav-${index}`,
|
|
62240
|
+
className: "border-b-0",
|
|
62241
|
+
children: [
|
|
62242
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionTrigger, { className: "h-15 items-center p-0 px-4! text-base leading-[3.75] font-normal text-muted-foreground hover:bg-muted hover:no-underline", children: item.label }),
|
|
62243
|
+
/* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4", children: [
|
|
62244
|
+
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-2 px-4 text-[10px] text-muted-foreground uppercase", children: group.label }),
|
|
62245
|
+
group.links.map((link) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62246
|
+
Pressable,
|
|
62247
|
+
{
|
|
62248
|
+
href: link.href,
|
|
62249
|
+
className: "flex min-h-12 items-center gap-2 rounded-lg px-4 text-muted-foreground transition-colors duration-300 hover:bg-muted hover:text-foreground",
|
|
62250
|
+
onClick: onClose,
|
|
62251
|
+
children: [
|
|
62252
|
+
link.icon && /* @__PURE__ */ jsxRuntime.jsx(
|
|
62253
|
+
DynamicIcon,
|
|
62254
|
+
{
|
|
62255
|
+
name: link.icon,
|
|
62256
|
+
size: 16,
|
|
62257
|
+
className: "stroke-muted-foreground"
|
|
62258
|
+
}
|
|
62259
|
+
),
|
|
62260
|
+
link.title
|
|
62261
|
+
]
|
|
62262
|
+
},
|
|
62263
|
+
link.title
|
|
62264
|
+
))
|
|
62265
|
+
] }, `mobile-group-${groupIndex}`)) })
|
|
62266
|
+
]
|
|
62267
|
+
},
|
|
62268
|
+
`nav-item-${index}`
|
|
62269
|
+
);
|
|
62139
62270
|
}
|
|
62140
|
-
|
|
62141
|
-
|
|
62271
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62272
|
+
Pressable,
|
|
62273
|
+
{
|
|
62274
|
+
href: item.href,
|
|
62275
|
+
className: "flex h-15 items-center rounded-md p-0 px-4 text-left text-base leading-[3.75] font-normal text-muted-foreground ring-ring/10 outline-ring/50 transition-all hover:bg-muted focus-visible:ring-4 focus-visible:outline-1",
|
|
62276
|
+
onClick: onClose,
|
|
62277
|
+
children: item.label
|
|
62278
|
+
},
|
|
62279
|
+
`nav-link-${index}`
|
|
62280
|
+
);
|
|
62281
|
+
}) }),
|
|
62282
|
+
renderMobileAuthActions
|
|
62283
|
+
] }) })
|
|
62142
62284
|
}
|
|
62143
62285
|
);
|
|
62144
62286
|
};
|
|
@@ -62562,94 +62704,15 @@ var NavbarSearchFocused = ({
|
|
|
62562
62704
|
)) }),
|
|
62563
62705
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-t pt-4 mt-6", children: renderMobileMenuActions })
|
|
62564
62706
|
] })
|
|
62565
|
-
}
|
|
62566
|
-
)
|
|
62567
|
-
]
|
|
62568
|
-
}
|
|
62569
|
-
) }) }) })
|
|
62570
|
-
}
|
|
62571
|
-
);
|
|
62572
|
-
};
|
|
62573
|
-
var AnimatedHamburger = ({ isOpen }) => {
|
|
62574
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "group relative size-full", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute flex size-full items-center justify-center", children: [
|
|
62575
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62576
|
-
DynamicIcon,
|
|
62577
|
-
{
|
|
62578
|
-
name: "lucide/menu",
|
|
62579
|
-
size: 24,
|
|
62580
|
-
className: `absolute text-muted-foreground transition-all duration-300 group-hover:text-foreground ${isOpen ? "rotate-90 opacity-0" : "rotate-0 opacity-100"}`
|
|
62581
|
-
}
|
|
62582
|
-
),
|
|
62583
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62584
|
-
DynamicIcon,
|
|
62585
|
-
{
|
|
62586
|
-
name: "lucide/x",
|
|
62587
|
-
size: 24,
|
|
62588
|
-
className: `absolute text-muted-foreground transition-all duration-300 group-hover:text-foreground ${isOpen ? "rotate-0 opacity-100" : "-rotate-90 opacity-0"}`
|
|
62589
|
-
}
|
|
62590
|
-
)
|
|
62591
|
-
] }) });
|
|
62592
|
-
};
|
|
62593
|
-
var MobileNav = ({
|
|
62594
|
-
navItems,
|
|
62595
|
-
activeItem,
|
|
62596
|
-
setActiveItem,
|
|
62597
|
-
actions,
|
|
62598
|
-
actionsSlot
|
|
62599
|
-
}) => {
|
|
62600
|
-
const [isOpen, setIsOpen] = React52.useState(false);
|
|
62601
|
-
const renderActions = React52.useMemo(() => {
|
|
62602
|
-
if (actionsSlot) return actionsSlot;
|
|
62603
|
-
if (!actions || actions.length === 0) return null;
|
|
62604
|
-
return actions.map((action, index) => {
|
|
62605
|
-
const {
|
|
62606
|
-
label,
|
|
62607
|
-
icon,
|
|
62608
|
-
iconAfter,
|
|
62609
|
-
children,
|
|
62610
|
-
className: actionClassName,
|
|
62611
|
-
...pressableProps
|
|
62612
|
-
} = action;
|
|
62613
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62614
|
-
Pressable,
|
|
62615
|
-
{
|
|
62616
|
-
asButton: true,
|
|
62617
|
-
className: actionClassName,
|
|
62618
|
-
...pressableProps,
|
|
62619
|
-
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
62620
|
-
icon,
|
|
62621
|
-
label,
|
|
62622
|
-
iconAfter
|
|
62623
|
-
] })
|
|
62624
|
-
},
|
|
62625
|
-
index
|
|
62626
|
-
);
|
|
62627
|
-
});
|
|
62628
|
-
}, [actionsSlot, actions]);
|
|
62629
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-full items-center lg:hidden", children: /* @__PURE__ */ jsxRuntime.jsxs(Popover, { open: isOpen, onOpenChange: setIsOpen, children: [
|
|
62630
|
-
/* @__PURE__ */ jsxRuntime.jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Pressable, { variant: "ghost", size: "icon", asButton: true, onClick: () => {
|
|
62631
|
-
}, children: /* @__PURE__ */ jsxRuntime.jsx(AnimatedHamburger, { isOpen }) }) }),
|
|
62632
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62633
|
-
PopoverContent,
|
|
62634
|
-
{
|
|
62635
|
-
align: "end",
|
|
62636
|
-
className: "relative top-4 -right-4 block w-[calc(100vw-32px)] overflow-hidden rounded-xl p-0 sm:top-auto sm:right-auto sm:w-80 lg:hidden",
|
|
62637
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs("ul", { className: "w-full bg-background py-4 text-foreground", children: [
|
|
62638
|
-
navItems.map((navItem, idx) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62639
|
-
Pressable,
|
|
62640
|
-
{
|
|
62641
|
-
href: navItem.link,
|
|
62642
|
-
onClick: () => setActiveItem(navItem.name),
|
|
62643
|
-
className: `flex items-center border-l-[3px] px-6 py-4 text-sm font-medium text-foreground transition-all duration-75 ${activeItem === navItem.name ? "border-foreground text-foreground" : "border-transparent text-muted-foreground hover:text-foreground"}`,
|
|
62644
|
-
children: navItem.name
|
|
62645
|
-
}
|
|
62646
|
-
) }, idx)),
|
|
62647
|
-
(actionsSlot || actions && actions.length > 0) && /* @__PURE__ */ jsxRuntime.jsx("li", { className: "flex flex-col gap-3 px-7 py-2", children: renderActions })
|
|
62648
|
-
] })
|
|
62649
|
-
}
|
|
62650
|
-
)
|
|
62651
|
-
] }) });
|
|
62707
|
+
}
|
|
62708
|
+
)
|
|
62709
|
+
]
|
|
62710
|
+
}
|
|
62711
|
+
) }) }) })
|
|
62712
|
+
}
|
|
62713
|
+
);
|
|
62652
62714
|
};
|
|
62715
|
+
var MOBILE_BREAKPOINT7 = 1024;
|
|
62653
62716
|
var NavbarSimpleLinks = ({
|
|
62654
62717
|
className,
|
|
62655
62718
|
containerClassName,
|
|
@@ -62657,6 +62720,7 @@ var NavbarSimpleLinks = ({
|
|
|
62657
62720
|
navigationMenuClassName,
|
|
62658
62721
|
menuListClassName,
|
|
62659
62722
|
actionsClassName,
|
|
62723
|
+
mobileMenuClassName,
|
|
62660
62724
|
logo,
|
|
62661
62725
|
logoSlot,
|
|
62662
62726
|
logoClassName,
|
|
@@ -62665,6 +62729,8 @@ var NavbarSimpleLinks = ({
|
|
|
62665
62729
|
defaultActiveItem,
|
|
62666
62730
|
actions,
|
|
62667
62731
|
actionsSlot,
|
|
62732
|
+
mobileActions,
|
|
62733
|
+
mobileActionsSlot,
|
|
62668
62734
|
layoutVariant = "fullScreenContainerizedLinks",
|
|
62669
62735
|
background,
|
|
62670
62736
|
spacing,
|
|
@@ -62675,8 +62741,20 @@ var NavbarSimpleLinks = ({
|
|
|
62675
62741
|
const [activeItem, setActiveItem] = React52.useState(
|
|
62676
62742
|
defaultActiveItem || navItems?.[0]?.name || ""
|
|
62677
62743
|
);
|
|
62744
|
+
const [isOpen, setIsOpen] = React52.useState(false);
|
|
62678
62745
|
const indicatorRef = React52.useRef(null);
|
|
62679
62746
|
const menuRef = React52.useRef(null);
|
|
62747
|
+
React52.useEffect(() => {
|
|
62748
|
+
if (typeof window === "undefined") return;
|
|
62749
|
+
const handleResize = () => {
|
|
62750
|
+
if (window.innerWidth > MOBILE_BREAKPOINT7) {
|
|
62751
|
+
setIsOpen(false);
|
|
62752
|
+
}
|
|
62753
|
+
};
|
|
62754
|
+
handleResize();
|
|
62755
|
+
window.addEventListener("resize", handleResize);
|
|
62756
|
+
return () => window.removeEventListener("resize", handleResize);
|
|
62757
|
+
}, []);
|
|
62680
62758
|
React52.useEffect(() => {
|
|
62681
62759
|
const updateIndicator = () => {
|
|
62682
62760
|
const activeEl = document.querySelector(
|
|
@@ -62693,6 +62771,9 @@ var NavbarSimpleLinks = ({
|
|
|
62693
62771
|
window.addEventListener("resize", updateIndicator);
|
|
62694
62772
|
return () => window.removeEventListener("resize", updateIndicator);
|
|
62695
62773
|
}, [activeItem]);
|
|
62774
|
+
const handleMobileMenuClose = () => {
|
|
62775
|
+
setIsOpen(false);
|
|
62776
|
+
};
|
|
62696
62777
|
const renderNavItems = React52.useMemo(() => {
|
|
62697
62778
|
if (navItemsSlot) return navItemsSlot;
|
|
62698
62779
|
if (!navItems || navItems.length === 0) return null;
|
|
@@ -62746,80 +62827,161 @@ var NavbarSimpleLinks = ({
|
|
|
62746
62827
|
sectionContainerMaxWidth,
|
|
62747
62828
|
spacingOverride
|
|
62748
62829
|
} = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
|
|
62830
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
62831
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62832
|
+
Section,
|
|
62833
|
+
{
|
|
62834
|
+
background,
|
|
62835
|
+
spacing: spacingOverride ?? spacing,
|
|
62836
|
+
className: sectionClasses,
|
|
62837
|
+
pattern,
|
|
62838
|
+
patternOpacity,
|
|
62839
|
+
containerClassName: sectionContainerClassName,
|
|
62840
|
+
containerMaxWidth: sectionContainerMaxWidth,
|
|
62841
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62842
|
+
"nav",
|
|
62843
|
+
{
|
|
62844
|
+
className: cn("flex items-center justify-between", navClassName),
|
|
62845
|
+
children: [
|
|
62846
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62847
|
+
NavbarLogo,
|
|
62848
|
+
{
|
|
62849
|
+
logo,
|
|
62850
|
+
logoSlot,
|
|
62851
|
+
logoClassName,
|
|
62852
|
+
optixFlowConfig
|
|
62853
|
+
}
|
|
62854
|
+
),
|
|
62855
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62856
|
+
NavigationMenu,
|
|
62857
|
+
{
|
|
62858
|
+
className: cn("hidden lg:block", navigationMenuClassName),
|
|
62859
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62860
|
+
NavigationMenuList,
|
|
62861
|
+
{
|
|
62862
|
+
ref: menuRef,
|
|
62863
|
+
className: cn(
|
|
62864
|
+
"flex items-center gap-6 rounded-4xl px-8 py-3",
|
|
62865
|
+
menuListClassName
|
|
62866
|
+
),
|
|
62867
|
+
children: [
|
|
62868
|
+
renderNavItems,
|
|
62869
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62870
|
+
"div",
|
|
62871
|
+
{
|
|
62872
|
+
ref: indicatorRef,
|
|
62873
|
+
className: "absolute bottom-2 flex h-1 items-center justify-center px-2 transition-all duration-300",
|
|
62874
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-0.5 w-full rounded-t-none bg-foreground transition-all duration-300" })
|
|
62875
|
+
}
|
|
62876
|
+
)
|
|
62877
|
+
]
|
|
62878
|
+
}
|
|
62879
|
+
)
|
|
62880
|
+
}
|
|
62881
|
+
),
|
|
62882
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62883
|
+
Pressable,
|
|
62884
|
+
{
|
|
62885
|
+
className: "size-11",
|
|
62886
|
+
variant: "ghost",
|
|
62887
|
+
size: "icon",
|
|
62888
|
+
asButton: true,
|
|
62889
|
+
onClick: () => setIsOpen(!isOpen),
|
|
62890
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
62891
|
+
DynamicIcon,
|
|
62892
|
+
{
|
|
62893
|
+
name: "lucide/menu",
|
|
62894
|
+
size: 22,
|
|
62895
|
+
className: "stroke-foreground"
|
|
62896
|
+
}
|
|
62897
|
+
)
|
|
62898
|
+
}
|
|
62899
|
+
) }),
|
|
62900
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62901
|
+
"div",
|
|
62902
|
+
{
|
|
62903
|
+
className: cn(
|
|
62904
|
+
"hidden items-center gap-2 lg:flex",
|
|
62905
|
+
actionsClassName
|
|
62906
|
+
),
|
|
62907
|
+
children: renderActions
|
|
62908
|
+
}
|
|
62909
|
+
)
|
|
62910
|
+
]
|
|
62911
|
+
}
|
|
62912
|
+
) }) }) })
|
|
62913
|
+
}
|
|
62914
|
+
),
|
|
62915
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62916
|
+
MobileNavigationMenu9,
|
|
62917
|
+
{
|
|
62918
|
+
open: isOpen,
|
|
62919
|
+
onClose: handleMobileMenuClose,
|
|
62920
|
+
navItems: navItems ?? [],
|
|
62921
|
+
mobileActions,
|
|
62922
|
+
mobileActionsSlot,
|
|
62923
|
+
mobileMenuClassName
|
|
62924
|
+
}
|
|
62925
|
+
)
|
|
62926
|
+
] });
|
|
62927
|
+
};
|
|
62928
|
+
var MobileNavigationMenu9 = ({
|
|
62929
|
+
open,
|
|
62930
|
+
onClose,
|
|
62931
|
+
navItems,
|
|
62932
|
+
mobileActions,
|
|
62933
|
+
mobileActionsSlot,
|
|
62934
|
+
mobileMenuClassName
|
|
62935
|
+
}) => {
|
|
62936
|
+
const renderMobileActions = React52.useMemo(() => {
|
|
62937
|
+
if (mobileActionsSlot) return mobileActionsSlot;
|
|
62938
|
+
if (!mobileActions || mobileActions.length === 0) return null;
|
|
62939
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-4 px-4", children: mobileActions.map((action, index) => {
|
|
62940
|
+
const {
|
|
62941
|
+
label,
|
|
62942
|
+
icon,
|
|
62943
|
+
iconAfter,
|
|
62944
|
+
children,
|
|
62945
|
+
className: actionClassName,
|
|
62946
|
+
...pressableProps
|
|
62947
|
+
} = action;
|
|
62948
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62949
|
+
Pressable,
|
|
62950
|
+
{
|
|
62951
|
+
asButton: true,
|
|
62952
|
+
className: cn("w-full", actionClassName),
|
|
62953
|
+
onClick: onClose,
|
|
62954
|
+
...pressableProps,
|
|
62955
|
+
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
62956
|
+
icon,
|
|
62957
|
+
label,
|
|
62958
|
+
iconAfter
|
|
62959
|
+
] })
|
|
62960
|
+
},
|
|
62961
|
+
index
|
|
62962
|
+
);
|
|
62963
|
+
}) });
|
|
62964
|
+
}, [mobileActionsSlot, mobileActions, onClose]);
|
|
62749
62965
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
62750
|
-
|
|
62966
|
+
NavbarMobileMenu,
|
|
62751
62967
|
{
|
|
62752
|
-
|
|
62753
|
-
|
|
62754
|
-
|
|
62755
|
-
|
|
62756
|
-
|
|
62757
|
-
|
|
62758
|
-
|
|
62759
|
-
|
|
62760
|
-
|
|
62761
|
-
|
|
62762
|
-
|
|
62763
|
-
|
|
62764
|
-
|
|
62765
|
-
|
|
62766
|
-
|
|
62767
|
-
|
|
62768
|
-
|
|
62769
|
-
logoClassName,
|
|
62770
|
-
optixFlowConfig
|
|
62771
|
-
}
|
|
62772
|
-
),
|
|
62773
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62774
|
-
NavigationMenu,
|
|
62775
|
-
{
|
|
62776
|
-
className: cn("hidden lg:block", navigationMenuClassName),
|
|
62777
|
-
children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
62778
|
-
NavigationMenuList,
|
|
62779
|
-
{
|
|
62780
|
-
ref: menuRef,
|
|
62781
|
-
className: cn(
|
|
62782
|
-
"flex items-center gap-6 rounded-4xl px-8 py-3",
|
|
62783
|
-
menuListClassName
|
|
62784
|
-
),
|
|
62785
|
-
children: [
|
|
62786
|
-
renderNavItems,
|
|
62787
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62788
|
-
"div",
|
|
62789
|
-
{
|
|
62790
|
-
ref: indicatorRef,
|
|
62791
|
-
className: "absolute bottom-2 flex h-1 items-center justify-center px-2 transition-all duration-300",
|
|
62792
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-0.5 w-full rounded-t-none bg-foreground transition-all duration-300" })
|
|
62793
|
-
}
|
|
62794
|
-
)
|
|
62795
|
-
]
|
|
62796
|
-
}
|
|
62797
|
-
)
|
|
62798
|
-
}
|
|
62799
|
-
),
|
|
62800
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62801
|
-
MobileNav,
|
|
62802
|
-
{
|
|
62803
|
-
navItems: navItems ?? [],
|
|
62804
|
-
activeItem,
|
|
62805
|
-
setActiveItem,
|
|
62806
|
-
actions,
|
|
62807
|
-
actionsSlot
|
|
62808
|
-
}
|
|
62809
|
-
),
|
|
62810
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
62811
|
-
"div",
|
|
62812
|
-
{
|
|
62813
|
-
className: cn(
|
|
62814
|
-
"hidden items-center gap-2 lg:flex",
|
|
62815
|
-
actionsClassName
|
|
62816
|
-
),
|
|
62817
|
-
children: renderActions
|
|
62818
|
-
}
|
|
62819
|
-
)
|
|
62820
|
-
]
|
|
62821
|
-
}
|
|
62822
|
-
) }) }) })
|
|
62968
|
+
open,
|
|
62969
|
+
onClose,
|
|
62970
|
+
title: "Navigation",
|
|
62971
|
+
className: mobileMenuClassName,
|
|
62972
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6", children: [
|
|
62973
|
+
/* @__PURE__ */ jsxRuntime.jsx("nav", { className: "flex flex-col", children: navItems.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
62974
|
+
Pressable,
|
|
62975
|
+
{
|
|
62976
|
+
href: item.link,
|
|
62977
|
+
className: "flex h-15 items-center rounded-md px-4 text-left text-base leading-[3.75] font-normal text-muted-foreground ring-ring/10 outline-ring/50 transition-all hover:bg-muted focus-visible:ring-4 focus-visible:outline-1",
|
|
62978
|
+
onClick: onClose,
|
|
62979
|
+
children: item.name
|
|
62980
|
+
},
|
|
62981
|
+
`nav-link-${index}`
|
|
62982
|
+
)) }),
|
|
62983
|
+
renderMobileActions
|
|
62984
|
+
] }) })
|
|
62823
62985
|
}
|
|
62824
62986
|
);
|
|
62825
62987
|
};
|
|
@@ -62983,8 +63145,8 @@ var NavbarSplitCta = ({
|
|
|
62983
63145
|
open: isOpen,
|
|
62984
63146
|
onClose: () => setIsOpen(false),
|
|
62985
63147
|
title: "Navigation Menu",
|
|
62986
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-
|
|
62987
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "
|
|
63148
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4", children: [
|
|
63149
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "pt-0", children: menuSlot ? menuSlot : renderMenu?.map(
|
|
62988
63150
|
(item, index) => item.items ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4", children: [
|
|
62989
63151
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-2 text-sm font-medium text-muted-foreground", children: item.title }),
|
|
62990
63152
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-1 pl-2", children: item.items.map((subItem, subIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -63065,6 +63227,7 @@ var NavbarIconLinks = ({
|
|
|
63065
63227
|
/* @__PURE__ */ jsxRuntime.jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
63066
63228
|
Pressable,
|
|
63067
63229
|
{
|
|
63230
|
+
size: "icon",
|
|
63068
63231
|
className: cn(
|
|
63069
63232
|
"flex h-10 w-10 items-center justify-center rounded-md transition-colors",
|
|
63070
63233
|
"text-muted-foreground hover:bg-accent hover:text-accent-foreground",
|
|
@@ -63464,55 +63627,6 @@ var NavbarTabbedSections = ({
|
|
|
63464
63627
|
}
|
|
63465
63628
|
);
|
|
63466
63629
|
};
|
|
63467
|
-
var platformIconMap = {
|
|
63468
|
-
instagram: "cib/instagram",
|
|
63469
|
-
linkedin: "cib/linkedin",
|
|
63470
|
-
google: "cib/google",
|
|
63471
|
-
facebook: "cib/facebook",
|
|
63472
|
-
tiktok: "cib/tiktok",
|
|
63473
|
-
youtube: "cib/youtube",
|
|
63474
|
-
yelp: "cib/yelp",
|
|
63475
|
-
spotify: "cib/spotify",
|
|
63476
|
-
apple: "cib/apple",
|
|
63477
|
-
x: "line-md/twitter-x"
|
|
63478
|
-
};
|
|
63479
|
-
var SocialLinkIcon = React52__namespace.forwardRef(
|
|
63480
|
-
({
|
|
63481
|
-
platformName,
|
|
63482
|
-
label,
|
|
63483
|
-
iconSize = 20,
|
|
63484
|
-
iconColor,
|
|
63485
|
-
iconClassName,
|
|
63486
|
-
className,
|
|
63487
|
-
...pressableProps
|
|
63488
|
-
}, ref) => {
|
|
63489
|
-
const iconName = platformIconMap[platformName];
|
|
63490
|
-
const accessibleLabel = label || platformName;
|
|
63491
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
63492
|
-
Pressable,
|
|
63493
|
-
{
|
|
63494
|
-
ref,
|
|
63495
|
-
"aria-label": accessibleLabel,
|
|
63496
|
-
className: cn(
|
|
63497
|
-
"inline-flex items-center justify-center transition-colors",
|
|
63498
|
-
className
|
|
63499
|
-
),
|
|
63500
|
-
...pressableProps,
|
|
63501
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
63502
|
-
DynamicIcon,
|
|
63503
|
-
{
|
|
63504
|
-
name: iconName,
|
|
63505
|
-
size: iconSize,
|
|
63506
|
-
color: iconColor,
|
|
63507
|
-
className: iconClassName,
|
|
63508
|
-
alt: accessibleLabel
|
|
63509
|
-
}
|
|
63510
|
-
)
|
|
63511
|
-
}
|
|
63512
|
-
);
|
|
63513
|
-
}
|
|
63514
|
-
);
|
|
63515
|
-
SocialLinkIcon.displayName = "SocialLinkIcon";
|
|
63516
63630
|
var NavbarFullscreenMenu = ({
|
|
63517
63631
|
logo,
|
|
63518
63632
|
logoSlot,
|
|
@@ -78535,7 +78649,7 @@ function ListSearchableGrid({
|
|
|
78535
78649
|
}
|
|
78536
78650
|
);
|
|
78537
78651
|
}
|
|
78538
|
-
var { useMemo:
|
|
78652
|
+
var { useMemo: useMemo443 } = React52__namespace;
|
|
78539
78653
|
function OfferModalNewsletterDiscount({
|
|
78540
78654
|
title,
|
|
78541
78655
|
emailPlaceholder,
|
|
@@ -78603,7 +78717,7 @@ function OfferModalNewsletterDiscount({
|
|
|
78603
78717
|
});
|
|
78604
78718
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
78605
78719
|
const dialogProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
78606
|
-
const renderCloseButton =
|
|
78720
|
+
const renderCloseButton = useMemo443(() => {
|
|
78607
78721
|
if (closeButtonSlot) return closeButtonSlot;
|
|
78608
78722
|
if (!closeButtonText) return null;
|
|
78609
78723
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute end-1.5 top-1.5", children: /* @__PURE__ */ jsxRuntime.jsx(DialogClose, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -78617,12 +78731,12 @@ function OfferModalNewsletterDiscount({
|
|
|
78617
78731
|
}
|
|
78618
78732
|
) }) });
|
|
78619
78733
|
}, [closeButtonSlot, closeButtonText, closeClassName]);
|
|
78620
|
-
const renderHeader =
|
|
78734
|
+
const renderHeader = useMemo443(() => {
|
|
78621
78735
|
if (headerSlot) return headerSlot;
|
|
78622
78736
|
if (!title) return null;
|
|
78623
78737
|
return /* @__PURE__ */ jsxRuntime.jsx(DialogHeader, { className: headerClassName, children: typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(DialogTitle, { className: cn("text-start font-serif text-2xl font-normal leading-snug", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx(DialogTitle, { className: cn("text-start font-serif text-2xl font-normal leading-snug", titleClassName), children: title }) });
|
|
78624
78738
|
}, [headerSlot, title, headerClassName, titleClassName]);
|
|
78625
|
-
const renderForm =
|
|
78739
|
+
const renderForm = useMemo443(() => {
|
|
78626
78740
|
if (formSlot) return formSlot;
|
|
78627
78741
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
78628
78742
|
forms.Form,
|
|
@@ -78684,7 +78798,7 @@ function OfferModalNewsletterDiscount({
|
|
|
78684
78798
|
}
|
|
78685
78799
|
) });
|
|
78686
78800
|
}
|
|
78687
|
-
var { useMemo:
|
|
78801
|
+
var { useMemo: useMemo444 } = React52__namespace;
|
|
78688
78802
|
function OfferModalMembershipImage({
|
|
78689
78803
|
overline,
|
|
78690
78804
|
title,
|
|
@@ -78761,7 +78875,7 @@ function OfferModalMembershipImage({
|
|
|
78761
78875
|
});
|
|
78762
78876
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
78763
78877
|
const dialogProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
78764
|
-
const renderImage =
|
|
78878
|
+
const renderImage = useMemo444(() => {
|
|
78765
78879
|
if (imageSlot) return imageSlot;
|
|
78766
78880
|
if (!image) return null;
|
|
78767
78881
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("max-h-[290px] h-full overflow-hidden max-lg:hidden", imageWrapperClassName), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -78774,7 +78888,7 @@ function OfferModalMembershipImage({
|
|
|
78774
78888
|
}
|
|
78775
78889
|
) });
|
|
78776
78890
|
}, [imageSlot, image, imageWrapperClassName, imageClassName, optixFlowConfig]);
|
|
78777
|
-
const renderCloseButton =
|
|
78891
|
+
const renderCloseButton = useMemo444(() => {
|
|
78778
78892
|
if (closeButtonSlot) return closeButtonSlot;
|
|
78779
78893
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -end-px -top-px z-10", children: /* @__PURE__ */ jsxRuntime.jsx(DialogClose, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
78780
78894
|
Pressable,
|
|
@@ -78790,7 +78904,7 @@ function OfferModalMembershipImage({
|
|
|
78790
78904
|
}
|
|
78791
78905
|
) }) });
|
|
78792
78906
|
}, [closeButtonSlot, closeClassName]);
|
|
78793
|
-
const renderForm =
|
|
78907
|
+
const renderForm = useMemo444(() => {
|
|
78794
78908
|
if (formSlot) return formSlot;
|
|
78795
78909
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
78796
78910
|
forms.Form,
|
|
@@ -78853,7 +78967,7 @@ function OfferModalMembershipImage({
|
|
|
78853
78967
|
}
|
|
78854
78968
|
);
|
|
78855
78969
|
}, [formSlot, form, formConfig, formMethod, emailPlaceholder, inputClassName, submitClassName, buttonText, formClassName]);
|
|
78856
|
-
const renderFooter =
|
|
78970
|
+
const renderFooter = useMemo444(() => {
|
|
78857
78971
|
if (footerSlot) return footerSlot;
|
|
78858
78972
|
if (!description) return null;
|
|
78859
78973
|
return /* @__PURE__ */ jsxRuntime.jsx(DialogFooter, { className: footerClassName, children: /* @__PURE__ */ jsxRuntime.jsx(DialogDescription, { className: cn("text-muted-foreground text-center text-xs leading-relaxed", descriptionClassName), children: description }) });
|
|
@@ -78973,7 +79087,7 @@ function SheetDescription({
|
|
|
78973
79087
|
}
|
|
78974
79088
|
);
|
|
78975
79089
|
}
|
|
78976
|
-
var { useMemo:
|
|
79090
|
+
var { useMemo: useMemo445 } = React52__namespace;
|
|
78977
79091
|
function OfferModalSheetNewsletter({
|
|
78978
79092
|
logo,
|
|
78979
79093
|
logoSlot,
|
|
@@ -79056,7 +79170,7 @@ function OfferModalSheetNewsletter({
|
|
|
79056
79170
|
});
|
|
79057
79171
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
79058
79172
|
const sheetProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
79059
|
-
const renderLogo =
|
|
79173
|
+
const renderLogo = useMemo445(() => {
|
|
79060
79174
|
if (logoSlot) return logoSlot;
|
|
79061
79175
|
if (!logo) return null;
|
|
79062
79176
|
const logoSrc = typeof logo.src === "string" ? logo.src : logo.src.light;
|
|
@@ -79070,7 +79184,7 @@ function OfferModalSheetNewsletter({
|
|
|
79070
79184
|
}
|
|
79071
79185
|
);
|
|
79072
79186
|
}, [logoSlot, logo, logoClassName, optixFlowConfig]);
|
|
79073
|
-
const renderHeader =
|
|
79187
|
+
const renderHeader = useMemo445(() => {
|
|
79074
79188
|
if (headerSlot) return headerSlot;
|
|
79075
79189
|
return /* @__PURE__ */ jsxRuntime.jsxs(SheetHeader, { className: cn("gap-8 p-0", headerClassName), children: [
|
|
79076
79190
|
renderLogo,
|
|
@@ -79080,7 +79194,7 @@ function OfferModalSheetNewsletter({
|
|
|
79080
79194
|
] })
|
|
79081
79195
|
] });
|
|
79082
79196
|
}, [headerSlot, renderLogo, headerClassName, title, titleClassName, description, descriptionClassName]);
|
|
79083
|
-
const renderForm =
|
|
79197
|
+
const renderForm = useMemo445(() => {
|
|
79084
79198
|
if (formSlot) return formSlot;
|
|
79085
79199
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
79086
79200
|
forms.Form,
|
|
@@ -79128,7 +79242,7 @@ function OfferModalSheetNewsletter({
|
|
|
79128
79242
|
}
|
|
79129
79243
|
);
|
|
79130
79244
|
}, [formSlot, form, formConfig, formMethod, emailPlaceholder, inputClassName, submitClassName, buttonText, formClassName]);
|
|
79131
|
-
const renderLegal =
|
|
79245
|
+
const renderLegal = useMemo445(() => {
|
|
79132
79246
|
if (legalSlot) return legalSlot;
|
|
79133
79247
|
if (!termsUrl || !termsText || !privacyUrl || !privacyText) return null;
|
|
79134
79248
|
return /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn("text-muted-foreground text-xs", legalClassName), children: [
|
|
@@ -79142,7 +79256,7 @@ function OfferModalSheetNewsletter({
|
|
|
79142
79256
|
"."
|
|
79143
79257
|
] });
|
|
79144
79258
|
}, [legalSlot, termsUrl, termsText, privacyUrl, privacyText, legalClassName]);
|
|
79145
|
-
const renderImage =
|
|
79259
|
+
const renderImage = useMemo445(() => {
|
|
79146
79260
|
if (imageSlot) return imageSlot;
|
|
79147
79261
|
if (!image) return null;
|
|
79148
79262
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("h-1/2 basis-1/2", imageWrapperClassName), children: /* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: 1, className: "overflow-hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
|