@opensite/ui 0.9.6 → 0.9.7

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
@@ -57777,61 +57777,126 @@ var DesktopMenuItem = ({
57777
57777
  ] }) })
57778
57778
  ] }, `desktop-menu-item-${index}`);
57779
57779
  }
57780
- if (layout === "simple-grid" && link.links) {
57780
+ if (layout === "simple-grid" && (link.links || link.dropdownGroups)) {
57781
+ const allLinks = link.dropdownGroups ? link.dropdownGroups.flatMap((group) => group.links || []) : link.links || [];
57781
57782
  return /* @__PURE__ */ jsxs(NavigationMenuItem, { children: [
57782
57783
  /* @__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: link.label }),
57783
- /* @__PURE__ */ jsx(NavigationMenuContent, { className: "min-w-[700px] p-6", children: /* @__PURE__ */ jsx("div", { className: "grid auto-rows-fr grid-cols-1 gap-4 sm:grid-cols-2", children: link.links.map((item, itemIndex) => /* @__PURE__ */ jsxs(
57784
- NavigationMenuLink,
57785
- {
57786
- href: getLinkUrl(item),
57787
- className: "flex w-full flex-row items-start gap-4 rounded-lg border border-input bg-background p-4 hover:bg-muted hover:text-foreground",
57788
- children: [
57789
- item.image && /* @__PURE__ */ jsx("div", { className: "h-20 w-20 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
57790
- Img,
57791
- {
57792
- src: item.image,
57793
- alt: typeof item.label === "string" ? item.label : "Menu item",
57794
- className: "h-full w-full object-cover object-center",
57795
- optixFlowConfig
57796
- }
57797
- ) }),
57798
- !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: item.icon ? item.icon : item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 20 }) : null }),
57799
- /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
57800
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
57801
- item.description && /* @__PURE__ */ jsx("div", { className: "text-sm font-normal text-muted-foreground", children: item.description })
57802
- ] })
57803
- ]
57804
- },
57805
- `grid-item-${itemIndex}`
57806
- )) }) })
57784
+ /* @__PURE__ */ jsx(NavigationMenuContent, { className: "min-w-[700px] p-6", children: link.dropdownGroups ? (
57785
+ // Render with group headers
57786
+ /* @__PURE__ */ jsx("div", { className: "space-y-6", children: link.dropdownGroups.map((group, groupIndex) => /* @__PURE__ */ jsxs("div", { children: [
57787
+ group.label && /* @__PURE__ */ jsx("div", { className: "mb-3 text-xs font-medium tracking-wider uppercase text-muted-foreground", children: group.label }),
57788
+ /* @__PURE__ */ jsx("div", { className: "grid auto-rows-fr grid-cols-1 gap-4 sm:grid-cols-2", children: (group.links || []).map((item, itemIndex) => /* @__PURE__ */ jsxs(
57789
+ NavigationMenuLink,
57790
+ {
57791
+ href: getLinkUrl(item),
57792
+ className: "flex w-full flex-row items-start gap-4 rounded-lg border border-input bg-background p-4 hover:bg-muted hover:text-foreground",
57793
+ children: [
57794
+ item.image && /* @__PURE__ */ jsx("div", { className: "h-20 w-20 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
57795
+ Img,
57796
+ {
57797
+ src: item.image,
57798
+ alt: typeof item.label === "string" ? item.label : "Menu item",
57799
+ className: "h-full w-full object-cover object-center",
57800
+ optixFlowConfig
57801
+ }
57802
+ ) }),
57803
+ !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: item.icon ? item.icon : item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 20 }) : null }),
57804
+ /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
57805
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
57806
+ item.description && /* @__PURE__ */ jsx("div", { className: "text-sm font-normal text-muted-foreground", children: item.description })
57807
+ ] })
57808
+ ]
57809
+ },
57810
+ `grid-item-${groupIndex}-${itemIndex}`
57811
+ )) })
57812
+ ] }, `group-${groupIndex}`)) })
57813
+ ) : (
57814
+ // Render without groups
57815
+ /* @__PURE__ */ jsx("div", { className: "grid auto-rows-fr grid-cols-1 gap-4 sm:grid-cols-2", children: allLinks.map((item, itemIndex) => /* @__PURE__ */ jsxs(
57816
+ NavigationMenuLink,
57817
+ {
57818
+ href: getLinkUrl(item),
57819
+ className: "flex w-full flex-row items-start gap-4 rounded-lg border border-input bg-background p-4 hover:bg-muted hover:text-foreground",
57820
+ children: [
57821
+ item.image && /* @__PURE__ */ jsx("div", { className: "h-20 w-20 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
57822
+ Img,
57823
+ {
57824
+ src: item.image,
57825
+ alt: typeof item.label === "string" ? item.label : "Menu item",
57826
+ className: "h-full w-full object-cover object-center",
57827
+ optixFlowConfig
57828
+ }
57829
+ ) }),
57830
+ !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-md border border-border bg-muted/40 text-muted-foreground", children: item.icon ? item.icon : item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 20 }) : null }),
57831
+ /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
57832
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
57833
+ item.description && /* @__PURE__ */ jsx("div", { className: "text-sm font-normal text-muted-foreground", children: item.description })
57834
+ ] })
57835
+ ]
57836
+ },
57837
+ `grid-item-${itemIndex}`
57838
+ )) })
57839
+ ) })
57807
57840
  ] }, `desktop-menu-item-${index}`);
