@opensite/ui 1.0.9 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/navbar-animated-preview.cjs +27 -17
  2. package/dist/navbar-animated-preview.js +27 -17
  3. package/dist/navbar-centered-menu.cjs +20 -10
  4. package/dist/navbar-centered-menu.js +20 -10
  5. package/dist/navbar-dark-icons.cjs +20 -10
  6. package/dist/navbar-dark-icons.js +20 -10
  7. package/dist/navbar-dropdown-menu.cjs +20 -10
  8. package/dist/navbar-dropdown-menu.js +20 -10
  9. package/dist/navbar-education-platform.cjs +81 -56
  10. package/dist/navbar-education-platform.js +81 -56
  11. package/dist/navbar-enterprise-mega.cjs +21 -11
  12. package/dist/navbar-enterprise-mega.js +21 -11
  13. package/dist/navbar-feature-grid.cjs +20 -10
  14. package/dist/navbar-feature-grid.js +20 -10
  15. package/dist/navbar-icon-links.cjs +20 -10
  16. package/dist/navbar-icon-links.js +20 -10
  17. package/dist/navbar-image-preview.cjs +20 -10
  18. package/dist/navbar-image-preview.js +20 -10
  19. package/dist/navbar-mega-menu.cjs +20 -10
  20. package/dist/navbar-mega-menu.js +20 -10
  21. package/dist/navbar-multi-column-groups.cjs +52 -35
  22. package/dist/navbar-multi-column-groups.js +52 -35
  23. package/dist/navbar-platform-resources.cjs +20 -10
  24. package/dist/navbar-platform-resources.js +20 -10
  25. package/dist/navbar-search-focused.cjs +20 -10
  26. package/dist/navbar-search-focused.js +20 -10
  27. package/dist/navbar-sidebar-mobile.cjs +21 -10
  28. package/dist/navbar-sidebar-mobile.js +21 -10
  29. package/dist/navbar-simple-links.cjs +22 -12
  30. package/dist/navbar-simple-links.js +22 -12
  31. package/dist/navbar-split-cta.cjs +20 -10
  32. package/dist/navbar-split-cta.js +20 -10
  33. package/dist/navbar-sticky-compact.cjs +240 -123
  34. package/dist/navbar-sticky-compact.js +239 -123
  35. package/dist/navbar-tabbed-sections.cjs +20 -10
  36. package/dist/navbar-tabbed-sections.js +20 -10
  37. package/dist/navbar-transparent-overlay.cjs +21 -10
  38. package/dist/navbar-transparent-overlay.js +21 -10
  39. package/dist/registry.cjs +285 -206
  40. package/dist/registry.js +285 -206
  41. package/package.json +1 -1
