@opensite/ui 1.0.3 → 1.0.5

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 (47) hide show
  1. package/dist/navbar-animated-preview.cjs +67 -82
  2. package/dist/navbar-animated-preview.js +67 -81
  3. package/dist/navbar-centered-menu.cjs +101 -125
  4. package/dist/navbar-centered-menu.js +101 -124
  5. package/dist/navbar-dark-icons.cjs +67 -81
  6. package/dist/navbar-dark-icons.js +67 -80
  7. package/dist/navbar-dropdown-menu.cjs +87 -122
  8. package/dist/navbar-dropdown-menu.js +87 -121
  9. package/dist/navbar-education-platform.cjs +1 -1
  10. package/dist/navbar-education-platform.js +1 -1
  11. package/dist/navbar-enterprise-mega.cjs +7 -7
  12. package/dist/navbar-enterprise-mega.js +7 -7
  13. package/dist/navbar-feature-grid.cjs +131 -150
  14. package/dist/navbar-feature-grid.d.cts +9 -1
  15. package/dist/navbar-feature-grid.d.ts +9 -1
  16. package/dist/navbar-feature-grid.js +131 -149
  17. package/dist/navbar-floating-pill.cjs +2 -2
  18. package/dist/navbar-floating-pill.js +2 -2
  19. package/dist/navbar-fullscreen-menu.cjs +1 -1
  20. package/dist/navbar-fullscreen-menu.js +1 -1
  21. package/dist/navbar-icon-links.cjs +102 -138
  22. package/dist/navbar-icon-links.js +102 -137
  23. package/dist/navbar-image-preview.cjs +64 -95
  24. package/dist/navbar-image-preview.js +64 -94
  25. package/dist/navbar-mega-menu.cjs +1 -1
  26. package/dist/navbar-mega-menu.js +1 -1
  27. package/dist/navbar-multi-column-groups.cjs +67 -81
  28. package/dist/navbar-multi-column-groups.js +67 -80
  29. package/dist/navbar-platform-resources.cjs +80 -42
  30. package/dist/navbar-platform-resources.js +80 -42
  31. package/dist/navbar-search-focused.cjs +76 -93
  32. package/dist/navbar-search-focused.js +76 -92
  33. package/dist/navbar-sidebar-mobile.cjs +76 -93
  34. package/dist/navbar-sidebar-mobile.js +76 -92
  35. package/dist/navbar-simple-links.cjs +1 -1
  36. package/dist/navbar-simple-links.js +1 -1
  37. package/dist/navbar-split-cta.cjs +78 -95
  38. package/dist/navbar-split-cta.js +78 -94
  39. package/dist/navbar-sticky-compact.cjs +82 -100
  40. package/dist/navbar-sticky-compact.js +82 -99
  41. package/dist/navbar-tabbed-sections.cjs +91 -115
  42. package/dist/navbar-tabbed-sections.js +91 -114
  43. package/dist/navbar-transparent-overlay.cjs +1 -1
  44. package/dist/navbar-transparent-overlay.js +1 -1
  45. package/dist/registry.cjs +594 -618
  46. package/dist/registry.js +593 -617
  47. package/package.json +1 -1
@@ -8,7 +8,6 @@ var classVarianceAuthority = require('class-variance-authority');
8
8
  var jsxRuntime = require('react/jsx-runtime');
9
9
  var img = require('@page-speed/img');
10
10
  var NavigationMenuPrimitive = require('@radix-ui/react-navigation-menu');
11
- var SheetPrimitive = require('@radix-ui/react-dialog');
12
11
  var TabsPrimitive = require('@radix-ui/react-tabs');
13
12
 