57808
57841
  }
57809
- if (layout === "list-with-icons" && link.links) {
57842
+ if (layout === "list-with-icons" && (link.links || link.dropdownGroups)) {
57843
+ const allLinks = link.dropdownGroups ? link.dropdownGroups.flatMap((group) => group.links || []) : link.links || [];
57810
57844
  return /* @__PURE__ */ jsxs(NavigationMenuItem, { children: [
57811
57845
  /* @__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: link.label }),
57812
- /* @__PURE__ */ jsx(NavigationMenuContent, { className: "min-w-[400px] p-4", children: /* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1", children: link.links.map((item, itemIndex) => /* @__PURE__ */ jsx("li", { className: "w-full", children: /* @__PURE__ */ jsxs(
57813
- NavigationMenuLink,
57814
- {
57815
- href: getLinkUrl(item),
57816
- className: "flex w-full items-start gap-3 rounded-lg p-3 hover:bg-muted",
57817
- children: [
57818
- item.image && /* @__PURE__ */ jsx("div", { className: "h-12 w-12 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
57819
- Img,
57820
- {
57821
- src: item.image,
57822
- alt: typeof item.label === "string" ? item.label : "Menu item",
57823
- className: "h-full w-full object-cover object-center",
57824
- optixFlowConfig
57825
- }
57826
- ) }),
57827
- !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted/40 text-muted-foreground", children: item.icon ? item.icon : item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 }) : null }),
57828
- /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
57829
- /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
57830
- item.description && /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: item.description })
57831
- ] })
57832
- ]
57833
- }
57834
- ) }, `list-item-${itemIndex}`)) }) })
57846
+ /* @__PURE__ */ jsx(NavigationMenuContent, { className: "min-w-[400px] p-4", children: link.dropdownGroups ? (
57847
+ // Render with group headers
57848
+ /* @__PURE__ */ jsx("div", { className: "space-y-4", children: link.dropdownGroups.map((group, groupIndex) => /* @__PURE__ */ jsxs("div", { children: [
57849
+ group.label && /* @__PURE__ */ jsx("div", { className: "mb-2 text-xs font-medium tracking-wider uppercase text-muted-foreground", children: group.label }),
57850
+ /* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1", children: (group.links || []).map((item, itemIndex) => /* @__PURE__ */ jsx("li", { className: "w-full", children: /* @__PURE__ */ jsxs(
57851
+ NavigationMenuLink,
57852
+ {
57853
+ href: getLinkUrl(item),
57854
+ className: "flex w-full items-start gap-3 rounded-lg p-3 hover:bg-muted",
57855
+ children: [
57856
+ item.image && /* @__PURE__ */ jsx("div", { className: "h-12 w-12 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
57857
+ Img,
57858
+ {
57859
+ src: item.image,
57860
+ alt: typeof item.label === "string" ? item.label : "Menu item",
57861
+ className: "h-full w-full object-cover object-center",
57862
+ optixFlowConfig
57863
+ }
57864
+ ) }),
57865
+ !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted/40 text-muted-foreground", children: item.icon ? item.icon : item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 }) : null }),
57866
+ /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
57867
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
57868
+ item.description && /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: item.description })
57869
+ ] })
57870
+ ]
57871
+ }
57872
+ ) }, `list-item-${groupIndex}-${itemIndex}`)) })
57873
+ ] }, `group-${groupIndex}`)) })
57874
+ ) : (
57875
+ // Render without groups
57876
+ /* @__PURE__ */ jsx("ul", { className: "flex flex-col gap-1", children: allLinks.map((item, itemIndex) => /* @__PURE__ */ jsx("li", { className: "w-full", children: /* @__PURE__ */ jsxs(
57877
+ NavigationMenuLink,
57878
+ {
57879
+ href: getLinkUrl(item),
57880
+ className: "flex w-full items-start gap-3 rounded-lg p-3 hover:bg-muted",
57881
+ children: [
57882
+ item.image && /* @__PURE__ */ jsx("div", { className: "h-12 w-12 shrink-0 overflow-hidden rounded-md border border-border", children: /* @__PURE__ */ jsx(
57883
+ Img,
57884
+ {
57885
+ src: item.image,
57886
+ alt: typeof item.label === "string" ? item.label : "Menu item",
57887
+ className: "h-full w-full object-cover object-center",
57888
+ optixFlowConfig
57889
+ }
57890
+ ) }),
57891
+ !item.image && (item.icon || item.iconName) && /* @__PURE__ */ jsx("div", { className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-muted/40 text-muted-foreground", children: item.icon ? item.icon : item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 }) : null }),
57892
+ /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
57893
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: item.label }),
57894
+ item.description && /* @__PURE__ */ jsx("div", { className: "text-xs text-muted-foreground", children: item.description })
57895
+ ] })
57896
+ ]
57897
+ }
57898
+ ) }, `list-item-${itemIndex}`)) })
57899
+ ) })
57835
57900
  ] }, `desktop-menu-item-${index}`);
57836
57901
  }