@@ -1220,6 +1220,7 @@ var NavbarMobileMenu = ({
1220
1220
  children,
1221
1221
  className,
1222
1222
  contentClassName,
1223
+ closeContainerClassName = "",
1223
1224
  title = "Mobile Navigation"
1224
1225
  }) => {
1225
1226
  React__namespace.useEffect(() => {
@@ -1244,18 +1245,27 @@ var NavbarMobileMenu = ({
1244
1245
  "data-state": open ? "open" : "closed",
1245
1246
  children: [
1246
1247
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { children: title }) }),
1247
- /* @__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(
1248
- "button",
1248
+ /* @__PURE__ */ jsxRuntime.jsx(
1249
+ "div",
1249
1250
  {
1250
- onClick: onClose,
1251
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1252
- "aria-label": "Close mobile menu",
1253
- children: [
1254
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1255
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1256
- ]
1251
+ className: cn(
1252
+ closeContainerClassName,
1253
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1254
+ ),
1255
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1256
+ "button",
1257
+ {
1258
+ onClick: onClose,
1259
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1260
+ "aria-label": "Close mobile menu",
1261
+ children: [
1262
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1263
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1264
+ ]
1265
+ }
1266
+ )
1257
1267
  }
1258
- ) }),
1268
+ ),
1259
1269
  /* @__PURE__ */ jsxRuntime.jsx(
1260
1270
  "div",
1261
1271
  {
@@ -1490,36 +1500,44 @@ var DesktopMenuItem = ({
1490
1500
  ),
1491
1501
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "p-4", children: [
1492
1502
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: group.label }),
1493
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-1", children: group.links.map((link) => /* @__PURE__ */ jsxRuntime.jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
1494
- Pressable,
1503
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-1", children: group.links.map((link) => /* @__PURE__ */ jsxRuntime.jsx(
1504
+ NavigationMenuLink,
1495
1505
  {
1496
- href: link.href,
1497
- className: "group flex cursor-pointer flex-row gap-3",
1498
- children: [
1499
- 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 }) }),
1500
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
1501
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
1502
- link.title,
1503
- /* @__PURE__ */ jsxRuntime.jsx(
1504
- DynamicIcon,
1505
- {
1506
- name: "lucide/chevron-right",
1507
- size: 16,
1508
- className: "text-primary! opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
1509
- }
1510
- )
1511
- ] }),
1512
- link.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: link.description })
1513
- ] })
1514
- ]
1515
- }
1516
- ) }, link.title)) }),
1506
+ asChild: true,
1507
+ className: "w-full",
1508
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1509
+ Pressable,
1510
+ {
1511
+ href: link.href,
1512
+ className: "group flex cursor-pointer flex-row gap-3",
1513
+ children: [
1514
+ 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 }) }),
1515
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col", children: [
1516
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
1517
+ link.title,
1518
+ /* @__PURE__ */ jsxRuntime.jsx(
1519
+ DynamicIcon,
1520
+ {
1521
+ name: "lucide/chevron-right",
1522
+ size: 16,
1523
+ className: "opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
1524
+ }
1525
+ )
1526
+ ] }),
1527
+ link.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: link.description })
1528
+ ] })
1529
+ ]
1530
+ }
1531
+ )
1532
+ },
1533
+ link.title
1534
+ )) }),
1517
1535
  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(
1518
1536
  img.Img,
1519
1537
  {
1520
1538
  src: group.featuredImage.src,
1521
1539
  alt: group.featuredImage.alt || "Featured image",
1522
- className: "aspect-video w-full max-w-[240px] rounded-md object-cover object-center",
1540
+ className: "aspect-video w-full max-w-60 rounded-md object-cover object-center",
1523
1541
  optixFlowConfig
1524
1542
  }
1525
1543
  ) }) }) }) })
@@ -1583,29 +1601,36 @@ var MobileNavigationMenu = ({
1583
1601
  className: "border-b-0",
1584
1602
  children: [
1585
1603
  /* @__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 }),
1586
- /* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-4", children: [
1587
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-2 px-4 text-[10px] text-muted-foreground uppercase", children: group.label }),
1588
- group.links.map((link) => /* @__PURE__ */ jsxRuntime.jsxs(
1589
- Pressable,
1590
- {
1591
- href: link.href,
1592
- 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",
1593
- onClick: onClose,
1594
- children: [
1595
- link.icon && /* @__PURE__ */ jsxRuntime.jsx(
1596
- DynamicIcon,
1597
- {
1598
- name: link.icon,
1599
- size: 16,
1600
- className: "stroke-muted-foreground"
1601
- }
1602
- ),
1604
+ /* @__PURE__ */ jsxRuntime.jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxRuntime.jsxs(
1605
+ "div",
1606
+ {
1607
+ className: "mb-4",
1608
+ children: [
1609
+ group.label && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "block mt-4 mb-2 px-4 text-[10px] text-muted-foreground uppercase", children: group.label }),
1610
+ group.links.map((link) => /* @__PURE__ */ jsxRuntime.jsxs(
1611
+ Pressable,
1612
+ {
1613
+ href: link.href,
1614
+ className: "flex min-h-12 items-center gap-2 rounded-lg pl-6 pr-4 text-muted-foreground transition-colors duration-300 hover:bg-muted hover:text-foreground",
1615
+ onClick: onClose,
1616
+ children: [
1617
+ link.icon && /* @__PURE__ */ jsxRuntime.jsx(
1618
+ DynamicIcon,
1619
+ {
1620
+ name: link.icon,
1621
+ size: 16,
1622
+ className: "stroke-muted-foreground"
1623
+ }
1624
+ ),
1625
+ link.title
1626
+ ]
1627
+ },
1603
1628
  link.title
1604
- ]
1605
- },
1606
- link.title
1607
- ))
1608
- ] }, `mobile-group-${groupIndex}`)) })
1629
+ ))
1630
+ ]
1631
+ },
1632
+ `mobile-group-${groupIndex}`
1633
+ )) })
1609
1634
  ]