14
13
  function _interopNamespace(e) {
@@ -31,7 +30,6 @@ function _interopNamespace(e) {
31
30
 
32
31
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
33
32
  var NavigationMenuPrimitive__namespace = /*#__PURE__*/_interopNamespace(NavigationMenuPrimitive);
34
- var SheetPrimitive__namespace = /*#__PURE__*/_interopNamespace(SheetPrimitive);
35
33
  var TabsPrimitive__namespace = /*#__PURE__*/_interopNamespace(TabsPrimitive);
36
34
 
37
35
  // components/blocks/navbars/navbar-tabbed-sections.tsx
@@ -828,14 +826,14 @@ function PatternBackground({
828
826
  );
829
827
  }
830
828
  if (pattern in patternOverlays) {
831
- const Overlay2 = patternOverlays[pattern];
829
+ const Overlay = patternOverlays[pattern];
832
830
  return /* @__PURE__ */ jsxRuntime.jsx(
833
831
  "div",
834
832
  {
835
833
  className: cn("pointer-events-none absolute inset-0 z-0", className),
836
834
  style: { opacity, ...style },
837
835
  "aria-hidden": "true",
838
- children: Overlay2()
836
+ children: Overlay()
839
837
  }
840
838
  );
841
839
  }
@@ -1134,80 +1132,62 @@ function NavigationMenuLink({
1134
1132
  }
1135
1133
  );
1136
1134
  }
1137
- function Sheet({ ...props }) {
1138
- return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Root, { "data-slot": "sheet", ...props });
1139
- }
1140
- function SheetTrigger({
1141
- ...props
1142
- }) {
1143
- return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Trigger, { "data-slot": "sheet-trigger", ...props });
1144
- }
1145
- function SheetPortal({
1146
- ...props
1147
- }) {
1148
- return /* @__PURE__ */ jsxRuntime.jsx(SheetPrimitive__namespace.Portal, { "data-slot": "sheet-portal", ...props });
1149
- }
1150
- function SheetOverlay({
1135
+ var NavbarMobileMenu = ({
1136
+ open,
1137
+ onClose,
1138
+ children,
1151
1139
  className,
1152
- ...props
1153
- }) {
1154
- return /* @__PURE__ */ jsxRuntime.jsx(
1155
- SheetPrimitive__namespace.Overlay,
1140
+ contentClassName,
1141
+ title = "Mobile Navigation"
1142
+ }) => {
1143
+ React__namespace.useEffect(() => {
1144
+ if (open) {
1145
+ const originalOverflow = document.body.style.overflow;
1146
+ document.body.style.overflow = "hidden";
1147
+ return () => {
1148
+ document.body.style.overflow = originalOverflow;
1149
+ };
1150
+ }
1151
+ }, [open]);
1152
+ if (!open) return null;
1153
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1154
+ "div",
1156
1155
  {
1157
- "data-slot": "sheet-overlay",
1158
1156
  className: cn(
1159
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
1157
+ "fixed inset-0 z-[998] flex flex-col bg-background",
1158
+ "animate-in slide-in-from-top duration-300",
1159
+ "data-[state=closed]:animate-out data-[state=closed]:slide-out-to-top data-[state=closed]:duration-300",
1160
1160
  className
1161
1161
  ),
1162
- ...props
1163
- }
1164
- );
1165
- }
1166
- function SheetContent({
1167
- className,
1168
- children,
1169
- side = "right",
1170
- ...props
1171
- }) {
1172
- return /* @__PURE__ */ jsxRuntime.jsxs(SheetPortal, { children: [
1173
- /* @__PURE__ */ jsxRuntime.jsx(SheetOverlay, {}),
1174
- /* @__PURE__ */ jsxRuntime.jsxs(
1175
- SheetPrimitive__namespace.Content,
1176
- {
1177
- "data-slot": "sheet-content",
1178
- className: cn(
1179
- "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
1180
- side === "right" && "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",
1181
- side === "left" && "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",
1182
- side === "top" && "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b",
1183
- side === "bottom" && "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",
1184
- className
1185
- ),
1186
- ...props,
1187
- children: [
1188
- children,
1189
- /* @__PURE__ */ jsxRuntime.jsxs(SheetPrimitive__namespace.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
1190
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1191
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1192
- ] })
1193
- ]
1194
- }
1195
- )
1196
- ] });
1197
- }
1198
- function SheetTitle({
1199
- className,
1200
- ...props
1201
- }) {
1202
- return /* @__PURE__ */ jsxRuntime.jsx(
1203
- SheetPrimitive__namespace.Title,
1204
- {
1205
- "data-slot": "sheet-title",
1206
- className: cn("text-foreground font-semibold", className),
1207
- ...props
1162
+ "data-state": open ? "open" : "closed",
1163
+ children: [
1164
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsxRuntime.jsx("h2", { children: title }) }),
1165
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-4 right-4 z-10", children: /* @__PURE__ */ jsxRuntime.jsxs(
1166
+ "button",
1167
+ {
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
+ ]
1175
+ }
1176
+ ) }),
1177
+ /* @__PURE__ */ jsxRuntime.jsx(
1178
+ "div",
1179
+ {
1180
+ className: cn(
1181
+ "h-full overflow-y-auto pt-20 pb-8 px-4 sm:px-6",
1182
+ contentClassName
1183
+ ),
1184
+ children
1185
+ }
1186
+ )
1187
+ ]
1208
1188
  }
