@opensite/ui 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/registry.js CHANGED
@@ -58181,255 +58181,12 @@ var NavbarMegaMenu = ({
58181
58181
  }
58182
58182
  );
58183
58183
  };
58184
- var MOBILE_BREAKPOINT = 1024;
58185
- var NavbarEnterpriseMega = ({
58186
- className,
58187
- containerClassName,
58188
- navClassName,
58189
- navigationMenuClassName,
58190
- actionsClassName,
58191
- logoClassName,
58192
- logo = {
58193
- url: "/",
58194
- src: logoPlaceholders.logoMark
58195
- },
58196
- logoSlot,
58197
- menuLinks,
58198
- actions,
58199
- actionsSlot,
58200
- layoutVariant = "fullScreenContainerizedLinks",
58201
- background,
58202
- spacing,
58203
- pattern,
58204
- patternOpacity,
58205
- optixFlowConfig
58206
- }) => {
58207
- const [open, setOpen] = useState(false);
58208
- useEffect(() => {
58209
- const handleResize = () => {
58210
- if (window.innerWidth > MOBILE_BREAKPOINT) {
58211
- setOpen(false);
58212
- }
58213
- };
58214
- handleResize();
58215
- window.addEventListener("resize", handleResize);
58216
- return () => window.removeEventListener("resize", handleResize);
58217
- }, []);
58218
- useEffect(() => {
58219
- document.body.style.overflow = open ? "hidden" : "auto";
58220
- }, [open]);
58221
- const handleMobileMenu = () => {
58222
- setOpen(!open);
58223
- };
58224
- const renderActions = useMemo$1(() => {
58225
- if (actionsSlot) return actionsSlot;
58226
- if (!actions || actions.length === 0) return null;
58227
- return actions.map((action, index) => {
58228
- const {
58229
- label,
58230
- icon,
58231
- iconAfter,
58232
- children,
58233
- className: actionClassName,
58234
- ...pressableProps
58235
- } = action;
58236
- return /* @__PURE__ */ jsx(Pressable, { className: actionClassName, ...pressableProps, children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
58237
- icon,
58238
- label,
58239
- iconAfter
58240
- ] }) }, index);
58241
- });
58242
- }, [actionsSlot, actions]);
58243
- const {
58244
- sectionClasses,
58245
- containerWrapperClasses,
58246
- innerContainerClasses,
58247
- navWrapperClasses,
58248
- sectionContainerClassName,
58249
- sectionContainerMaxWidth,
58250
- spacingOverride
58251
- } = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
58252
- return /* @__PURE__ */ jsxs(Fragment, { children: [
58253
- /* @__PURE__ */ jsx(
58254
- Section,
58255
- {
58256
- background,
58257
- spacing: spacingOverride ?? spacing,
58258
- className: cn(
58259
- "pointer-events-auto fixed top-0 z-999 flex w-full items-center justify-center",
58260
- sectionClasses
58261
- ),
58262
- pattern,
58263
- patternOpacity,
58264
- containerClassName: sectionContainerClassName,
58265
- containerMaxWidth: sectionContainerMaxWidth,
58266
- children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxs(
58267
- "nav",
58268
- {
58269
- className: cn(
58270
- "flex h-16 items-center justify-between gap-8",
58271
- navClassName
58272
- ),
58273
- children: [
58274
- /* @__PURE__ */ jsx(
58275
- NavbarLogo,
58276
- {
58277
- logo,
58278
- logoSlot,
58279
- logoClassName,
58280
- optixFlowConfig
58281
- }
58282
- ),
58283
- /* @__PURE__ */ jsx(
58284
- NavigationMenu,
58285
- {
58286
- className: cn(
58287
- "hidden lg:flex [&>div:last-child]:left-1/2 [&>div:last-child]:-translate-x-1/2",
58288
- navigationMenuClassName
58289
- ),
58290
- viewport: true,
58291
- children: /* @__PURE__ */ jsx(NavigationMenuList, { children: menuLinks?.map((item, index) => /* @__PURE__ */ jsx(
58292
- DesktopMenuItem2,
58293
- {
58294
- item,
58295
- index,
58296
- optixFlowConfig
58297
- },
58298
- `desktop-link-${index}`
58299
- )) })
58300
- }
58301
- ),
58302
- /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-3", actionsClassName), children: [
58303
- /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:items-center lg:gap-3", children: renderActions }),
58304
- /* @__PURE__ */ jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsx(
58305
- Pressable,
58306
- {
58307
- className: "size-11",
58308
- variant: "ghost",
58309
- size: "icon",
58310
- asButton: true,
58311
- onClick: handleMobileMenu,
58312
- children: open ? /* @__PURE__ */ jsx(
58313
- DynamicIcon,
58314
- {
58315
- name: "lucide/x",
58316
- size: 22,
58317
- className: "stroke-foreground"
58318
- }
58319
- ) : /* @__PURE__ */ jsx(
58320
- DynamicIcon,
58321
- {
58322
- name: "lucide/menu",
58323
- size: 22,
58324
- className: "stroke-foreground"
58325
- }
58326
- )
58327
- }
58328
- ) })
58329
- ] })
58330
- ]
58331
- }
58332
- ) }) }) })
58333
- }
58334
- ),
58335
- /* @__PURE__ */ jsx(
58336
- MobileNavigationMenu,
58337
- {
58338
- open,
58339
- setOpen,
58340
- menuLinks: menuLinks ?? [],
58341
- actionsClassName,
58342
- actions,
58343
- actionsSlot,
58344
- optixFlowConfig
58345
- }
58346
- )
58347
- ] });
58348
- };
58349
- var DesktopMenuItem2 = ({
58350
- item,
58351
- index,
58352
- optixFlowConfig
58353
- }) => {
58354
- const hasDropdown = Boolean(item.layout);
58355
- const effectiveLayout = item.layout || "solutions-with-platform";
58356
- if (hasDropdown) {
58357
- return /* @__PURE__ */ jsxs(NavigationMenuItem, { value: `${index}`, children: [
58358
- /* @__PURE__ */ jsx(NavigationMenuTrigger, { className: "h-auto bg-transparent px-3 py-2 font-normal hover:bg-muted focus:bg-muted data-[state=open]:bg-muted/50", children: item.label }),
58359
- /* @__PURE__ */ jsx(NavigationMenuContent, { className: "!rounded-xl !border-0 !p-6", children: renderDropdownContent(
58360
- { ...item, layout: effectiveLayout },
58361
- optixFlowConfig
58362
- ) })
58363
- ] }, `desktop-menu-item-${index}`);
58364
- }
58365
- return /* @__PURE__ */ jsx(NavigationMenuItem, { value: `${index}`, children: /* @__PURE__ */ jsx(
58366
- NavigationMenuLink,
58367
- {
58368
- href: item.href,
58369
- className: "h-auto bg-transparent px-3 py-2 font-normal hover:bg-muted focus:bg-muted",
58370
- children: item.label
58371
- }
58372
- ) }, `desktop-menu-item-${index}`);
58373
- };
58374
- var renderDropdownContent = (item, optixFlowConfig) => {
58375
- switch (item.layout) {
58376
- case "solutions-with-platform":
58377
- return /* @__PURE__ */ jsx(
58378
- SolutionsMenu,
58379
- {
58380
- solutionCards: item.solutionCards ?? [],
58381
- platformItems: item.platformItems ?? [],
58382
- featuredHeroCard: item.featuredHeroCard,
58383
- optixFlowConfig
58384
- }
58385
- );
58386
- case "products-categorized":
58387
- return /* @__PURE__ */ jsx(
58388
- ProductsMenu,
58389
- {
58390
- productCategories: item.productCategories ?? [],
58391
- featuredHeroCard: item.featuredHeroCard,
58392
- optixFlowConfig
58393
- }
58394
- );
58395
- case "features-with-locations":
58396
- return /* @__PURE__ */ jsx(
58397
- GlobalMenu,
58398
- {
58399
- featureCategories: item.featureCategories ?? [],
58400
- regions: item.regions ?? [],
58401
- featuredHeroCard: item.featuredHeroCard,
58402
- optixFlowConfig
58403
- }
58404
- );
58405
- case "partners-promotional":
58406
- return /* @__PURE__ */ jsx(
58407
- PartnersMenu,
58408
- {
58409
- partnerCards: item.partnerCards ?? [],
58410
- featuredHeroCard: item.featuredHeroCard,
58411
- optixFlowConfig
58412
- }
58413
- );
58414
- case "resources-with-topics":
58415
- return /* @__PURE__ */ jsx(
58416
- ResourcesMenu,
58417
- {
58418
- resourceItems: item.resourceItems ?? [],
58419
- topicGroups: item.topicGroups ?? [],
58420
- featuredHeroCard: item.featuredHeroCard
58421
- }
58422
- );
58423
- default:
58424
- return null;
58425
- }
58426
- };
58427
58184
  var SolutionsMenu = ({
58428
58185
  solutionCards,
58429
58186
  platformItems,
58430
58187
  featuredHeroCard,
58431
58188
  optixFlowConfig
58432
- }) => /* @__PURE__ */ jsxs("div", { className: "grid min-w-[1100px] grid-cols-2 gap-4", children: [
58189
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1200px] grid-cols-2 gap-4", children: [
58433
58190
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58434
58191
  Pressable,
58435
58192
  {
@@ -58530,7 +58287,7 @@ var ProductsMenu = ({
58530
58287
  productCategories,
58531
58288
  featuredHeroCard,
58532
58289
  optixFlowConfig
58533
- }) => /* @__PURE__ */ jsxs("div", { className: "grid min-w-[1000px] grid-cols-[320px_1fr] gap-6", children: [
58290
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1100px] grid-cols-[320px_1fr] gap-6", children: [
58534
58291
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58535
58292
  Pressable,
58536
58293
  {
@@ -58593,20 +58350,100 @@ var ProductsMenu = ({
58593
58350
  )) })
58594
58351
  ] }, category.title)) })