1610
1635
  },
1611
1636
  `nav-item-${index}`
@@ -1196,6 +1196,7 @@ var NavbarMobileMenu = ({
1196
1196
  children,
1197
1197
  className,
1198
1198
  contentClassName,
1199
+ closeContainerClassName = "",
1199
1200
  title = "Mobile Navigation"
1200
1201
  }) => {
1201
1202
  React.useEffect(() => {
@@ -1220,18 +1221,27 @@ var NavbarMobileMenu = ({
1220
1221
  "data-state": open ? "open" : "closed",
1221
1222
  children: [
1222
1223
  /* @__PURE__ */ jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsx("h2", { children: title }) }),
1223
- /* @__PURE__ */ 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__ */ jsxs(
1224
- "button",
1224
+ /* @__PURE__ */ jsx(
1225
+ "div",
1225
1226
  {
1226
- onClick: onClose,
1227
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1228
- "aria-label": "Close mobile menu",
1229
- children: [
1230
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1231
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1232
- ]
1227
+ className: cn(
1228
+ closeContainerClassName,
1229
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1230
+ ),
1231
+ children: /* @__PURE__ */ jsxs(
1232
+ "button",
1233
+ {
1234
+ onClick: onClose,
1235
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1236
+ "aria-label": "Close mobile menu",
1237
+ children: [
1238
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1239
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1240
+ ]
1241
+ }
1242
+ )
1233
1243
  }
1234
- ) }),
1244
+ ),
1235
1245
  /* @__PURE__ */ jsx(
1236
1246
  "div",
1237
1247
  {
@@ -1466,36 +1476,44 @@ var DesktopMenuItem = ({
1466
1476
  ),
1467
1477
  /* @__PURE__ */ jsxs("div", { className: "p-4", children: [
1468
1478
  /* @__PURE__ */ jsx("p", { className: "mb-3 text-[10px] text-muted-foreground uppercase", children: group.label }),
1469
- /* @__PURE__ */ jsx("div", { className: "space-y-1", children: group.links.map((link) => /* @__PURE__ */ jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxs(
1470
- Pressable,
1479
+ /* @__PURE__ */ jsx("div", { className: "space-y-1", children: group.links.map((link) => /* @__PURE__ */ jsx(
1480
+ NavigationMenuLink,
1471
1481
  {
1472
- href: link.href,
1473
- className: "group flex cursor-pointer flex-row gap-3",
1474
- children: [
1475
- link.icon && /* @__PURE__ */ jsx("span", { className: "flex size-10 shrink-0 items-center justify-center rounded-md border border-border bg-background", children: /* @__PURE__ */ jsx(DynamicIcon, { name: link.icon, size: 20 }) }),
1476
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col", children: [
1477
- /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
1478
- link.title,
1479
- /* @__PURE__ */ jsx(
1480
- DynamicIcon,
1481
- {
1482
- name: "lucide/chevron-right",
1483
- size: 16,
1484
- className: "text-primary! opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
1485
- }
1486
- )
1487
- ] }),
1488
- link.description && /* @__PURE__ */ jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: link.description })
1489
- ] })
1490
- ]
1491
- }
1492
- ) }, link.title)) }),
1482
+ asChild: true,
1483
+ className: "w-full",
1484
+ children: /* @__PURE__ */ jsxs(
1485
+ Pressable,
1486
+ {
1487
+ href: link.href,
1488
+ className: "group flex cursor-pointer flex-row gap-3",
1489
+ children: [
1490
+ link.icon && /* @__PURE__ */ jsx("span", { className: "flex size-10 shrink-0 items-center justify-center rounded-md border border-border bg-background", children: /* @__PURE__ */ jsx(DynamicIcon, { name: link.icon, size: 20 }) }),
1491
+ /* @__PURE__ */ jsxs("div", { className: "flex flex-col", children: [
1492
+ /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-0.5 text-sm font-medium whitespace-nowrap", children: [
1493
+ link.title,
1494
+ /* @__PURE__ */ jsx(
1495
+ DynamicIcon,
1496
+ {
1497
+ name: "lucide/chevron-right",
1498
+ size: 16,
1499
+ className: "opacity-0 transition-all duration-200 group-hover:translate-x-0.5 group-hover:opacity-100"
1500
+ }
1501
+ )
1502
+ ] }),
1503
+ link.description && /* @__PURE__ */ jsx("p", { className: "text-xs whitespace-nowrap text-muted-foreground", children: link.description })
1504
+ ] })
1505
+ ]
1506
+ }
1507
+ )
1508
+ },
1509
+ link.title
1510
+ )) }),
1493
1511
  group.featuredImage && /* @__PURE__ */ jsx("div", { className: "mt-4", children: /* @__PURE__ */ jsx(NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsx(Pressable, { href: group.featuredImage.href || "#", children: /* @__PURE__ */ jsx("div", { className: "rounded-lg bg-muted p-3", children: /* @__PURE__ */ jsx(
1494
1512
  Img,
1495
1513
  {
1496
1514
  src: group.featuredImage.src,
1497
1515
  alt: group.featuredImage.alt || "Featured image",
1498
- className: "aspect-video w-full max-w-[240px] rounded-md object-cover object-center",
1516
+ className: "aspect-video w-full max-w-60 rounded-md object-cover object-center",
1499
1517
  optixFlowConfig
1500
1518
  }
1501
1519
  ) }) }) }) })