1209
1189
  );
1210
- }
1190
+ };
1211
1191
  function Tabs({
1212
1192
  className,
1213
1193
  ...props
@@ -1282,7 +1262,7 @@ function getNavbarLayoutClasses(layoutVariant = "fullScreenContainerizedLinks",
1282
1262
  // Outer container wrapper (only for floating bar - this containerizes the entire navbar)
1283
1263
  containerWrapperClasses: cn(
1284
1264
  "w-full",
1285
- isFloatingBar && "mx-auto w-full px-2 sm:px-4 lg:px-8 max-w-7xl relative z-10"
1265
+ isFloatingBar && "mx-auto container relative z-10 px-0 sm:px-0 lg:px-0"
1286
1266
  ),
1287
1267
  // Inner container classes (only for fullScreenContainerizedLinks - this containerizes the content inside the navbar)
1288
1268
  innerContainerClasses: cn(
@@ -1361,7 +1341,7 @@ var NavbarTabbedSections = ({
1361
1341
  TabsTrigger,
1362
1342
  {
1363
1343
  value: tab.id,
1364
- className: "rounded-none border-b-2 border-transparent px-4 pb-3 pt-2 data-[state=active]:border-primary data-[state=active]:bg-transparent data-[state=active]:shadow-none",
1344
+ className: "rounded-none border-b-2 border-transparent px-4 py-2 data-[state=active]:border-b-primary hover:border-b-primary data-[state=active]:bg-transparent data-[state=active]:shadow-none",
1365
1345
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
1366
1346
  tab.icon && /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: tab.icon, size: 16 }),
1367
1347
  tab.title
@@ -1374,12 +1354,12 @@ var NavbarTabbedSections = ({
1374
1354
  Pressable,
1375
1355
  {
1376
1356
  href: link.url,
1377
- className: "flex items-start gap-3 rounded-md p-3 hover:bg-accent",
1357
+ className: "flex items-start gap-3 rounded-md p-3 hover:bg-muted",
1378
1358
  children: [
1379
- link.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-0.5 flex h-8 w-8 shrink-0 items-center justify-center rounded-md border bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: link.icon, size: 16 }) }),
1359
+ link.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-0.5 flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-muted bg-background", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: link.icon, size: 16 }) }),
1380
1360
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1381
1361
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium", children: link.title }),
1382
- link.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-muted-foreground", children: link.description })
1362
+ link.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs", children: link.description })
1383
1363
  ] })
1384
1364
  ]
1385
1365
  }
@@ -1504,45 +1484,41 @@ var NavbarTabbedSections = ({
1504
1484
  children: renderAuthActions
1505
1485
  }
1506
1486
  ),