57837
57902
  if (link.href) {
@@ -57908,7 +57973,9 @@ var NavbarMegaMenu = ({
57908
57973
  const [open, setOpen] = useState(false);
57909
57974
  const [submenuIndex, setSubmenuIndex] = useState(null);
57910
57975
  const activeSubmenu = submenuIndex !== null ? menuLinks?.[submenuIndex] : null;
57911
- const hasDropdownItems = (link) => Boolean(link.links?.length || link.dropdownGroups?.length);
57976
+ const hasDropdownItems = (link) => Boolean(
57977
+ link.links && link.links.length > 0 || link.dropdownGroups && link.dropdownGroups.length > 0
57978
+ );
57912
57979
  const renderActions = () => {
57913
57980
  if (!actions || actions.length === 0) return null;
57914
57981
  return actions.map((action, index) => {
@@ -58286,7 +58353,7 @@ var DesktopMenuItem2 = ({
58286
58353
  if (hasDropdown) {
58287
58354
  return /* @__PURE__ */ jsxs(NavigationMenuItem, { value: `${index}`, children: [
58288
58355
  /* @__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 }),
58289
- /* @__PURE__ */ jsx(NavigationMenuContent, { className: "!rounded-xl !border-0 !p-0", children: /* @__PURE__ */ jsx("div", { className: "w-dvw px-8 pt-6 pb-12", children: /* @__PURE__ */ jsx("div", { className: "container", children: renderDropdownContent(
58356
+ /* @__PURE__ */ jsx(NavigationMenuContent, { className: "!rounded-xl !border-0 !p-0 overflow-visible", children: /* @__PURE__ */ jsx("div", { className: "w-dvw max-w-screen-2xl px-8 pt-6 pb-12", children: /* @__PURE__ */ jsx("div", { className: "container mx-auto", children: renderDropdownContent(
58290
58357
  { ...item, layout: effectiveLayout },
58291
58358
  optixFlowConfig
58292
58359
  ) }) }) })
@@ -58359,7 +58426,7 @@ var SolutionsMenu = ({
58359
58426
  platformItems,
58360
58427
  featuredHeroCard,
58361
58428
  optixFlowConfig
58362
- }) => /* @__PURE__ */ jsxs("div", { className: "grid gap-8 sm:grid-cols-2", children: [
58429
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid max-w-full gap-8 sm:grid-cols-2", children: [
58363
58430
  featuredHeroCard && /* @__PURE__ */ jsx(
58364
58431
  Pressable,
58365
58432
  {
@@ -58368,23 +58435,23 @@ var SolutionsMenu = ({
58368
58435
  "group relative flex h-full flex-row overflow-hidden rounded-lg px-0 pt-8 text-primary-foreground lg:rounded-xl lg:px-6",
58369
58436
  featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58370
58437
  ),
58371
- children: /* @__PURE__ */ jsxs("div", { className: "relative flex w-full flex-col space-y-12 text-left md:space-y-8 lg:w-full lg:flex-row lg:justify-between lg:space-y-0 lg:space-x-6 xl:space-x-8", children: [
58372
- /* @__PURE__ */ jsxs("div", { className: "relative flex flex-col px-6 lg:mb-6 lg:px-0", children: [
58373
- featuredHeroCard.subtitle && /* @__PURE__ */ jsx("span", { className: "mb-6 text-xs font-medium tracking-wider uppercase md:mb-8", children: featuredHeroCard.subtitle }),
58374
- /* @__PURE__ */ jsxs("div", { className: "mt-auto flex items-center space-x-1 text-xs", children: [
58438
+ children: /* @__PURE__ */ jsxs("div", { className: "relative flex w-full flex-col space-y-8 text-left md:space-y-6 lg:w-full lg:flex-row lg:justify-between lg:space-y-0 lg:space-x-6 xl:space-x-8", children: [
58439
+ /* @__PURE__ */ jsxs("div", { className: "relative flex flex-col px-6 lg:mb-6 lg:px-0 lg:flex-1", children: [
58440
+ featuredHeroCard.subtitle && /* @__PURE__ */ jsx("span", { className: "mb-4 text-xs font-medium tracking-wider uppercase md:mb-6", children: featuredHeroCard.subtitle }),
58441
+ /* @__PURE__ */ jsxs("div", { className: "mt-auto flex items-center space-x-1 text-base font-semibold", children: [
58375
58442
  featuredHeroCard.title,
58376
58443
  /* @__PURE__ */ jsx(
58377
58444
  DynamicIcon,
58378
58445
  {
58379
58446
  name: "lucide/arrow-right",
58380
- size: 16,
58447
+ size: 18,
58381
58448
  className: "ml-1 transition-transform group-hover:translate-x-1"
58382
58449
  }
58383
58450
  )
58384
58451
  ] }),
58385
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-xs text-primary-foreground/85", children: featuredHeroCard.description })
58452
+ /* @__PURE__ */ jsx("p", { className: "mt-3 text-sm leading-relaxed text-primary-foreground/85", children: featuredHeroCard.description })
58386
58453
  ] }),
58387
- /* @__PURE__ */ jsx("div", { className: "relative aspect-2/1 overflow-clip rounded-t pl-6 lg:max-w-80 lg:pl-0 xl:max-w-[30rem]", children: /* @__PURE__ */ jsx(
58454
+ /* @__PURE__ */ jsx("div", { className: "relative aspect-2/1 overflow-clip rounded-t pl-6 lg:max-w-64 lg:shrink-0 lg:pl-0 xl:max-w-72", children: /* @__PURE__ */ jsx(
58388
58455
  Img,
58389
58456
  {
58390
58457
  src: featuredHeroCard.image,
@@ -58398,11 +58465,11 @@ var SolutionsMenu = ({
58398
58465
  ),
58399
58466
  platformItems.length > 0 && /* @__PURE__ */ jsxs("div", { className: "order-last mt-3 sm:order-0 sm:mt-0 sm:py-2 md:p-6", children: [
58400
58467
  /* @__PURE__ */ jsx("div", { className: "mb-4 text-left leading-none md:col-span-2 lg:col-span-4 lg:mb-6", children: /* @__PURE__ */ jsx("strong", { className: "text-left text-xs font-medium tracking-wider text-muted-foreground uppercase", children: "Developer Platform" }) }),
58401
- /* @__PURE__ */ jsx("div", { className: "grid gap-4 lg:grid-cols-2", children: platformItems.map((technology) => /* @__PURE__ */ jsxs(
58468
+ /* @__PURE__ */ jsx("div", { className: "grid w-full gap-4 lg:grid-cols-2", children: platformItems.map((technology) => /* @__PURE__ */ jsxs(
58402
58469
  NavigationMenuLink,
58403
58470
  {
58404
58471
  href: technology.href,
58405
- className: "group flex flex-row items-center gap-4",
58472
+ className: "group flex w-full flex-row items-center gap-4 hover:bg-muted rounded-lg p-2 -ml-2",
58406
58473
  children: [
58407
58474
  /* @__PURE__ */ jsx(DynamicIcon, { name: technology.icon, size: 16 }),
58408
58475
  /* @__PURE__ */ jsx("div", { className: "flex-1 text-sm font-medium", children: technology.title }),
@@ -58419,10 +58486,10 @@ var SolutionsMenu = ({
58419
58486
  technology.id
58420
58487
  )) })
58421
58488
  ] }),
58422
- solutionCards.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-full grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-4 lg:gap-8", children: solutionCards.map((solution) => /* @__PURE__ */ jsxs(
58489
+ solutionCards.length > 0 && /* @__PURE__ */ jsx("div", { className: "col-span-full grid w-full grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-4 lg:gap-8", children: solutionCards.map((solution) => /* @__PURE__ */ jsxs(
58423
58490
  "div",
58424
58491
  {
58425
- className: "rounded-md border border-border p-5",
58492
+ className: "flex flex-col rounded-md border border-border p-5",
58426
58493
  children: [
58427
58494
  /* @__PURE__ */ jsx("div", { className: "border-b border-border pb-4", children: /* @__PURE__ */ jsxs(
58428
58495
  Pressable,
@@ -58445,11 +58512,11 @@ var SolutionsMenu = ({
58445
58512
  ]
58446
58513
  }
58447
58514
  ) }),
58448
- /* @__PURE__ */ jsx("menu", { className: "mt-6 grid gap-y-4", children: solution.subpages.map((subpage) => /* @__PURE__ */ jsxs(
58515
+ /* @__PURE__ */ jsx("menu", { className: "mt-6 grid w-full gap-y-4", children: solution.subpages.map((subpage) => /* @__PURE__ */ jsxs(
58449
58516
  NavigationMenuLink,
58450
58517
  {
58451
58518
  href: subpage.href,
58452
- className: "group flex flex-row items-center space-x-4 text-left lg:space-x-4 lg:border-0",
58519
+ className: "group flex w-full flex-row items-center space-x-4 text-left hover:bg-muted rounded-lg p-2 -ml-2 lg:space-x-4 lg:border-0",
58453
58520
  children: [
58454
58521
  /* @__PURE__ */ jsx(DynamicIcon, { name: subpage.icon, size: 16 }),
58455
58522
  /* @__PURE__ */ jsx("div", { className: "flex-1 text-sm font-medium", children: subpage.title }),
@@ -58474,7 +58541,7 @@ var ProductsMenu = ({
58474
58541
  productCategories,
58475
58542
  featuredHeroCard,
58476
58543
  optixFlowConfig
58477
- }) => /* @__PURE__ */ jsxs("div", { className: "grid gap-y-12 lg:flex lg:space-x-8", children: [
58544
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid max-w-full gap-y-12 lg:flex lg:space-x-8", children: [
58478
58545
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "w-full shrink-0 lg:max-w-[24rem]", children: /* @__PURE__ */ jsx(
58479
58546
  Pressable,
58480
58547
  {
@@ -58484,7 +58551,7 @@ var ProductsMenu = ({
58484
58551
  featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58485
58552
  ),
58486
58553
  children: /* @__PURE__ */ jsxs("div", { className: "relative z-10 flex w-full flex-col text-left", children: [
58487
- /* @__PURE__ */ jsx("div", { className: "relative flex aspect-2/1 max-h-64 w-full flex-1 justify-center", children: /* @__PURE__ */ jsx(
58554
+ /* @__PURE__ */ jsx("div", { className: "relative flex aspect-2/1 max-h-48 w-full flex-1 justify-center", children: /* @__PURE__ */ jsx(
58488
58555
  Img,
58489
58556
  {
58490
58557
  src: featuredHeroCard.image,
@@ -58494,40 +58561,40 @@ var ProductsMenu = ({
58494
58561
  }
58495
58562
  ) }),
58496
58563
  /* @__PURE__ */ jsxs("div", { className: "relative z-20 flex flex-col rounded-b-xl bg-primary p-6", children: [
58497
- /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-1 text-xs", children: [
58564
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-1 text-base font-semibold", children: [
58498
58565
  featuredHeroCard.title,
58499
58566
  /* @__PURE__ */ jsx(
58500
58567
  DynamicIcon,
58501
58568
  {
58502
58569
  name: "lucide/arrow-right",
58503
- size: 16,
58570
+ size: 18,
58504
58571
  className: "ml-1 transition-transform group-hover:translate-x-1"
58505
58572
  }
58506
58573
  )
58507
58574
  ] }),
58508
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-xs text-primary-foreground/70", children: featuredHeroCard.description })
58575
+ /* @__PURE__ */ jsx("p", { className: "mt-3 text-sm leading-relaxed text-primary-foreground/85", children: featuredHeroCard.description })
58509
58576
  ] })
58510
58577
  ] })
58511
58578
  }
58512
58579
  ) }),
58513
- productCategories.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid w-full gap-y-12 lg:gap-y-6", children: productCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "grid gap-y-2 lg:gap-y-6", children: [
58580
+ productCategories.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid w-full gap-y-12 overflow-hidden lg:gap-y-6", children: productCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "grid w-full gap-y-2 lg:gap-y-6", children: [
58514
58581
  /* @__PURE__ */ jsx("div", { className: "border-border text-left lg:border-b lg:pb-3", children: /* @__PURE__ */ jsx("strong", { className: "text-left text-xs font-medium tracking-wider text-muted-foreground uppercase", children: category.title }) }),
58515
- /* @__PURE__ */ jsx("menu", { className: "grid md:grid-cols-3 md:gap-x-5 lg:gap-y-7", children: category.products.map((product) => /* @__PURE__ */ jsxs(
58582
+ /* @__PURE__ */ jsx("menu", { className: "grid w-full auto-cols-fr md:grid-cols-3 md:gap-x-5 lg:gap-y-7", children: category.products.map((product) => /* @__PURE__ */ jsxs(
58516
58583
  NavigationMenuLink,
58517
58584
  {
58518
58585
  href: product.href,
58519
- className: "group flex flex-row items-center space-x-6 border-b border-border py-5 text-left sm:py-7 lg:space-x-4 lg:border-0 lg:py-2",
58586
+ className: "group flex w-full flex-row items-center space-x-4 border-b border-border py-5 text-left hover:bg-muted rounded-lg px-2 -ml-2 sm:py-7 lg:border-0 lg:py-2",
58520
58587
  children: [
58521
- /* @__PURE__ */ jsx("div", { className: "relative flex aspect-square w-16 shrink-0 items-center justify-center overflow-clip rounded md:size-20 md:p-2", children: /* @__PURE__ */ jsx(
58588
+ /* @__PURE__ */ jsx("div", { className: "relative flex aspect-square w-16 shrink-0 items-center justify-center overflow-clip rounded md:size-16", children: /* @__PURE__ */ jsx(
58522
58589
  Img,
58523
58590
  {
58524
58591
  src: product.image,
58525
58592
  alt: product.title,
58526
- className: "object-cover",
58593
+ className: "h-full w-full object-cover",
58527
58594
  optixFlowConfig
58528
58595
  }
58529
58596
  ) }),
58530
- /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
58597
+ /* @__PURE__ */ jsxs("div", { className: "flex-1 min-w-0", children: [
58531
58598
  /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: product.title }),
58532
58599
  /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: product.description })
58533
58600
  ] }),
@@ -58536,7 +58603,7 @@ var ProductsMenu = ({
58536
58603
  {
58537
58604
  name: "lucide/arrow-right",
58538
58605
  size: 16,
58539
- className: "transition-transform group-hover:translate-x-1 lg:hidden"
58606
+ className: "shrink-0 transition-transform group-hover:translate-x-1 lg:hidden"
58540
58607
  }
58541
58608
  )
58542
58609
  ]
@@ -58550,7 +58617,7 @@ var GlobalMenu = ({
58550
58617
  regions,
58551
58618
  featuredHeroCard,
58552
58619
  optixFlowConfig
58553
- }) => /* @__PURE__ */ jsxs("div", { children: [
58620
+ }) => /* @__PURE__ */ jsxs("div", { className: "max-w-full overflow-hidden", children: [
58554
58621
  /* @__PURE__ */ jsxs("div", { className: "space-y-6 lg:flex lg:space-y-0 lg:space-x-8", children: [
58555
58622
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "w-full shrink-0 lg:max-w-[18rem]", children: /* @__PURE__ */ jsx(
58556
58623
  Pressable,
@@ -58561,7 +58628,7 @@ var GlobalMenu = ({
58561
58628
  featuredHeroCard.variant === "accent" ? "bg-accent text-accent-foreground" : "bg-primary"
58562
58629
  ),
58563
58630
  children: /* @__PURE__ */ jsxs("div", { className: "relative z-10 flex w-full flex-col-reverse text-left lg:flex-col", children: [
58564
- /* @__PURE__ */ jsx("div", { className: "relative flex aspect-4/3 max-h-72 w-full flex-1 justify-center", children: /* @__PURE__ */ jsx(
58631
+ /* @__PURE__ */ jsx("div", { className: "relative flex aspect-4/3 max-h-48 w-full flex-1 justify-center", children: /* @__PURE__ */ jsx(
58565
58632
  Img,
58566
58633
  {
58567
58634
  src: featuredHeroCard.image,
@@ -58571,32 +58638,32 @@ var GlobalMenu = ({
58571
58638
  }
58572
58639
  ) }),
58573
58640
  /* @__PURE__ */ jsxs("div", { className: "relative z-20 flex flex-col rounded-b-xl bg-primary p-6", children: [
58574
- /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-1 text-xs", children: [
58641
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center space-x-1 text-base font-semibold", children: [
58575
58642
  featuredHeroCard.title,
58576
58643
  /* @__PURE__ */ jsx(
58577
58644
  DynamicIcon,
58578
58645
  {
58579
58646
  name: "lucide/arrow-right",
58580
- size: 16,
58647
+ size: 18,
58581
58648
  className: "ml-1 transition-transform group-hover:translate-x-1"
58582
58649
  }
58583
58650
  )
58584
58651
  ] }),
58585
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-xs text-primary-foreground/85", children: featuredHeroCard.description })
58652
+ /* @__PURE__ */ jsx("p", { className: "mt-3 text-sm leading-relaxed text-primary-foreground/85", children: featuredHeroCard.description })
58586
58653
  ] })
58587
58654
  ] })
58588
58655
  }
58589
58656
  ) }),
58590
- featureCategories.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid w-full gap-y-12 lg:gap-y-6", children: featureCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "grid gap-y-2 lg:gap-y-6", children: [
58657
+ featureCategories.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid w-full gap-y-12 overflow-hidden lg:gap-y-6", children: featureCategories.map((category) => /* @__PURE__ */ jsxs("div", { className: "grid w-full gap-y-2 lg:gap-y-6", children: [
58591
58658
  /* @__PURE__ */ jsx("div", { className: "border-border text-left lg:border-b lg:pb-3", children: /* @__PURE__ */ jsx("strong", { className: "text-left text-xs font-medium tracking-wider text-muted-foreground uppercase", children: category.title }) }),
58592
- /* @__PURE__ */ jsx("menu", { className: "grid md:grid-cols-3 md:gap-x-6 lg:gap-y-6", children: category.features.map((feature) => /* @__PURE__ */ jsxs(
58659
+ /* @__PURE__ */ jsx("menu", { className: "grid w-full auto-cols-fr md:grid-cols-3 md:gap-x-6 lg:gap-y-6", children: category.features.map((feature) => /* @__PURE__ */ jsxs(
58593
58660
  NavigationMenuLink,
58594
58661
  {
58595
58662
  href: feature.href,
58596
- className: "group flex flex-row items-center space-x-4 border-b border-border py-5 text-left sm:py-7 lg:border-0 lg:py-0",
58663
+ className: "group flex w-full flex-row items-center space-x-4 border-b border-border py-5 text-left hover:bg-muted rounded-lg px-2 -ml-2 sm:py-7 lg:border-0 lg:py-0",
58597
58664
  children: [
58598
58665
  /* @__PURE__ */ jsx("div", { className: "flex aspect-square size-9 shrink-0 items-center justify-center", children: /* @__PURE__ */ jsx(DynamicIcon, { name: feature.icon, size: 20 }) }),
58599
- /* @__PURE__ */ jsxs("div", { className: "flex-1", children: [
58666
+ /* @__PURE__ */ jsxs("div", { className: "flex-1 min-w-0", children: [
58600
58667
  /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: feature.title }),
58601
58668
  /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: feature.description })
58602
58669
  ] }),
@@ -58605,7 +58672,7 @@ var GlobalMenu = ({
58605
58672
  {
58606
58673
  name: "lucide/arrow-right",
58607
58674
  size: 16,
58608
- className: "transition-transform group-hover:translate-x-1 lg:hidden"
58675
+ className: "shrink-0 transition-transform group-hover:translate-x-1 lg:hidden"
58609
58676
  }
58610
58677
  )
58611
58678
  ]
@@ -58616,26 +58683,26 @@ var GlobalMenu = ({
58616
58683
  ] }),
58617
58684
  regions.length > 0 && /* @__PURE__ */ jsxs("div", { className: "mt-8", children: [
58618
58685
  /* @__PURE__ */ jsx("div", { className: "mb-6 border-border pb-1 text-left lg:border-b", children: /* @__PURE__ */ jsx("strong", { className: "text-left text-xs font-medium tracking-wider text-muted-foreground uppercase", children: "Popular Locations" }) }),
58619
- /* @__PURE__ */ jsx("div", { className: "grid gap-6 md:grid-cols-3 lg:grid-cols-4", children: regions.map((region) => /* @__PURE__ */ jsxs(
58686
+ /* @__PURE__ */ jsx("div", { className: "grid w-full gap-6 md:grid-cols-3 lg:grid-cols-4", children: regions.map((region) => /* @__PURE__ */ jsxs(
58620
58687
  "div",
58621
58688
  {
58622
- className: "space-y-6 rounded-md border border-border p-6 lg:border-0 lg:p-0",
58689
+ className: "flex w-full flex-col space-y-6 rounded-md border border-border p-6 lg:border-0 lg:p-0",
58623
58690
  children: [
58624
58691
  /* @__PURE__ */ jsx("div", { className: "text-left text-xs text-muted-foreground", children: region.title }),
58625
- /* @__PURE__ */ jsx("menu", { className: "grid gap-y-3 border-t border-border pt-6 lg:border-0 lg:pt-0", children: region.locations.map((location) => /* @__PURE__ */ jsxs(
58692
+ /* @__PURE__ */ jsx("menu", { className: "grid w-full gap-y-3 border-t border-border pt-6 lg:border-0 lg:pt-0", children: region.locations.map((location) => /* @__PURE__ */ jsxs(
58626
58693
  NavigationMenuLink,
58627
58694
  {
58628
58695
  href: location.href,
58629
- className: "group flex flex-row items-center space-x-4 text-left lg:space-x-4 lg:border-0 lg:py-0",
58696
+ className: "group flex w-full flex-row items-center space-x-4 text-left hover:bg-muted rounded-lg p-2 -ml-2 lg:space-x-4 lg:border-0 lg:py-0",
58630
58697
  children: [
58631
- /* @__PURE__ */ jsx("div", { className: "flex size-4 items-center justify-center", children: location.icon }),
58632
- /* @__PURE__ */ jsx("div", { className: "flex-1 text-sm font-medium", children: location.title }),
58698
+ /* @__PURE__ */ jsx("div", { className: "flex size-4 shrink-0 items-center justify-center", children: location.icon }),
58699
+ /* @__PURE__ */ jsx("div", { className: "flex-1 min-w-0 text-sm font-medium", children: location.title }),
58633
58700
  /* @__PURE__ */ jsx(
58634
58701
  DynamicIcon,
58635
58702
  {
58636
58703
  name: "lucide/arrow-right",
58637
58704
  size: 16,
58638
- className: "transition-transform group-hover:translate-x-1 lg:hidden"
58705
+ className: "shrink-0 transition-transform group-hover:translate-x-1 lg:hidden"
58639
58706
  }
58640
58707
  )
58641
58708
  ]
@@ -58652,7 +58719,7 @@ var PartnersMenu = ({
58652
58719
  partnerCards,
58653
58720
  featuredHeroCard,
58654
58721
  optixFlowConfig
58655
- }) => /* @__PURE__ */ jsxs("div", { className: "grid gap-y-6 md:grid-cols-2 md:gap-x-6 lg:grid-cols-4", children: [
58722
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid max-w-full gap-y-6 md:grid-cols-2 md:gap-x-6 lg:grid-cols-4", children: [
58656
58723
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "md:col-span-2", children: /* @__PURE__ */ jsx(
58657
58724
  Pressable,
58658
58725
  {
@@ -58663,18 +58730,18 @@ var PartnersMenu = ({
58663
58730
  ),
58664
58731
  children: /* @__PURE__ */ jsxs("div", { className: "relative z-10 flex w-full flex-col-reverse text-left", children: [
58665
58732
  /* @__PURE__ */ jsxs("div", { className: "relative z-20 flex flex-col px-6 pt-6 pb-56 md:pt-40 md:pb-6", children: [
58666
- /* @__PURE__ */ jsxs("div", { className: "mt-auto flex items-center space-x-1 text-xs font-medium", children: [
58733
+ /* @__PURE__ */ jsxs("div", { className: "mt-auto flex items-center space-x-1 text-base font-semibold", children: [
58667
58734
  featuredHeroCard.title,
58668
58735
  /* @__PURE__ */ jsx(
58669
58736
  DynamicIcon,
58670
58737
  {
58671
58738
  name: "lucide/arrow-right",
58672
- size: 16,
58739
+ size: 18,
58673
58740
  className: "ml-1 transition-transform group-hover:translate-x-1"
58674
58741
  }
58675
58742
  )
58676
58743
  ] }),
58677
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-xs", children: featuredHeroCard.description })
58744
+ /* @__PURE__ */ jsx("p", { className: "mt-3 text-sm leading-relaxed", children: featuredHeroCard.description })
58678
58745
  ] }),
58679
58746
  /* @__PURE__ */ jsx(
58680
58747
  "div",
@@ -58697,14 +58764,14 @@ var PartnersMenu = ({
58697
58764
  ] })
58698
58765
  }
58699
58766
  ) }),
58700
- partnerCards.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid gap-4 md:col-span-2 lg:col-span-2", children: partnerCards.map((card) => /* @__PURE__ */ jsx(
58767
+ partnerCards.length > 0 && /* @__PURE__ */ jsx("div", { className: "grid w-full gap-4 md:col-span-2 lg:col-span-2", children: partnerCards.map((card) => /* @__PURE__ */ jsx(
58701
58768
  NavigationMenuLink,
58702
58769
  {
58703
58770
  href: card.href,
58704
- className: "group flex w-full flex-row items-center rounded-lg border border-border lg:rounded-xl",
58705
- children: /* @__PURE__ */ jsxs("div", { className: "flex items-start p-6 text-left", children: [
58706
- /* @__PURE__ */ jsx(DynamicIcon, { name: card.icon, size: 32 }),
58707
- /* @__PURE__ */ jsxs("div", { className: "ml-4", children: [
58771
+ className: "group flex w-full flex-row items-center rounded-lg border border-border hover:bg-muted lg:rounded-xl",
58772
+ children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-start p-6 text-left", children: [
58773
+ /* @__PURE__ */ jsx(DynamicIcon, { name: card.icon, size: 32, className: "shrink-0" }),
58774
+ /* @__PURE__ */ jsxs("div", { className: "ml-4 flex-1 min-w-0", children: [
58708
58775
  /* @__PURE__ */ jsx("div", { className: "mt-auto mb-1 text-sm font-bold", children: card.title }),
58709
58776
  /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: card.description })
58710
58777
  ] })
@@ -58717,7 +58784,7 @@ var ResourcesMenu = ({
58717
58784
  resourceItems,
58718
58785
  topicGroups,
58719
58786
  featuredHeroCard
58720
- }) => /* @__PURE__ */ jsxs("div", { className: "grid gap-8 lg:grid-cols-3", children: [
58787
+ }) => /* @__PURE__ */ jsxs("div", { className: "grid max-w-full gap-8 lg:grid-cols-3", children: [
58721
58788
  featuredHeroCard && /* @__PURE__ */ jsx("div", { className: "lg:col-span-1", children: /* @__PURE__ */ jsx(
58722
58789
  Pressable,
58723
58790
  {
@@ -58728,18 +58795,18 @@ var ResourcesMenu = ({
58728
58795
  ),
58729
58796
  children: /* @__PURE__ */ jsxs("div", { className: "relative z-10 flex w-full flex-col-reverse text-left", children: [
58730
58797
  /* @__PURE__ */ jsxs("div", { className: "relative z-20 flex flex-col px-6 pt-6 pb-56 md:pt-40 md:pb-6", children: [
58731
- /* @__PURE__ */ jsxs("div", { className: "mt-auto flex items-center space-x-1 text-xs", children: [
58798
+ /* @__PURE__ */ jsxs("div", { className: "mt-auto flex items-center space-x-1 text-base font-semibold", children: [
58732
58799
  featuredHeroCard.title,
58733
58800
  /* @__PURE__ */ jsx(
58734
58801
  DynamicIcon,
58735
58802
  {
58736
58803
  name: "lucide/arrow-right",
58737
- size: 16,
58804
+ size: 18,
58738
58805
  className: "ml-1 transition-transform group-hover:translate-x-1"
58739
58806
  }
58740
58807
  )
58741
58808
  ] }),
58742
- /* @__PURE__ */ jsx("p", { className: "mt-2 text-xs", children: featuredHeroCard.description })
58809
+ /* @__PURE__ */ jsx("p", { className: "mt-3 text-sm leading-relaxed", children: featuredHeroCard.description })
58743
58810
  ] }),
58744
58811
  /* @__PURE__ */ jsx("div", { className: "absolute inset-0", children: /* @__PURE__ */ jsx(
58745
58812
  Img,
@@ -58753,13 +58820,13 @@ var ResourcesMenu = ({
58753
58820
  ] })
58754
58821
  }
58755
58822
  ) }),
58756
- resourceItems.length > 0 && /* @__PURE__ */ jsxs("div", { className: cn(featuredHeroCard ? "lg:col-span-1" : "lg:col-span-2"), children: [
58823
+ resourceItems.length > 0 && /* @__PURE__ */ jsxs("div", { className: cn(featuredHeroCard ? "lg:col-span-1" : "lg:col-span-2", "overflow-hidden"), children: [
58757
58824
  /* @__PURE__ */ jsx("div", { className: "mb-6 text-left", children: /* @__PURE__ */ jsx("strong", { className: "text-xs font-medium tracking-wider text-muted-foreground uppercase", children: "Resources" }) }),
58758
- /* @__PURE__ */ jsx("div", { className: "grid gap-4 md:grid-cols-2 lg:grid-cols-2", children: resourceItems.map((resource) => /* @__PURE__ */ jsxs(
58825
+ /* @__PURE__ */ jsx("div", { className: "grid w-full gap-4 md:grid-cols-2 lg:grid-cols-2", children: resourceItems.map((resource) => /* @__PURE__ */ jsxs(
58759
58826
  NavigationMenuLink,
58760
58827
  {
58761
58828
  href: resource.href,
58762
- className: "group flex flex-row items-start gap-4 rounded-lg border border-border p-4 hover:bg-accent",
58829
+ className: "group flex w-full flex-row items-start gap-4 rounded-lg border border-border p-4 hover:bg-muted",
58763
58830
  children: [
58764
58831
  /* @__PURE__ */ jsx(
58765
58832
  DynamicIcon,
@@ -58769,7 +58836,7 @@ var ResourcesMenu = ({
58769
58836
  className: "mt-1 shrink-0"
58770
58837
  }
58771
58838
  ),
58772
- /* @__PURE__ */ jsxs("div", { children: [
58839
+ /* @__PURE__ */ jsxs("div", { className: "flex-1 min-w-0", children: [
58773
58840
  /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: resource.title }),
58774
58841
  /* @__PURE__ */ jsx("p", { className: "mt-1 text-xs text-muted-foreground", children: resource.description })
58775
58842
  ] })
@@ -58784,10 +58851,10 @@ var ResourcesMenu = ({
58784
58851
  NavigationMenuLink,
58785
58852
  {
58786
58853
  href: topic.href,
58787
- className: "group flex flex-row items-center gap-3",
58854
+ className: "group flex flex-row items-center gap-3 hover:bg-muted rounded-lg p-2 -ml-2",
58788
58855
  children: [
58789
- /* @__PURE__ */ jsx(DynamicIcon, { name: topic.icon, size: 16 }),
58790
- /* @__PURE__ */ jsx("span", { className: "text-sm font-medium", children: topic.title })
58856
+ /* @__PURE__ */ jsx(DynamicIcon, { name: topic.icon, size: 16, className: "shrink-0" }),
58857
+ /* @__PURE__ */ jsx("span", { className: "flex-1 text-sm font-medium", children: topic.title })
58791
58858
  ]
58792
58859
  },
58793
58860
  topic.id
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensite/ui",
3
- "version": "0.9.6",
3
+ "version": "0.9.7",
4
4
  "description": "Foundational UI component library for OpenSite Semantic Site Builder with tree-shakable exports and abstract styling",
5
5
  "keywords": [
6
6
  "react",