58595
58352
  ] });
58596
- var GlobalMenu = ({
58597
- featureCategories,
58598
- regions,
58599
- featuredHeroCard,
58600
- optixFlowConfig
58601
- }) => /* @__PURE__ */ jsxs("div", { className: "min-w-[1000px]", children: [
58602
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[280px_1fr] gap-6", children: [
58603
- featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58604
- Pressable,
58605
- {
58606
- href: featuredHeroCard.href,
58607
- className: cn(
58608
- "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
58609
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58353
+ var ResourcesMenu = ({
58354
+ resourceItems,
58355
+ topicGroups,
58356
+ featuredHeroCard
58357
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1100px] grid-cols-[280px_1fr_220px] gap-6", children: [
58358
+ featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58359
+ Pressable,
58360
+ {
58361
+ href: featuredHeroCard.href,
58362
+ className: cn(
58363
+ "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
58364
+ featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58365
+ ),
58366
+ children: [
58367
+ /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/3] w-full overflow-hidden", children: /* @__PURE__ */ jsx(
58368
+ Img,
58369
+ {
58370
+ src: featuredHeroCard.image,
58371
+ alt: featuredHeroCard.title,
58372
+ className: "h-full w-full object-cover invert"
58373
+ }
58374
+ ) }),
58375
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col p-5", children: [
58376
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
58377
+ featuredHeroCard.title,
58378
+ /* @__PURE__ */ jsx(
58379
+ DynamicIcon,
58380
+ {
58381
+ name: "lucide/arrow-right",
58382
+ size: 16,
58383
+ className: "transition-transform group-hover:translate-x-1"
58384
+ }
58385
+ )
58386
+ ] }),
58387
+ /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed", children: featuredHeroCard.description })
58388
+ ] })
58389
+ ]
58390
+ }
58391
+ ) }),
58392
+ resourceItems.length > 0 && /* @__PURE__ */ jsxs("div", { className: "col-span-1", children: [
58393
+ /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: "Resources" }) }),
58394
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-3", children: resourceItems.map((resource) => /* @__PURE__ */ jsxs(
58395
+ NavigationMenuLink,
58396
+ {
58397
+ href: resource.href,
58398
+ className: "group col-span-1 !flex !w-full items-start gap-3 rounded-lg border border-border p-3 hover:bg-muted",
58399
+ children: [
58400
+ /* @__PURE__ */ jsx(
58401
+ DynamicIcon,
58402
+ {
58403
+ name: resource.icon,
58404
+ size: 18,
58405
+ className: "mt-0.5 shrink-0"
58406
+ }
58407
+ ),
58408
+ /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
58409
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: resource.title }),
58410
+ /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: resource.description })
58411
+ ] })
58412
+ ]
58413
+ },
58414
+ resource.id
58415
+ )) })
58416
+ ] }),
58417
+ topicGroups.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: topicGroups.map((group) => /* @__PURE__ */ jsxs("div", { className: "mb-5 last:mb-0", children: [
58418
+ /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.title }) }),
58419
+ /* @__PURE__ */ jsx("div", { className: "space-y-1.5", children: group.topics.map((topic) => /* @__PURE__ */ jsxs(
58420
+ NavigationMenuLink,
58421
+ {
58422
+ href: topic.href,
58423
+ className: "group !flex !w-full items-center gap-2 rounded-lg p-2 hover:bg-muted",
58424
+ children: [
58425
+ /* @__PURE__ */ jsx(DynamicIcon, { name: topic.icon, size: 14, className: "shrink-0" }),
58426
+ /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 text-sm font-medium", children: topic.title })
58427
+ ]
58428
+ },
58429
+ topic.id
58430
+ )) })
58431
+ ] }, group.title)) })
58432
+ ] });
58433
+ var GlobalMenu = ({
58434
+ featureCategories,
58435
+ regions,
58436
+ featuredHeroCard,
58437
+ optixFlowConfig
58438
+ }) => /* @__PURE__ */ jsxs("div", { className: "w-[1100px]", children: [
58439
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-[280px_1fr] gap-6", children: [
58440
+ featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58441
+ Pressable,
58442
+ {
58443
+ href: featuredHeroCard.href,
58444
+ className: cn(
58445
+ "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
58446
+ featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58610
58447
  ),
58611
58448
  children: [
58612
58449
  /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/3] w-full overflow-hidden", children: /* @__PURE__ */ jsx(
@@ -58684,7 +58521,7 @@ var PartnersMenu = ({
58684
58521
  partnerCards,
58685
58522
  featuredHeroCard,
58686
58523
  optixFlowConfig
58687
- }) => /* @__PURE__ */ jsxs("div", { className: "grid min-w-[900px] grid-cols-[2fr_1fr] gap-6", children: [
58524
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid w-[1000px] grid-cols-[2fr_1fr] gap-6", children: [
58688
58525
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58689
58526
  Pressable,
58690
58527
  {
@@ -58739,86 +58576,249 @@ var PartnersMenu = ({
58739
58576
  card.title
58740
58577
  )) })
58741
58578
  ] });
58742
- var ResourcesMenu = ({
58743
- resourceItems,
58744
- topicGroups,
58745
- featuredHeroCard
58746
- }) => /* @__PURE__ */ jsxs("div", { className: "grid min-w-[1000px] grid-cols-[280px_1fr_220px] gap-6", children: [
58747
- featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: /* @__PURE__ */ jsxs(
58748
- Pressable,
58749
- {
58750
- href: featuredHeroCard.href,
58751
- className: cn(
58752
- "group flex h-full flex-col overflow-hidden rounded-lg text-primary-foreground",
58753
- featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58754
- ),
58755
- children: [
58756
- /* @__PURE__ */ jsx("div", { className: "relative aspect-[4/3] w-full overflow-hidden", children: /* @__PURE__ */ jsx(
58757
- Img,
58579
+ var MOBILE_BREAKPOINT = 1024;
58580
+ var NavbarEnterpriseMega = ({
58581
+ className,
58582
+ containerClassName,
58583
+ navClassName,
58584
+ navigationMenuClassName,
58585
+ actionsClassName,
58586
+ logoClassName,
58587
+ logo = {
58588
+ url: "/",
58589
+ src: logoPlaceholders.logoMark
58590
+ },
58591
+ logoSlot,
58592
+ menuLinks,
58593
+ actions,
58594
+ actionsSlot,
58595
+ layoutVariant = "fullScreenContainerizedLinks",
58596
+ background,
58597
+ spacing,
58598
+ pattern,
58599
+ patternOpacity,
58600
+ optixFlowConfig
58601
+ }) => {
58602
+ const [open, setOpen] = useState(false);
58603
+ useEffect(() => {
58604
+ const handleResize = () => {
58605
+ if (window.innerWidth > MOBILE_BREAKPOINT) {
58606
+ setOpen(false);
58607
+ }
58608
+ };
58609
+ handleResize();
58610
+ window.addEventListener("resize", handleResize);
58611
+ return () => window.removeEventListener("resize", handleResize);
58612
+ }, []);
58613
+ useEffect(() => {
58614
+ document.body.style.overflow = open ? "hidden" : "auto";
58615
+ }, [open]);
58616
+ const handleMobileMenu = () => {
58617
+ setOpen(!open);
58618
+ };
58619
+ const renderActions = useMemo$1(() => {
58620
+ if (actionsSlot) return actionsSlot;
58621
+ if (!actions || actions.length === 0) return null;
58622
+ return actions.map((action, index) => {
58623
+ const {
58624
+ label,
58625
+ icon,
58626
+ iconAfter,
58627
+ children,
58628
+ className: actionClassName,
58629
+ ...pressableProps
58630
+ } = action;
58631
+ return /* @__PURE__ */ jsx(Pressable, { className: actionClassName, ...pressableProps, children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
58632
+ icon,
58633
+ label,
58634
+ iconAfter
58635
+ ] }) }, index);
58636
+ });
58637
+ }, [actionsSlot, actions]);
58638
+ const {
58639
+ sectionClasses,
58640
+ containerWrapperClasses,
58641
+ innerContainerClasses,
58642
+ navWrapperClasses,
58643
+ sectionContainerClassName,
58644
+ sectionContainerMaxWidth,
58645
+ spacingOverride
58646
+ } = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
58647
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
58648
+ /* @__PURE__ */ jsx(
58649
+ Section,
58650
+ {
58651
+ background,
58652
+ spacing: spacingOverride ?? spacing,
58653
+ className: cn(
58654
+ "pointer-events-auto fixed top-0 z-999 flex w-full items-center justify-center",
58655
+ sectionClasses
58656
+ ),
58657
+ pattern,
58658
+ patternOpacity,
58659
+ containerClassName: sectionContainerClassName,
58660
+ containerMaxWidth: sectionContainerMaxWidth,
58661
+ children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxs(
58662
+ "nav",
58758
58663
  {
58759
- src: featuredHeroCard.image,
58760
- alt: featuredHeroCard.title,
58761
- className: "h-full w-full object-cover invert"
58664
+ className: cn(
58665
+ "flex h-16 items-center justify-between gap-8",
58666
+ navClassName
58667
+ ),
58668
+ children: [
58669
+ /* @__PURE__ */ jsx(
58670
+ NavbarLogo,
58671
+ {
58672
+ logo,
58673
+ logoSlot,
58674
+ logoClassName,
58675
+ optixFlowConfig
58676
+ }
58677
+ ),
58678
+ /* @__PURE__ */ jsx(
58679
+ NavigationMenu,
58680
+ {
58681
+ className: cn(
58682
+ "hidden lg:flex [&>div:last-child]:left-1/2 [&>div:last-child]:-translate-x-1/2",
58683
+ navigationMenuClassName
58684
+ ),
58685
+ viewport: true,
58686
+ children: /* @__PURE__ */ jsx(NavigationMenuList, { children: menuLinks?.map((item, index) => /* @__PURE__ */ jsx(
58687
+ DesktopMenuItem2,
58688
+ {
58689
+ item,
58690
+ index,
58691
+ optixFlowConfig
58692
+ },
58693
+ `desktop-link-${index}`
58694
+ )) })
58695
+ }
58696
+ ),
58697
+ /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-3", actionsClassName), children: [
58698
+ /* @__PURE__ */ jsx("div", { className: "hidden lg:flex lg:items-center lg:gap-3", children: renderActions }),
58699
+ /* @__PURE__ */ jsx("div", { className: "lg:hidden", children: /* @__PURE__ */ jsx(
58700
+ Pressable,
58701
+ {
58702
+ className: "size-11",
58703
+ variant: "ghost",
58704
+ size: "icon",
58705
+ asButton: true,
58706
+ onClick: handleMobileMenu,
58707
+ children: open ? /* @__PURE__ */ jsx(
58708
+ DynamicIcon,
58709
+ {
58710
+ name: "lucide/x",
58711
+ size: 22,
58712
+ className: "stroke-foreground"
58713
+ }
58714
+ ) : /* @__PURE__ */ jsx(
58715
+ DynamicIcon,
58716
+ {
58717
+ name: "lucide/menu",
58718
+ size: 22,
58719
+ className: "stroke-foreground"
58720
+ }
58721
+ )
58722
+ }
58723
+ ) })
58724
+ ] })
58725
+ ]
58762
58726
  }
58763
- ) }),
58764
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col p-5", children: [
58765
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 text-base font-semibold", children: [
58766
- featuredHeroCard.title,
58767
- /* @__PURE__ */ jsx(
58768
- DynamicIcon,
58769
- {
58770
- name: "lucide/arrow-right",
58771
- size: 16,
58772
- className: "transition-transform group-hover:translate-x-1"
58773
- }
58774
- )
58775
- ] }),
58776
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-sm leading-relaxed", children: featuredHeroCard.description })
58777
- ] })
58778
- ]
58779
- }
58780
- ) }),
58781
- resourceItems.length > 0 && /* @__PURE__ */ jsxs("div", { className: "col-span-1", children: [
58782
- /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: "Resources" }) }),
58783
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-2 gap-3", children: resourceItems.map((resource) => /* @__PURE__ */ jsxs(
58784
- NavigationMenuLink,
58785
- {
58786
- href: resource.href,
58787
- className: "group col-span-1 !flex !w-full items-start gap-3 rounded-lg border border-border p-3 hover:bg-muted",
58788
- children: [
58789
- /* @__PURE__ */ jsx(
58790
- DynamicIcon,
58791
- {
58792
- name: resource.icon,
58793
- size: 18,
58794
- className: "mt-0.5 shrink-0"
58795
- }
58796
- ),
58797
- /* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1", children: [
58798
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: resource.title }),
58799
- /* @__PURE__ */ jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: resource.description })
58800
- ] })
58801
- ]
58802
- },
58803
- resource.id
58804
- )) })
58805
- ] }),
58806
- topicGroups.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-1", children: topicGroups.map((group) => /* @__PURE__ */ jsxs("div", { className: "mb-5 last:mb-0", children: [
58807
- /* @__PURE__ */ jsx("div", { className: "mb-3 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: group.title }) }),
58808
- /* @__PURE__ */ jsx("div", { className: "space-y-1.5", children: group.topics.map((topic) => /* @__PURE__ */ jsxs(
58809
- NavigationMenuLink,
58810
- {
58811
- href: topic.href,
58812
- className: "group !flex !w-full items-center gap-2 rounded-lg p-2 hover:bg-muted",
58813
- children: [
58814
- /* @__PURE__ */ jsx(DynamicIcon, { name: topic.icon, size: 14, className: "shrink-0" }),
58815
- /* @__PURE__ */ jsx("span", { className: "min-w-0 flex-1 text-sm font-medium", children: topic.title })
58816
- ]
58817
- },
58818
- topic.id
58819
- )) })
58820
- ] }, group.title)) })
58821
- ] });
58727
+ ) }) }) })
58728
+ }
58729
+ ),
58730
+ /* @__PURE__ */ jsx(
58731
+ MobileNavigationMenu,
58732
+ {
58733
+ open,
58734
+ setOpen,
58735
+ menuLinks: menuLinks ?? [],
58736
+ actionsClassName,
58737
+ actions,
58738
+ actionsSlot,
58739
+ optixFlowConfig
58740
+ }
58741
+ )
58742
+ ] });
58743
+ };
58744
+ var DesktopMenuItem2 = ({
58745
+ item,
58746
+ index,
58747
+ optixFlowConfig
58748
+ }) => {
58749
+ const hasDropdown = Boolean(item.layout);
58750
+ const effectiveLayout = item.layout || "solutions-with-platform";
58751
+ if (hasDropdown) {
58752
+ return /* @__PURE__ */ jsxs(NavigationMenuItem, { value: `${index}`, children: [
58753
+ /* @__PURE__ */ jsx(NavigationMenuTrigger, { className: "h-auto bg-transparent px-3 py-2 font-normal hover:bg-muted focus:bg-muted data-[state=open]:bg-muted/50", children: item.label }),
58754
+ /* @__PURE__ */ jsx(NavigationMenuContent, { className: "!rounded-xl !border-0 !p-6", children: renderDropdownContent(
58755
+ { ...item, layout: effectiveLayout },
58756
+ optixFlowConfig
58757
+ ) })
58758
+ ] }, `desktop-menu-item-${index}`);
58759
+ }
58760
+ return /* @__PURE__ */ jsx(NavigationMenuItem, { value: `${index}`, children: /* @__PURE__ */ jsx(
58761
+ NavigationMenuLink,
58762
+ {
58763
+ href: item.href,
58764
+ className: "h-auto bg-transparent px-3 py-2 font-normal hover:bg-muted focus:bg-muted",
58765
+ children: item.label
58766
+ }
58767
+ ) }, `desktop-menu-item-${index}`);
58768
+ };
58769
+ var renderDropdownContent = (item, optixFlowConfig) => {
58770
+ switch (item.layout) {
58771
+ case "solutions-with-platform":
58772
+ return /* @__PURE__ */ jsx(
58773
+ SolutionsMenu,
58774
+ {
58775
+ solutionCards: item.solutionCards ?? [],
58776
+ platformItems: item.platformItems ?? [],
58777
+ featuredHeroCard: item.featuredHeroCard,
58778
+ optixFlowConfig
58779
+ }
58780
+ );
58781
+ case "products-categorized":
58782
+ return /* @__PURE__ */ jsx(
58783
+ ProductsMenu,
58784
+ {
58785
+ productCategories: item.productCategories ?? [],
58786
+ featuredHeroCard: item.featuredHeroCard,
58787
+ optixFlowConfig
58788
+ }
58789
+ );
58790
+ case "features-with-locations":
58791
+ return /* @__PURE__ */ jsx(
58792
+ GlobalMenu,
58793
+ {
58794
+ featureCategories: item.featureCategories ?? [],
58795
+ regions: item.regions ?? [],
58796
+ featuredHeroCard: item.featuredHeroCard,
58797
+ optixFlowConfig
58798
+ }
58799
+ );
58800
+ case "partners-promotional":
58801
+ return /* @__PURE__ */ jsx(
58802
+ PartnersMenu,
58803
+ {
58804
+ partnerCards: item.partnerCards ?? [],
58805
+ featuredHeroCard: item.featuredHeroCard,
58806
+ optixFlowConfig
58807
+ }
58808
+ );
58809
+ case "resources-with-topics":
58810
+ return /* @__PURE__ */ jsx(
58811
+ ResourcesMenu,
58812
+ {
58813
+ resourceItems: item.resourceItems ?? [],
58814
+ topicGroups: item.topicGroups ?? [],
58815
+ featuredHeroCard: item.featuredHeroCard
58816
+ }
58817
+ );
58818
+ default:
58819
+ return null;
58820
+ }
58821
+ };
58822
58822
  var renderMobileDropdownContent = (item) => {
58823
58823
  switch (item.layout) {
58824
58824
  case "solutions-with-platform":
@@ -63210,8 +63210,11 @@ var NavbarIconLinks = ({
63210
63210
  /* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx(
63211
63211
  Pressable,
63212
63212
  {
63213
- asButton: true,
63214
- className: actionClassName,
63213
+ className: cn(
63214
+ "flex h-10 w-10 items-center justify-center rounded-md transition-colors",
63215
+ "text-muted-foreground hover:bg-accent hover:text-accent-foreground",
63216
+ actionClassName
63217
+ ),
63215
63218
  ...pressableProps,
63216
63219
  children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
63217
63220
  icon,
@@ -63248,16 +63251,87 @@ var NavbarIconLinks = ({
63248
63251
  patternOpacity,
63249
63252
  containerClassName: sectionContainerClassName,
63250
63253
  containerMaxWidth: sectionContainerMaxWidth,
63251
- children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxs(
63252
- "nav",
63253
- {
63254
- className: cn(
63255
- "flex items-center justify-between py-3",
63256
- navClassName
63257
- ),
63258
- children: [
63259
- /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-6", children: [
63254
+ children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsxs("div", { className: innerContainerClasses, children: [
63255
+ /* @__PURE__ */ jsxs(
63256
+ "nav",
63257
+ {
63258
+ className: cn(
63259
+ "hidden items-center justify-between py-3 lg:flex",
63260
+ navClassName
63261
+ ),
63262
+ children: [
63263
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-6", children: [
63264
+ /* @__PURE__ */ jsx(
63265
+ NavbarLogo,
63266
+ {
63267
+ logo,
63268
+ logoSlot,
63269
+ logoClassName,
63270
+ optixFlowConfig
63271
+ }
63272
+ ),
63273
+ /* @__PURE__ */ jsx(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx(
63274
+ NavigationMenu,
63275
+ {
63276
+ className: cn("flex", navigationMenuClassName),
63277
+ children: /* @__PURE__ */ jsx(NavigationMenuList, { className: "gap-1", children: navItemsSlot ? navItemsSlot : renderNavItems?.map((item, index) => /* @__PURE__ */ jsx(NavigationMenuItem, { children: /* @__PURE__ */ jsxs(Tooltip, { children: [
63278
+ /* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxs(
63279
+ Pressable,
63280
+ {
63281
+ href: item.url,
63282
+ onClick: () => setActiveItem(item.title),
63283
+ className: cn(
63284
+ "flex h-10 w-10 items-center justify-center rounded-md transition-colors",
63285
+ activeItem === item.title ? "bg-accent text-accent-foreground" : "text-muted-foreground hover:bg-accent hover:text-accent-foreground"
63286
+ ),
63287
+ children: [
63288
+ /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20 }),
63289
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: item.title })
63290
+ ]
63291
+ }
63292
+ ) }) }),
63293
+ /* @__PURE__ */ jsx(TooltipContent, { side: "bottom", children: /* @__PURE__ */ jsx("p", { children: item.title }) })
63294
+ ] }) }, index)) })
63295
+ }
63296
+ ) })
63297
+ ] }),
63260
63298
  /* @__PURE__ */ jsx(
63299
+ "div",
63300
+ {
63301
+ className: cn(
63302
+ "flex items-center gap-2",
63303
+ actionsClassName
63304
+ ),
63305
+ children: renderAuthActions
63306
+ }
63307
+ )
63308
+ ]
63309
+ }
63310
+ ),
63311
+ /* @__PURE__ */ jsx("div", { className: "block py-3 lg:hidden", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
63312
+ /* @__PURE__ */ jsx(
63313
+ NavbarLogo,
63314
+ {
63315
+ logo,
63316
+ logoSlot,
63317
+ logoClassName,
63318
+ optixFlowConfig
63319
+ }
63320
+ ),
63321
+ /* @__PURE__ */ jsxs(Sheet, { open: isOpen, onOpenChange: setIsOpen, children: [
63322
+ /* @__PURE__ */ jsx(SheetTrigger, { asChild: true, children: /* @__PURE__ */ jsx(
63323
+ Pressable,
63324
+ {
63325
+ variant: "outline",
63326
+ size: "icon",
63327
+ asButton: true,
63328
+ onClick: () => {
63329
+ },
63330
+ children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 16 })
63331
+ }
63332
+ ) }),
63333
+ /* @__PURE__ */ jsxs(SheetContent, { className: "overflow-y-auto", children: [
63334
+ /* @__PURE__ */ jsx(SheetHeader, { children: /* @__PURE__ */ jsx(SheetTitle, { children: /* @__PURE__ */ jsx(
63261
63335
  NavbarLogo,
63262
63336
  {
63263
63337
  logo,
@@ -63265,98 +63339,45 @@ var NavbarIconLinks = ({
63265
63339
  logoClassName,
63266
63340
  optixFlowConfig
63267
63341
  }
63268
- ),
63269
- /* @__PURE__ */ jsx(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx(
63270
- NavigationMenu,
63271
- {
63272
- className: cn("hidden lg:flex", navigationMenuClassName),
63273
- children: /* @__PURE__ */ jsx(NavigationMenuList, { className: "gap-1", children: navItemsSlot ? navItemsSlot : renderNavItems?.map((item, index) => /* @__PURE__ */ jsx(NavigationMenuItem, { children: /* @__PURE__ */ jsxs(Tooltip, { children: [
63274
- /* @__PURE__ */ jsx(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxs(
63275
- Pressable,
63276
- {
63277
- href: item.url,
63278
- onClick: () => setActiveItem(item.title),
63279
- className: cn(
63280
- "flex h-10 w-10 items-center justify-center rounded-md transition-colors",
63281
- activeItem === item.title ? "bg-accent text-accent-foreground" : "text-muted-foreground hover:bg-accent hover:text-accent-foreground"
63282
- ),
63283
- children: [
63284
- /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20 }),
63285
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: item.title })
63286
- ]
63287
- }
63288
- ) }) }),
63289
- /* @__PURE__ */ jsx(TooltipContent, { side: "bottom", children: /* @__PURE__ */ jsx("p", { children: item.title }) })
63290
- ] }) }, index)) })
63291
- }
63292
- ) })
63293
- ] }),
63294
- /* @__PURE__ */ jsx(
63295
- "div",
63296
- {
63297
- className: cn(
63298
- "hidden items-center gap-2 lg:flex",
63299
- actionsClassName
63300
- ),
63301
- children: renderAuthActions
63302
- }
63303
- ),
63304
- /* @__PURE__ */ jsxs(Sheet, { open: isOpen, onOpenChange: setIsOpen, children: [
63305
- /* @__PURE__ */ jsx(SheetTrigger, { asChild: true, className: "lg:hidden", children: /* @__PURE__ */ jsxs(
63306
- Pressable,
63307
- {
63308
- variant: "ghost",
63309
- size: "icon",
63310
- asButton: true,
63311
- onClick: () => {
63312
- },
63313
- children: [
63314
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
63315
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
63316
- ]
63317
- }
63318
- ) }),
63319
- /* @__PURE__ */ jsxs(SheetContent, { side: "right", className: "w-[280px]", children: [
63320
- /* @__PURE__ */ jsx(SheetTitle, { className: "sr-only", children: "Navigation Menu" }),
63321
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 pt-8", children: [
63322
- navItemsSlot ? navItemsSlot : renderNavItems?.map((item, index) => /* @__PURE__ */ jsxs(
63323
- Pressable,
63324
- {
63325
- href: item.url,
63326
- onClick: () => {
63327
- setActiveItem(item.title);
63328
- setIsOpen(false);
63329
- },
63330
- className: cn(
63331
- "flex items-center gap-3 rounded-md px-3 py-2 text-sm font-medium transition-colors",
63332
- activeItem === item.title ? "bg-accent text-accent-foreground" : "text-muted-foreground hover:bg-accent hover:text-accent-foreground"
63333
- ),
63334
- children: [
63335
- /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 18 }),
63336
- item.title
63337
- ]
63338
- },
63339
- index
63340
- )),
63341
- /* @__PURE__ */ jsx("div", { className: "mt-4 border-t pt-4", children: authActions?.map((action, index) => /* @__PURE__ */ jsxs(
63342
- Pressable,
63343
- {
63344
- href: action.href,
63345
- className: "flex items-center gap-3 rounded-md px-3 py-2 text-sm font-medium text-muted-foreground hover:bg-accent hover:text-accent-foreground",
63346
- onClick: () => setIsOpen(false),
63347
- children: [
63348
- action.icon,
63349
- action.label
63350
- ]
63342
+ ) }) }),
63343
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6 p-4", children: [
63344
+ /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-4", children: navItemsSlot ? navItemsSlot : renderNavItems?.map((item, index) => /* @__PURE__ */ jsxs(
63345
+ Pressable,
63346
+ {
63347
+ href: item.url,
63348
+ onClick: () => {
63349
+ setActiveItem(item.title);
63350
+ setIsOpen(false);
63351
63351
  },
63352
- index
63353
- )) })
63354
- ] })
63352
+ className: cn(
63353
+ "flex items-center gap-3 rounded-md px-3 py-2 text-sm font-medium transition-colors",
63354
+ activeItem === item.title ? "bg-accent text-accent-foreground" : "text-muted-foreground hover:bg-accent hover:text-accent-foreground"
63355
+ ),
63356
+ children: [
63357
+ /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 18 }),
63358
+ item.title
63359
+ ]
63360
+ },
63361
+ index
63362
+ )) }),
63363
+ /* @__PURE__ */ jsx("div", { className: "border-t pt-4", children: /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-3", children: authActions?.map((action, index) => /* @__PURE__ */ jsxs(
63364
+ Pressable,
63365
+ {
63366
+ href: action.href,
63367
+ className: "flex items-center gap-3 rounded-md px-3 py-2 text-sm font-medium text-muted-foreground hover:bg-accent hover:text-accent-foreground",
63368
+ onClick: () => setIsOpen(false),
63369
+ children: [
63370
+ action.icon,
63371
+ action.label
63372
+ ]
63373
+ },
63374
+ index
63375
+ )) }) })
63355
63376
  ] })
63356
63377
  ] })
63357
- ]
63358
- }
63359
- ) }) }) })
63378
+ ] })
63379
+ ] }) })
63380
+ ] }) }) })
63360
63381
  }
63361
63382
  );
63362
63383
  };