1507
- /* @__PURE__ */ jsxRuntime.jsxs(Sheet, { open: isOpen, onOpenChange: setIsOpen, children: [
1508
- /* @__PURE__ */ jsxRuntime.jsx(SheetTrigger, { asChild: true, className: "lg:hidden", children: /* @__PURE__ */ jsxRuntime.jsxs(
1509
- Pressable,
1510
- {
1511
- variant: "ghost",
1512
- size: "icon",
1513
- asButton: true,
1514
- onClick: () => {
1515
- },
1516
- children: [
1517
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1518
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Toggle menu" })
1519
- ]
1520
- }
1521
- ) }),
1522
- /* @__PURE__ */ jsxRuntime.jsxs(
1523
- SheetContent,
1524
- {
1525
- side: "right",
1526
- className: "w-[300px] overflow-y-auto",
1527
- children: [
1528
- /* @__PURE__ */ jsxRuntime.jsx(SheetTitle, { className: "sr-only", children: "Navigation Menu" }),
1529
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4 pt-8", children: [
1530
- renderMobileMenu,
1531
- /* @__PURE__ */ jsxRuntime.jsx(
1532
- "div",
1533
- {
1534
- className: cn(
1535
- "mt-4 flex flex-col gap-2 border-t pt-4",
1536
- actionsClassName
1537
- ),
1538
- children: renderAuthActions
1539
- }
1540
- )
1541
- ] })
1542
- ]
1543
- }
1544
- )
1545
- ] })
1487
+ /* @__PURE__ */ jsxRuntime.jsxs(
1488
+ Pressable,
1489
+ {
1490
+ variant: "ghost",
1491
+ size: "icon",
1492
+ asButton: true,
1493
+ className: "lg:hidden",
1494
+ onClick: () => setIsOpen(!isOpen),
1495
+ children: [
1496
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1497
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Toggle menu" })
1498
+ ]
1499
+ }
1500
+ ),
1501
+ /* @__PURE__ */ jsxRuntime.jsx(
1502
+ NavbarMobileMenu,
1503
+ {
1504
+ open: isOpen,
1505
+ onClose: () => setIsOpen(false),
1506
+ title: "Navigation Menu",
1507
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-4", children: [
1508
+ renderMobileMenu,
1509
+ /* @__PURE__ */ jsxRuntime.jsx(
1510
+ "div",
1511
+ {
1512
+ className: cn(
1513
+ "mt-4 flex flex-col gap-2 border-t pt-4",
1514
+ actionsClassName
1515
+ ),
1516
+ children: renderAuthActions
1517
+ }
1518
+ )
1519
+ ] }) })
1520
+ }
1521
+ )
1546
1522
  ]
1547
1523
  }
1548
1524
  ) }) }) })
@@ -7,7 +7,6 @@ import { cva } from 'class-variance-authority';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
8
  import { Img } from '@page-speed/img';
9
9
  import * as NavigationMenuPrimitive from '@radix-ui/react-navigation-menu';
10
- import * as SheetPrimitive from '@radix-ui/react-dialog';
11
10
  import * as TabsPrimitive from '@radix-ui/react-tabs';
12
11
 
13
12
  // components/blocks/navbars/navbar-tabbed-sections.tsx
@@ -804,14 +803,14 @@ function PatternBackground({
804
803
  );
805
804
  }
806
805
  if (pattern in patternOverlays) {
807
- const Overlay2 = patternOverlays[pattern];
806
+ const Overlay = patternOverlays[pattern];
808
807
  return /* @__PURE__ */ jsx(
809
808
  "div",
810
809
  {
811
810
  className: cn("pointer-events-none absolute inset-0 z-0", className),
812
811
  style: { opacity, ...style },
813
812
  "aria-hidden": "true",
814
- children: Overlay2()
813
+ children: Overlay()
815
814
  }
816
815
  );
817
816
  }