@@ -1559,29 +1577,36 @@ var MobileNavigationMenu = ({
1559
1577
  className: "border-b-0",
1560
1578
  children: [
1561
1579
  /* @__PURE__ */ 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 }),
1562
- /* @__PURE__ */ jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxs("div", { className: "mb-4", children: [
1563
- /* @__PURE__ */ jsx("p", { className: "mb-2 px-4 text-[10px] text-muted-foreground uppercase", children: group.label }),
1564
- group.links.map((link) => /* @__PURE__ */ jsxs(
1565
- Pressable,
1566
- {
1567
- href: link.href,
1568
- 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",
1569
- onClick: onClose,
1570
- children: [
1571
- link.icon && /* @__PURE__ */ jsx(
1572
- DynamicIcon,
1573
- {
1574
- name: link.icon,
1575
- size: 16,
1576
- className: "stroke-muted-foreground"
1577
- }
1578
- ),
1580
+ /* @__PURE__ */ jsx(AccordionContent, { className: "overflow-x-none", children: item.groups.map((group, groupIndex) => /* @__PURE__ */ jsxs(
1581
+ "div",
1582
+ {
1583
+ className: "mb-4",
1584
+ children: [
1585
+ group.label && /* @__PURE__ */ jsx("p", { className: "block mt-4 mb-2 px-4 text-[10px] text-muted-foreground uppercase", children: group.label }),
1586
+ group.links.map((link) => /* @__PURE__ */ jsxs(
1587
+ Pressable,
1588
+ {
1589
+ href: link.href,
1590
+ className: "flex min-h-12 items-center gap-2 rounded-lg pl-6 pr-4 text-muted-foreground transition-colors duration-300 hover:bg-muted hover:text-foreground",
1591
+ onClick: onClose,
1592
+ children: [
1593
+ link.icon && /* @__PURE__ */ jsx(
1594
+ DynamicIcon,
1595
+ {
1596
+ name: link.icon,
1597
+ size: 16,
1598
+ className: "stroke-muted-foreground"
1599
+ }
1600
+ ),
1601
+ link.title
1602
+ ]
1603
+ },
1579
1604
  link.title
1580
- ]
1581
- },
1582
- link.title
1583
- ))
1584
- ] }, `mobile-group-${groupIndex}`)) })
1605
+ ))
1606
+ ]
1607
+ },
1608
+ `mobile-group-${groupIndex}`
1609
+ )) })
1585
1610
  ]
