@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.
- package/dist/navbar-animated-preview.cjs +67 -82
- package/dist/navbar-animated-preview.js +67 -81
- package/dist/navbar-centered-menu.cjs +101 -125
- package/dist/navbar-centered-menu.js +101 -124
- package/dist/navbar-dark-icons.cjs +67 -81
- package/dist/navbar-dark-icons.js +67 -80
- package/dist/navbar-dropdown-menu.cjs +87 -122
- package/dist/navbar-dropdown-menu.js +87 -121
- package/dist/navbar-education-platform.cjs +1 -1
- package/dist/navbar-education-platform.js +1 -1
- package/dist/navbar-enterprise-mega.cjs +7 -7
- package/dist/navbar-enterprise-mega.js +7 -7
- package/dist/navbar-feature-grid.cjs +131 -150
- package/dist/navbar-feature-grid.d.cts +9 -1
- package/dist/navbar-feature-grid.d.ts +9 -1
- package/dist/navbar-feature-grid.js +131 -149
- package/dist/navbar-floating-pill.cjs +2 -2
- package/dist/navbar-floating-pill.js +2 -2
- package/dist/navbar-fullscreen-menu.cjs +1 -1
- package/dist/navbar-fullscreen-menu.js +1 -1
- package/dist/navbar-icon-links.cjs +102 -138
- package/dist/navbar-icon-links.js +102 -137
- package/dist/navbar-image-preview.cjs +64 -95
- package/dist/navbar-image-preview.js +64 -94
- package/dist/navbar-mega-menu.cjs +1 -1
- package/dist/navbar-mega-menu.js +1 -1
- package/dist/navbar-multi-column-groups.cjs +67 -81
- package/dist/navbar-multi-column-groups.js +67 -80
- package/dist/navbar-platform-resources.cjs +80 -42
- package/dist/navbar-platform-resources.js +80 -42
- package/dist/navbar-search-focused.cjs +76 -93
- package/dist/navbar-search-focused.js +76 -92
- package/dist/navbar-sidebar-mobile.cjs +76 -93
- package/dist/navbar-sidebar-mobile.js +76 -92
- package/dist/navbar-simple-links.cjs +1 -1
- package/dist/navbar-simple-links.js +1 -1
- package/dist/navbar-split-cta.cjs +78 -95
- package/dist/navbar-split-cta.js +78 -94
- package/dist/navbar-sticky-compact.cjs +82 -100
- package/dist/navbar-sticky-compact.js +82 -99
- package/dist/navbar-tabbed-sections.cjs +91 -115
- package/dist/navbar-tabbed-sections.js +91 -114
- package/dist/navbar-transparent-overlay.cjs +1 -1
- package/dist/navbar-transparent-overlay.js +1 -1
- package/dist/registry.cjs +594 -618
- package/dist/registry.js +593 -617
- 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
|
|
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:
|
|
836
|
+
children: Overlay()
|
|
839
837
|
}
|
|
840
838
|
);
|
|
841
839
|
}
|
|
@@ -1134,80 +1132,62 @@ function NavigationMenuLink({
|
|
|
1134
1132
|
}
|
|
1135
1133
|
);
|
|
1136
1134
|
}
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
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
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
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
|
-
"
|
|
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
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
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
|
|
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
|
|
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-
|
|
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
|
|
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(
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
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
|
|
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:
|
|
813
|
+
children: Overlay()
|
|
815
814
|
}
|
|
816
815
|
);
|
|
817
816
|
}
|
|
@@ -1110,80 +1109,62 @@ function NavigationMenuLink({
|
|
|
1110
1109
|
}
|
|
1111
1110
|
);
|
|
1112
1111
|
}
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
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
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
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
|
-
"
|
|
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
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
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
|
|
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
|
|
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-
|
|
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
|
|
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(
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1512
|
-
|
|
1513
|
-
|
|
1514
|
-
|
|
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
|
|
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
|
|
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(
|