@@ -1110,80 +1109,62 @@ function NavigationMenuLink({
1110
1109
  }
1111
1110
  );
1112
1111
  }
1113
- function Sheet({ ...props }) {
1114
- return /* @__PURE__ */ jsx(SheetPrimitive.Root, { "data-slot": "sheet", ...props });
1115
- }
1116
- function SheetTrigger({
1117
- ...props
1118
- }) {
1119
- return /* @__PURE__ */ jsx(SheetPrimitive.Trigger, { "data-slot": "sheet-trigger", ...props });
1120
- }
1121
- function SheetPortal({
1122
- ...props
1123
- }) {
1124
- return /* @__PURE__ */ jsx(SheetPrimitive.Portal, { "data-slot": "sheet-portal", ...props });
1125
- }
1126
- function SheetOverlay({
1112
+ var NavbarMobileMenu = ({
1113
+ open,
1114
+ onClose,
1115
+ children,
1127
1116
  className,
1128
- ...props
1129
- }) {
1130
- return /* @__PURE__ */ jsx(
1131
- SheetPrimitive.Overlay,
1117
+ contentClassName,
1118
+ title = "Mobile Navigation"
1119
+ }) => {
1120
+ React.useEffect(() => {
1121
+ if (open) {
1122
+ const originalOverflow = document.body.style.overflow;
1123
+ document.body.style.overflow = "hidden";
1124
+ return () => {
1125
+ document.body.style.overflow = originalOverflow;
1126
+ };
1127
+ }
1128
+ }, [open]);
1129
+ if (!open) return null;
1130
+ return /* @__PURE__ */ jsxs(
1131
+ "div",
1132
1132
  {
1133
- "data-slot": "sheet-overlay",
1134
1133
  className: cn(
1135
- "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
1134
+ "fixed inset-0 z-[998] flex flex-col bg-background",
1135
+ "animate-in slide-in-from-top duration-300",
1136
+ "data-[state=closed]:animate-out data-[state=closed]:slide-out-to-top data-[state=closed]:duration-300",
1136
1137
  className
1137
1138
  ),
1138
- ...props
1139
- }
1140
- );
1141
- }
1142
- function SheetContent({
1143
- className,
1144
- children,
1145
- side = "right",
1146
- ...props
1147
- }) {
1148
- return /* @__PURE__ */ jsxs(SheetPortal, { children: [
1149
- /* @__PURE__ */ jsx(SheetOverlay, {}),
1150
- /* @__PURE__ */ jsxs(
1151
- SheetPrimitive.Content,
1152
- {
1153
- "data-slot": "sheet-content",
1154
- className: cn(
1155
- "bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
1156
- side === "right" && "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm",
1157
- side === "left" && "data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm",
1158
- side === "top" && "data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-x-0 top-0 h-auto border-b",
1159
- side === "bottom" && "data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-x-0 bottom-0 h-auto border-t",
1160
- className
1161
- ),
1162
- ...props,
1163
- children: [
1164
- children,
1165
- /* @__PURE__ */ jsxs(SheetPrimitive.Close, { className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none", children: [
1166
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1167
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1168
- ] })
1169
- ]
1170
- }
1171
- )
1172
- ] });
1173
- }
1174
- function SheetTitle({
1175
- className,
1176
- ...props
1177
- }) {
1178
- return /* @__PURE__ */ jsx(
1179
- SheetPrimitive.Title,
1180
- {
1181
- "data-slot": "sheet-title",
1182
- className: cn("text-foreground font-semibold", className),
1183
- ...props
1139
+ "data-state": open ? "open" : "closed",
1140
+ children: [
1141
+ /* @__PURE__ */ jsx("div", { className: "sr-only", children: /* @__PURE__ */ jsx("h2", { children: title }) }),
1142
+ /* @__PURE__ */ jsx("div", { className: "absolute top-4 right-4 z-10", children: /* @__PURE__ */ jsxs(
1143
+ "button",
1144
+ {
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
+ ]
1152
+ }
1153
+ ) }),
1154
+ /* @__PURE__ */ jsx(
1155
+ "div",
1156
+ {
1157
+ className: cn(
1158
+ "h-full overflow-y-auto pt-20 pb-8 px-4 sm:px-6",
1159
+ contentClassName
1160
+ ),
1161
+ children
1162
+ }
1163
+ )
1164
+ ]
1184
1165
  }
1185
1166
  );
1186
- }
1167
+ };
1187
1168
  function Tabs({
1188
1169
  className,
1189
1170
  ...props
@@ -1258,7 +1239,7 @@ function getNavbarLayoutClasses(layoutVariant = "fullScreenContainerizedLinks",
1258
1239
  // Outer container wrapper (only for floating bar - this containerizes the entire navbar)
1259
1240
  containerWrapperClasses: cn(
1260
1241
  "w-full",
1261
- isFloatingBar && "mx-auto w-full px-2 sm:px-4 lg:px-8 max-w-7xl relative z-10"
1242
+ isFloatingBar && "mx-auto container relative z-10 px-0 sm:px-0 lg:px-0"
1262
1243
  ),
1263
1244
  // Inner container classes (only for fullScreenContainerizedLinks - this containerizes the content inside the navbar)
1264
1245
  innerContainerClasses: cn(
@@ -1337,7 +1318,7 @@ var NavbarTabbedSections = ({
1337
1318
  TabsTrigger,
1338
1319
  {
1339
1320
  value: tab.id,
1340
- className: "rounded-none border-b-2 border-transparent px-4 pb-3 pt-2 data-[state=active]:border-primary data-[state=active]:bg-transparent data-[state=active]:shadow-none",
1321
+ className: "rounded-none border-b-2 border-transparent px-4 py-2 data-[state=active]:border-b-primary hover:border-b-primary data-[state=active]:bg-transparent data-[state=active]:shadow-none",
1341
1322
  children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
1342
1323
  tab.icon && /* @__PURE__ */ jsx(DynamicIcon, { name: tab.icon, size: 16 }),
1343
1324
  tab.title
@@ -1350,12 +1331,12 @@ var NavbarTabbedSections = ({
1350
1331
  Pressable,
1351
1332
  {
1352
1333
  href: link.url,
1353
- className: "flex items-start gap-3 rounded-md p-3 hover:bg-accent",
1334
+ className: "flex items-start gap-3 rounded-md p-3 hover:bg-muted",
1354
1335
  children: [
1355
- link.icon && /* @__PURE__ */ jsx("div", { className: "mt-0.5 flex h-8 w-8 shrink-0 items-center justify-center rounded-md border bg-background", children: /* @__PURE__ */ jsx(DynamicIcon, { name: link.icon, size: 16 }) }),
1336
+ link.icon && /* @__PURE__ */ jsx("div", { className: "mt-0.5 flex h-8 w-8 shrink-0 items-center justify-center rounded-md border border-muted bg-background", children: /* @__PURE__ */ jsx(DynamicIcon, { name: link.icon, size: 16 }) }),
1356
1337
  /* @__PURE__ */ jsxs("div", { children: [
1357
1338
  /* @__PURE__ */ jsx("div", { className: "text-sm font-medium", children: link.title }),
1358
- link.description && /* @__PURE__ */ jsx("p", { className: "text-xs text-muted-foreground", children: link.description })
1339
+ link.description && /* @__PURE__ */ jsx("p", { className: "text-xs", children: link.description })
1359
1340
  ] })
1360
1341
  ]
1361
1342
  }
@@ -1480,45 +1461,41 @@ var NavbarTabbedSections = ({
1480
1461
  children: renderAuthActions
1481
1462
  }
1482
1463
  ),
1483
- /* @__PURE__ */ jsxs(Sheet, { open: isOpen, onOpenChange: setIsOpen, children: [
1484
- /* @__PURE__ */ jsx(SheetTrigger, { asChild: true, className: "lg:hidden", children: /* @__PURE__ */ jsxs(
1485
- Pressable,
1486
- {
1487
- variant: "ghost",
1488
- size: "icon",
1489
- asButton: true,
1490
- onClick: () => {
1491
- },
1492
- children: [
1493
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1494
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1495
- ]
1496
- }
1497
- ) }),
1498
- /* @__PURE__ */ jsxs(
1499
- SheetContent,
1500
- {
1501
- side: "right",
1502
- className: "w-[300px] overflow-y-auto",
1503
- children: [
1504
- /* @__PURE__ */ jsx(SheetTitle, { className: "sr-only", children: "Navigation Menu" }),
1505
- /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4 pt-8", children: [
1506
- renderMobileMenu,
1507
- /* @__PURE__ */ jsx(
1508
- "div",
1509
- {
1510
- className: cn(
1511
- "mt-4 flex flex-col gap-2 border-t pt-4",
1512
- actionsClassName
1513
- ),
1514
- children: renderAuthActions
1515
- }
1516
- )
1517
- ] })
1518
- ]
1519
- }
1520
- )
1521
- ] })
1464
+ /* @__PURE__ */ jsxs(
1465
+ Pressable,
1466
+ {
1467
+ variant: "ghost",
1468
+ size: "icon",
1469
+ asButton: true,
1470
+ className: "lg:hidden",
1471
+ onClick: () => setIsOpen(!isOpen),
1472
+ children: [
1473
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1474
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1475
+ ]
1476
+ }
1477
+ ),
1478
+ /* @__PURE__ */ jsx(
1479
+ NavbarMobileMenu,
1480
+ {
1481
+ open: isOpen,
1482
+ onClose: () => setIsOpen(false),
1483
+ title: "Navigation Menu",
1484
+ children: /* @__PURE__ */ jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-4", children: [
1485
+ renderMobileMenu,
1486
+ /* @__PURE__ */ jsx(
1487
+ "div",
1488
+ {
1489
+ className: cn(
1490
+ "mt-4 flex flex-col gap-2 border-t pt-4",
1491
+ actionsClassName
1492
+ ),
1493
+ children: renderAuthActions
1494
+ }
1495
+ )
1496
+ ] }) })
1497
+ }
1498
+ )
1522
1499
  ]