1586
1611
  },
1587
1612
  `nav-item-${index}`
@@ -1138,6 +1138,7 @@ var NavbarMobileMenu = ({
1138
1138
  children,
1139
1139
  className,
1140
1140
  contentClassName,
1141
+ closeContainerClassName = "",
1141
1142
  title = "Mobile Navigation"
1142
1143
  }) => {
1143
1144
  React__namespace.useEffect(() => {
@@ -1162,18 +1163,27 @@ var NavbarMobileMenu = ({
1162
1163
  "data-state": open ? "open" : "closed",
1163
1164
  children: [
1164
1165
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { children: title }) }),
1165
- /* @__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(
1166
- "button",
1166
+ /* @__PURE__ */ jsxRuntime.jsx(
1167
+ "div",
1167
1168
  {
1168
- onClick: onClose,
1169
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1170
- "aria-label": "Close mobile menu",
1171
- children: [
1172
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1173
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1174
- ]
1169
+ className: cn(
1170
+ closeContainerClassName,
1171
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1172
+ ),
1173
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1174
+ "button",
1175
+ {
1176
+ onClick: onClose,
1177
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1178
+ "aria-label": "Close mobile menu",
1179
+ children: [
1180
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1181
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1182
+ ]
1183
+ }
1184
+ )
1175
1185
  }
1176
- ) }),
1186
+ ),
1177
1187
  /* @__PURE__ */ jsxRuntime.jsx(
1178
1188
  "div",
1179
1189
  {
@@ -1933,7 +1943,7 @@ var renderMobileDropdownContent = (item) => {
1933
1943
  Pressable,
1934
1944
  {
1935
1945
  href: solution.href,
1936
- className: "block pb-2 text-sm font-medium",
1946
+ className: "block pt-4 text-sm font-medium",
1937
1947
  children: solution.title
1938
1948
  }
1939
1949
  ),
@@ -1115,6 +1115,7 @@ var NavbarMobileMenu = ({
1115
1115
  children,
1116
1116
  className,
1117
1117
  contentClassName,
1118
+ closeContainerClassName = "",
1118
1119
  title = "Mobile Navigation"
1119
1120
  }) => {
1120
1121
  React.useEffect(() => {
@@ -1139,18 +1140,27 @@ var NavbarMobileMenu = ({
1139
1140
  "data-state": open ? "open" : "closed",
1140
1141
  children: [
1141
1142
  /* @__PURE__ */ jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsx("h2", { children: title }) }),
1142
- /* @__PURE__ */ 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__ */ jsxs(
1143
- "button",
1143
+ /* @__PURE__ */ jsx(
1144
+ "div",
1144
1145
  {
1145
- onClick: onClose,
1146
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1147
- "aria-label": "Close mobile menu",
1148
- children: [
1149
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1150
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1151
- ]
1146
+ className: cn(
1147
+ closeContainerClassName,
1148
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1149
+ ),
1150
+ children: /* @__PURE__ */ jsxs(
1151
+ "button",
1152
+ {
1153
+ onClick: onClose,
1154
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1155
+ "aria-label": "Close mobile menu",
1156
+ children: [
1157
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1158
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1159
+ ]
1160
+ }
1161
+ )
1152
1162
  }
1153
- ) }),
1163
+ ),
1154
1164
  /* @__PURE__ */ jsx(
1155
1165
  "div",
1156
1166
  {
@@ -1910,7 +1920,7 @@ var renderMobileDropdownContent = (item) => {
1910
1920
  Pressable,
1911
1921
  {
1912
1922
  href: solution.href,
1913
- className: "block pb-2 text-sm font-medium",
1923
+ className: "block pt-4 text-sm font-medium",
1914
1924
  children: solution.title
1915
1925
  }
1916
1926
  ),
@@ -1138,6 +1138,7 @@ var NavbarMobileMenu = ({
1138
1138
  children,
1139
1139
  className,
1140
1140
  contentClassName,
1141
+ closeContainerClassName = "",
1141
1142
  title = "Mobile Navigation"
1142
1143
  }) => {
1143
1144
  React__namespace.useEffect(() => {
@@ -1162,18 +1163,27 @@ var NavbarMobileMenu = ({
1162
1163
  "data-state": open ? "open" : "closed",
1163
1164
  children: [
1164
1165
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { children: title }) }),
1165
- /* @__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(
1166
- "button",
1166
+ /* @__PURE__ */ jsxRuntime.jsx(
1167
+ "div",
1167
1168
  {
1168
- onClick: onClose,
1169
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1170
- "aria-label": "Close mobile menu",
1171
- children: [
1172
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1173
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1174
- ]
1169
+ className: cn(
1170
+ closeContainerClassName,
1171
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1172
+ ),
1173
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1174
+ "button",
1175
+ {
1176
+ onClick: onClose,
1177
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1178
+ "aria-label": "Close mobile menu",
1179
+ children: [
1180
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1181
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1182
+ ]
1183
+ }
1184
+ )
1175
1185
  }
1176
- ) }),
1186
+ ),
1177
1187
  /* @__PURE__ */ jsxRuntime.jsx(
1178
1188
  "div",
1179
1189
  {
@@ -1115,6 +1115,7 @@ var NavbarMobileMenu = ({
1115
1115
  children,
1116
1116
  className,
1117
1117
  contentClassName,
1118
+ closeContainerClassName = "",
1118
1119
  title = "Mobile Navigation"
1119
1120
  }) => {
1120
1121
  React.useEffect(() => {
@@ -1139,18 +1140,27 @@ var NavbarMobileMenu = ({
1139
1140
  "data-state": open ? "open" : "closed",
1140
1141
  children: [
1141
1142
  /* @__PURE__ */ jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsx("h2", { children: title }) }),
1142
- /* @__PURE__ */ 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__ */ jsxs(
1143
- "button",
1143
+ /* @__PURE__ */ jsx(
1144
+ "div",
1144
1145
  {
1145
- onClick: onClose,
1146
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1147
- "aria-label": "Close mobile menu",
1148
- children: [
1149
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1150
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1151
- ]
1146
+ className: cn(
1147
+ closeContainerClassName,
1148
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1149
+ ),
1150
+ children: /* @__PURE__ */ jsxs(
1151
+ "button",
1152
+ {
1153
+ onClick: onClose,
1154
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1155
+ "aria-label": "Close mobile menu",
1156
+ children: [
1157
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1158
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1159
+ ]
1160
+ }
1161
+ )
1152
1162
  }
1153
- ) }),
1163
+ ),
1154
1164
  /* @__PURE__ */ jsx(
1155
1165
  "div",
1156
1166
  {
@@ -1035,6 +1035,7 @@ var NavbarMobileMenu = ({
1035
1035
  children,
1036
1036
  className,
1037
1037
  contentClassName,
1038
+ closeContainerClassName = "",
1038
1039
  title = "Mobile Navigation"
1039
1040
  }) => {
1040
1041
  React__namespace.useEffect(() => {
@@ -1059,18 +1060,27 @@ var NavbarMobileMenu = ({
1059
1060
  "data-state": open ? "open" : "closed",
1060
1061
  children: [
1061
1062
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { children: title }) }),
1062
- /* @__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(
1063
- "button",
1063
+ /* @__PURE__ */ jsxRuntime.jsx(
1064
+ "div",
1064
1065
  {
1065
- onClick: onClose,
1066
- className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1067
- "aria-label": "Close mobile menu",
1068
- children: [
1069
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1070
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1071
- ]
1066
+ className: cn(
1067
+ closeContainerClassName,
1068
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1069
+ ),
1070
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1071
+ "button",
1072
+ {
1073
+ onClick: onClose,
1074
+ className: "flex size-10 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none",
1075
+ "aria-label": "Close mobile menu",
1076
+ children: [
1077
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1078
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1079
+ ]
1080
+ }
1081
+ )
1072
1082
  }
1073
- ) }),
1083
+ ),
1074
1084
  /* @__PURE__ */ jsxRuntime.jsx(
1075
1085
  "div",
1076
1086
  {