1523
1500
  }
1524
1501
  ) }) }) })
@@ -1103,7 +1103,7 @@ function getNavbarLayoutClasses(layoutVariant = "fullScreenContainerizedLinks",
1103
1103
  // Outer container wrapper (only for floating bar - this containerizes the entire navbar)
1104
1104
  containerWrapperClasses: cn(
1105
1105
  "w-full",
1106
- isFloatingBar && "mx-auto w-full px-2 sm:px-4 lg:px-8 max-w-7xl relative z-10"
1106
+ isFloatingBar && "mx-auto container relative z-10 px-0 sm:px-0 lg:px-0"
1107
1107
  ),
1108
1108
  // Inner container classes (only for fullScreenContainerizedLinks - this containerizes the content inside the navbar)
1109
1109
  innerContainerClasses: cn(
@@ -1081,7 +1081,7 @@ function getNavbarLayoutClasses(layoutVariant = "fullScreenContainerizedLinks",
1081
1081
  // Outer container wrapper (only for floating bar - this containerizes the entire navbar)
1082
1082
  containerWrapperClasses: cn(
1083
1083
  "w-full",
1084
- isFloatingBar && "mx-auto w-full px-2 sm:px-4 lg:px-8 max-w-7xl relative z-10"
1084
+ isFloatingBar && "mx-auto container relative z-10 px-0 sm:px-0 lg:px-0"
1085
1085
  ),
1086
1086
  // Inner container classes (only for fullScreenContainerizedLinks - this containerizes the content inside the navbar)
1087
1087
  innerContainerClasses: cn(