@opensite/ui 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/navbar-animated-preview.cjs +15 -11
  2. package/dist/navbar-animated-preview.js +15 -11
  3. package/dist/navbar-centered-menu.cjs +8 -4
  4. package/dist/navbar-centered-menu.js +8 -4
  5. package/dist/navbar-dark-icons.cjs +8 -4
  6. package/dist/navbar-dark-icons.js +8 -4
  7. package/dist/navbar-dropdown-menu.cjs +8 -4
  8. package/dist/navbar-dropdown-menu.js +8 -4
  9. package/dist/navbar-education-platform.cjs +8 -4
  10. package/dist/navbar-education-platform.js +8 -4
  11. package/dist/navbar-enterprise-mega.cjs +8 -4
  12. package/dist/navbar-enterprise-mega.js +8 -4
  13. package/dist/navbar-feature-grid.cjs +8 -4
  14. package/dist/navbar-feature-grid.js +8 -4
  15. package/dist/navbar-icon-links.cjs +8 -4
  16. package/dist/navbar-icon-links.js +8 -4
  17. package/dist/navbar-image-preview.cjs +8 -4
  18. package/dist/navbar-image-preview.js +8 -4
  19. package/dist/navbar-mega-menu.cjs +8 -4
  20. package/dist/navbar-mega-menu.js +8 -4
  21. package/dist/navbar-multi-column-groups.cjs +8 -4
  22. package/dist/navbar-multi-column-groups.js +8 -4
  23. package/dist/navbar-platform-resources.cjs +8 -4
  24. package/dist/navbar-platform-resources.js +8 -4
  25. package/dist/navbar-search-focused.cjs +179 -97
  26. package/dist/navbar-search-focused.js +179 -97
  27. package/dist/navbar-sidebar-mobile.cjs +8 -4
  28. package/dist/navbar-sidebar-mobile.js +8 -4
  29. package/dist/navbar-simple-links.cjs +8 -4
  30. package/dist/navbar-simple-links.js +8 -4
  31. package/dist/navbar-split-cta.cjs +8 -4
  32. package/dist/navbar-split-cta.js +8 -4
  33. package/dist/navbar-sticky-compact.cjs +10 -16
  34. package/dist/navbar-sticky-compact.js +10 -16
  35. package/dist/navbar-tabbed-sections.cjs +8 -4
  36. package/dist/navbar-tabbed-sections.js +8 -4
  37. package/dist/navbar-transparent-overlay.cjs +9 -4
  38. package/dist/navbar-transparent-overlay.js +9 -4
  39. package/dist/registry.cjs +175 -118
  40. package/dist/registry.js +175 -118
  41. package/package.json +1 -1
@@ -970,6 +970,22 @@ var NavbarLogo = ({
970
970
  }
971
971
  );
972
972
  };
973
+ function Input({ className, type, ...props }) {
974
+ return /* @__PURE__ */ jsx(
975
+ "input",
976
+ {
977
+ type,
978
+ "data-slot": "input",
979
+ className: cn(
980
+ "file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
981
+ "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]",
982
+ "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",
983
+ className
984
+ ),
985
+ ...props
986
+ }
987
+ );
988
+ }
973
989
  function NavigationMenu({
974
990
  className,
975
991
  children,
@@ -1071,7 +1087,8 @@ var NavbarMobileMenu = ({
1071
1087
  children,
1072
1088
  className,
1073
1089
  contentClassName,
1074
- closeContainerClassName = "",
1090
+ closeContainerClassName,
1091
+ closeIconClassName,
1075
1092
  title = "Mobile Navigation"
1076
1093
  }) => {
1077
1094
  React.useEffect(() => {
@@ -1100,14 +1117,17 @@ var NavbarMobileMenu = ({
1100
1117
  "div",
1101
1118
  {
1102
1119
  className: cn(
1103
- closeContainerClassName,
1104
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1120
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1121
+ closeContainerClassName
1105
1122
  ),
1106
1123
  children: /* @__PURE__ */ jsxs(
1107
1124
  "button",
1108
1125
  {
1109
1126
  onClick: onClose,
1110
- 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",
1127
+ className: cn(
1128
+ "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",
1129
+ closeIconClassName
1130
+ ),
1111
1131
  "aria-label": "Close mobile menu",
1112
1132
  children: [
1113
1133
  /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1193,6 +1213,11 @@ var NavbarSearchFocused = ({
1193
1213
  optixFlowConfig
1194
1214
  }) => {
1195
1215
  const [isOpen, setIsOpen] = useState(false);
1216
+ const [searchQuery, setSearchQuery] = useState("");
1217
+ const handleSearchSubmit = (e) => {
1218
+ e.preventDefault();
1219
+ onSearch?.(searchQuery);
1220
+ };
1196
1221
  const renderNavigation = (items) => {
1197
1222
  if (navigationSlot) return navigationSlot;
1198
1223
  if (!items || items.length === 0) return null;
@@ -1238,7 +1263,7 @@ var NavbarSearchFocused = ({
1238
1263
  );
1239
1264
  });
1240
1265
  }, [authActionsSlot, authActions]);
1241
- const renderMobileMenuActions = useMemo(() => {
1266
+ useMemo(() => {
1242
1267
  if (mobileMenuActionsSlot) return mobileMenuActionsSlot;
1243
1268
  if (!mobileMenuActions || mobileMenuActions.length === 0) return null;
1244
1269
  return /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2", children: mobileMenuActions.map((action, index) => {
@@ -1267,100 +1292,157 @@ var NavbarSearchFocused = ({
1267
1292
  sectionContainerMaxWidth,
1268
1293
  spacingOverride
1269
1294
  } = getNavbarLayoutClasses(layoutVariant, { className, containerClassName });
1270
- return /* @__PURE__ */ jsx(
1271
- Section,
1272
- {
1273
- background,
1274
- spacing: spacingOverride ?? spacing,
1275
- className: sectionClasses,
1276
- pattern,
1277
- patternOpacity,
1278
- containerClassName: sectionContainerClassName,
1279
- containerMaxWidth: sectionContainerMaxWidth,
1280
- children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxs(
1281
- "nav",
1282
- {
1283
- className: cn(
1284
- "flex items-center gap-4 py-3 lg:gap-8",
1285
- navClassName
1286
- ),
1287
- children: [
1288
- /* @__PURE__ */ jsx(
1289
- NavbarLogo,
1290
- {
1291
- logo,
1292
- logoSlot,
1293
- logoClassName,
1294
- optixFlowConfig
1295
- }
1296
- ),
1297
- /* @__PURE__ */ jsx(
1298
- NavigationMenu,
1299
- {
1300
- className: cn("hidden lg:flex", navigationMenuClassName),
1301
- children: renderNavigation(navItems?.slice(0, 2) ?? [])
1302
- }
1303
- ),
1304
- /* @__PURE__ */ jsx(
1305
- NavigationMenu,
1306
- {
1307
- className: cn("hidden lg:flex", navigationMenuClassName),
1308
- children: renderNavigation(navItems?.slice(2) ?? [])
1309
- }
1295
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
1296
+ /* @__PURE__ */ jsx(
1297
+ Section,
1298
+ {
1299
+ background,
1300
+ spacing: spacingOverride ?? spacing,
1301
+ className: sectionClasses,
1302
+ pattern,
1303
+ patternOpacity,
1304
+ containerClassName: sectionContainerClassName,
1305
+ containerMaxWidth: sectionContainerMaxWidth,
1306
+ children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxs(
1307
+ "nav",
1308
+ {
1309
+ className: cn(
1310
+ "flex items-center justify-between gap-4 py-3 lg:gap-6",
1311
+ navClassName
1310
1312
  ),
1311
- /* @__PURE__ */ jsx(
1312
- "div",
1313
- {
1314
- className: cn(
1315
- "hidden shrink-0 items-center gap-2 lg:flex",
1316
- actionsClassName
1313
+ children: [
1314
+ /* @__PURE__ */ jsx(
1315
+ NavbarLogo,
1316
+ {
1317
+ logo,
1318
+ logoSlot,
1319
+ logoClassName,
1320
+ optixFlowConfig
1321
+ }
1322
+ ),
1323
+ /* @__PURE__ */ jsx(
1324
+ NavigationMenu,
1325
+ {
1326
+ className: cn("hidden lg:flex", navigationMenuClassName),
1327
+ children: renderNavigation(navItems ?? [])
1328
+ }
1329
+ ),
1330
+ /* @__PURE__ */ jsx("div", { className: "hidden flex-1 max-w-md lg:block", children: searchSlot ?? /* @__PURE__ */ jsxs("form", { onSubmit: handleSearchSubmit, className: "relative", children: [
1331
+ /* @__PURE__ */ jsx(
1332
+ DynamicIcon,
1333
+ {
1334
+ name: "lucide/search",
1335
+ size: 16,
1336
+ className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"
1337
+ }
1317
1338
  ),
1318
- children: renderAuthActions
1319
- }
1320
- ),
1321
- /* @__PURE__ */ jsxs(
1322
- Pressable,
1323
- {
1324
- variant: "ghost",
1325
- size: "icon",
1326
- asButton: true,
1327
- className: "lg:hidden",
1328
- onClick: () => setIsOpen(!isOpen),
1329
- children: [
1330
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1331
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1332
- ]
1333
- }
1334
- ),
1335
- /* @__PURE__ */ jsx(
1336
- NavbarMobileMenu,
1337
- {
1338
- open: isOpen,
1339
- onClose: () => setIsOpen(false),
1340
- title: "Navigation Menu",
1341
- children: /* @__PURE__ */ jsxs("div", { className: "max-w-screen-sm mx-auto", children: [
1342
- /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2", children: navItems?.map((item, index) => /* @__PURE__ */ jsxs(
1343
- Pressable,
1344
- {
1345
- href: item.url,
1346
- className: "flex items-center gap-2 rounded-md py-2 text-base font-medium",
1347
- onClick: () => setIsOpen(false),
1348
- children: [
1349
- item.icon ?? (item.iconName && /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 })),
1350
- item.title
1351
- ]
1352
- },
1353
- index
1354
- )) }),
1355
- /* @__PURE__ */ jsx("div", { className: "border-t pt-4 mt-6", children: renderMobileMenuActions })
1356
- ] })
1357
- }
1358
- )
1359
- ]
1360
- }
1361
- ) }) }) })
1362
- }
1363
- );
1339
+ /* @__PURE__ */ jsx(
1340
+ Input,
1341
+ {
1342
+ type: "search",
1343
+ placeholder: typeof searchPlaceholder === "string" ? searchPlaceholder : "Search...",
1344
+ value: searchQuery,
1345
+ onChange: (e) => setSearchQuery(e.target.value),
1346
+ className: "pl-9 pr-4"
1347
+ }
1348
+ )
1349
+ ] }) }),
1350
+ /* @__PURE__ */ jsx(
1351
+ "div",
1352
+ {
1353
+ className: cn(
1354
+ "hidden shrink-0 items-center gap-2 lg:flex",
1355
+ actionsClassName
1356
+ ),
1357
+ children: renderAuthActions
1358
+ }
1359
+ ),
1360
+ /* @__PURE__ */ jsxs(
1361
+ Pressable,
1362
+ {
1363
+ variant: "ghost",
1364
+ size: "icon",
1365
+ asButton: true,
1366
+ className: "lg:hidden",
1367
+ onClick: () => setIsOpen(!isOpen),
1368
+ children: [
1369
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1370
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1371
+ ]
1372
+ }
1373
+ )
1374
+ ]
1375
+ }
1376
+ ) }) }) })
1377
+ }
1378
+ ),
1379
+ /* @__PURE__ */ jsx(
1380
+ MobileNavigationMenu,
1381
+ {
1382
+ open: isOpen,
1383
+ setOpen: setIsOpen,
1384
+ navItems: navItems ?? [],
1385
+ navigationSlot,
1386
+ mobileMenuActions: mobileMenuActions ?? authActions,
1387
+ mobileMenuActionsSlot: mobileMenuActionsSlot ?? authActionsSlot
1388
+ }
1389
+ )
1390
+ ] });
1391
+ };
1392
+ var MobileNavigationMenu = ({
1393
+ open,
1394
+ setOpen,
1395
+ navItems,
1396
+ navigationSlot,
1397
+ mobileMenuActions,
1398
+ mobileMenuActionsSlot
1399
+ }) => {
1400
+ const handleClose = () => setOpen(false);
1401
+ const renderMobileActions = useMemo(() => {
1402
+ if (mobileMenuActionsSlot) return mobileMenuActionsSlot;
1403
+ if (!mobileMenuActions || mobileMenuActions.length === 0) return null;
1404
+ return /* @__PURE__ */ jsx("div", { className: "mt-6 flex flex-col gap-4", children: mobileMenuActions.map((action, index) => {
1405
+ const {
1406
+ label,
1407
+ icon,
1408
+ iconAfter,
1409
+ children,
1410
+ className: actionClassName,
1411
+ ...pressableProps
1412
+ } = action;
1413
+ return /* @__PURE__ */ jsx(
1414
+ Pressable,
1415
+ {
1416
+ asButton: true,
1417
+ className: cn("w-full", actionClassName),
1418
+ onClick: handleClose,
1419
+ ...pressableProps,
1420
+ children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
1421
+ icon,
1422
+ label,
1423
+ iconAfter
1424
+ ] })
1425
+ },
1426
+ index
1427
+ );
1428
+ }) });
1429
+ }, [mobileMenuActionsSlot, mobileMenuActions]);
1430
+ return /* @__PURE__ */ jsx(NavbarMobileMenu, { open, onClose: handleClose, title: "Navigation Menu", children: /* @__PURE__ */ jsx("div", { className: "max-w-screen-sm mx-auto", children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6", children: [
1431
+ navigationSlot ?? /* @__PURE__ */ jsx("nav", { className: "flex flex-col", children: navItems.map((item, index) => /* @__PURE__ */ jsxs(
1432
+ Pressable,
1433
+ {
1434
+ href: item.url,
1435
+ className: "flex h-15 items-center gap-2 rounded-md px-4 text-left text-base leading-[3.75] font-normal text-muted-foreground ring-ring/10 outline-ring/50 transition-all hover:bg-muted focus-visible:ring-4 focus-visible:outline-1",
1436
+ onClick: handleClose,
1437
+ children: [
1438
+ item.icon ?? (item.iconName && /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 })),
1439
+ item.title
1440
+ ]
1441
+ },
1442
+ `nav-link-${index}`
1443
+ )) }),
1444
+ renderMobileActions
1445
+ ] }) }) });
1364
1446
  };
1365
1447
 
1366
1448
  export { NavbarSearchFocused };
@@ -1198,7 +1198,8 @@ var NavbarMobileMenu = ({
1198
1198
  children,
1199
1199
  className,
1200
1200
  contentClassName,
1201
- closeContainerClassName = "",
1201
+ closeContainerClassName,
1202
+ closeIconClassName,
1202
1203
  title = "Mobile Navigation"
1203
1204
  }) => {
1204
1205
  React__namespace.useEffect(() => {
@@ -1227,14 +1228,17 @@ var NavbarMobileMenu = ({
1227
1228
  "div",
1228
1229
  {
1229
1230
  className: cn(
1230
- closeContainerClassName,
1231
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1231
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1232
+ closeContainerClassName
1232
1233
  ),
1233
1234
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1234
1235
  "button",
1235
1236
  {
1236
1237
  onClick: onClose,
1237
- 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",
1238
+ className: cn(
1239
+ "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",
1240
+ closeIconClassName
1241
+ ),
1238
1242
  "aria-label": "Close mobile menu",
1239
1243
  children: [
1240
1244
  /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1175,7 +1175,8 @@ var NavbarMobileMenu = ({
1175
1175
  children,
1176
1176
  className,
1177
1177
  contentClassName,
1178
- closeContainerClassName = "",
1178
+ closeContainerClassName,
1179
+ closeIconClassName,
1179
1180
  title = "Mobile Navigation"
1180
1181
  }) => {
1181
1182
  React.useEffect(() => {
@@ -1204,14 +1205,17 @@ var NavbarMobileMenu = ({
1204
1205
  "div",
1205
1206
  {
1206
1207
  className: cn(
1207
- closeContainerClassName,
1208
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1208
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1209
+ closeContainerClassName
1209
1210
  ),
1210
1211
  children: /* @__PURE__ */ jsxs(
1211
1212
  "button",
1212
1213
  {
1213
1214
  onClick: onClose,
1214
- 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",
1215
+ className: cn(
1216
+ "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",
1217
+ closeIconClassName
1218
+ ),
1215
1219
  "aria-label": "Close mobile menu",
1216
1220
  children: [
1217
1221
  /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1093,7 +1093,8 @@ var NavbarMobileMenu = ({
1093
1093
  children,
1094
1094
  className,
1095
1095
  contentClassName,
1096
- closeContainerClassName = "",
1096
+ closeContainerClassName,
1097
+ closeIconClassName,
1097
1098
  title = "Mobile Navigation"
1098
1099
  }) => {
1099
1100
  React__namespace.useEffect(() => {
@@ -1122,14 +1123,17 @@ var NavbarMobileMenu = ({
1122
1123
  "div",
1123
1124
  {
1124
1125
  className: cn(
1125
- closeContainerClassName,
1126
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1126
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1127
+ closeContainerClassName
1127
1128
  ),
1128
1129
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1129
1130
  "button",
1130
1131
  {
1131
1132
  onClick: onClose,
1132
- 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",
1133
+ className: cn(
1134
+ "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",
1135
+ closeIconClassName
1136
+ ),
1133
1137
  "aria-label": "Close mobile menu",
1134
1138
  children: [
1135
1139
  /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1071,7 +1071,8 @@ var NavbarMobileMenu = ({
1071
1071
  children,
1072
1072
  className,
1073
1073
  contentClassName,
1074
- closeContainerClassName = "",
1074
+ closeContainerClassName,
1075
+ closeIconClassName,
1075
1076
  title = "Mobile Navigation"
1076
1077
  }) => {
1077
1078
  React.useEffect(() => {
@@ -1100,14 +1101,17 @@ var NavbarMobileMenu = ({
1100
1101
  "div",
1101
1102
  {
1102
1103
  className: cn(
1103
- closeContainerClassName,
1104
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1104
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1105
+ closeContainerClassName
1105
1106
  ),
1106
1107
  children: /* @__PURE__ */ jsxs(
1107
1108
  "button",
1108
1109
  {
1109
1110
  onClick: onClose,
1110
- 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",
1111
+ className: cn(
1112
+ "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",
1113
+ closeIconClassName
1114
+ ),
1111
1115
  "aria-label": "Close mobile menu",
1112
1116
  children: [
1113
1117
  /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1136,7 +1136,8 @@ var NavbarMobileMenu = ({
1136
1136
  children,
1137
1137
  className,
1138
1138
  contentClassName,
1139
- closeContainerClassName = "",
1139
+ closeContainerClassName,
1140
+ closeIconClassName,
1140
1141
  title = "Mobile Navigation"
1141
1142
  }) => {
1142
1143
  React__namespace.useEffect(() => {
@@ -1165,14 +1166,17 @@ var NavbarMobileMenu = ({
1165
1166
  "div",
1166
1167
  {
1167
1168
  className: cn(
1168
- closeContainerClassName,
1169
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1169
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1170
+ closeContainerClassName
1170
1171
  ),
1171
1172
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1172
1173
  "button",
1173
1174
  {
1174
1175
  onClick: onClose,
1175
- 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",
1176
+ className: cn(
1177
+ "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
+ closeIconClassName
1179
+ ),
1176
1180
  "aria-label": "Close mobile menu",
1177
1181
  children: [
1178
1182
  /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1114,7 +1114,8 @@ var NavbarMobileMenu = ({
1114
1114
  children,
1115
1115
  className,
1116
1116
  contentClassName,
1117
- closeContainerClassName = "",
1117
+ closeContainerClassName,
1118
+ closeIconClassName,
1118
1119
  title = "Mobile Navigation"
1119
1120
  }) => {
1120
1121
  React.useEffect(() => {
@@ -1143,14 +1144,17 @@ var NavbarMobileMenu = ({
1143
1144
  "div",
1144
1145
  {
1145
1146
  className: cn(
1146
- closeContainerClassName,
1147
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1147
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1148
+ closeContainerClassName
1148
1149
  ),
1149
1150
  children: /* @__PURE__ */ jsxs(
1150
1151
  "button",
1151
1152
  {
1152
1153
  onClick: onClose,
1153
- 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",
1154
+ className: cn(
1155
+ "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",
1156
+ closeIconClassName
1157
+ ),
1154
1158
  "aria-label": "Close mobile menu",
1155
1159
  children: [
1156
1160
  /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1198,7 +1198,8 @@ var NavbarMobileMenu = ({
1198
1198
  children,
1199
1199
  className,
1200
1200
  contentClassName,
1201
- closeContainerClassName = "",
1201
+ closeContainerClassName,
1202
+ closeIconClassName,
1202
1203
  title = "Mobile Navigation"
1203
1204
  }) => {
1204
1205
  React__namespace.useEffect(() => {
@@ -1227,14 +1228,17 @@ var NavbarMobileMenu = ({
1227
1228
  "div",
1228
1229
  {
1229
1230
  className: cn(
1230
- closeContainerClassName,
1231
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1231
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1232
+ closeContainerClassName
1232
1233
  ),
1233
1234
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1234
1235
  "button",
1235
1236
  {
1236
1237
  onClick: onClose,
1237
- 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",
1238
+ className: cn(
1239
+ "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",
1240
+ closeIconClassName
1241
+ ),
1238
1242
  "aria-label": "Close mobile menu",
1239
1243
  children: [
1240
1244
  /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1431,11 +1435,7 @@ var NavbarStickyCompact = ({
1431
1435
  {
1432
1436
  logo,
1433
1437
  logoSlot,
1434
- logoClassName: cn(
1435
- isScrolled ? "[&_img]:h-6 [&_span]:text-base" : "[&_img]:h-8 [&_span]:text-lg",
1436
- "[&_img]:transition-all [&_img]:duration-300 [&_span]:transition-all [&_span]:duration-300",
1437
- logoClassName
1438
- ),
1438
+ logoClassName,
1439
1439
  optixFlowConfig
1440
1440
  }
1441
1441
  ),
@@ -1459,13 +1459,7 @@ var NavbarStickyCompact = ({
1459
1459
  className: "lg:hidden transition-all duration-300",
1460
1460
  onClick: () => setIsOpen(!isOpen),
1461
1461
  children: [
1462
- /* @__PURE__ */ jsxRuntime.jsx(
1463
- DynamicIcon,
1464
- {
1465
- name: "lucide/menu",
1466
- size: isScrolled ? 18 : 20
1467
- }
1468
- ),
1462
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/menu", size: isScrolled ? 18 : 20 }),
1469
1463
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Toggle menu" })
1470
1464
  ]
1471
1465
  }
@@ -1175,7 +1175,8 @@ var NavbarMobileMenu = ({
1175
1175
  children,
1176
1176
  className,
1177
1177
  contentClassName,
1178
- closeContainerClassName = "",
1178
+ closeContainerClassName,
1179
+ closeIconClassName,
1179
1180
  title = "Mobile Navigation"
1180
1181
  }) => {
1181
1182
  React.useEffect(() => {
@@ -1204,14 +1205,17 @@ var NavbarMobileMenu = ({
1204
1205
  "div",
1205
1206
  {
1206
1207
  className: cn(
1207
- closeContainerClassName,
1208
- "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen"
1208
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1209
+ closeContainerClassName
1209
1210
  ),
1210
1211
  children: /* @__PURE__ */ jsxs(
1211
1212
  "button",
1212
1213
  {
1213
1214
  onClick: onClose,
1214
- 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",
1215
+ className: cn(
1216
+ "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",
1217
+ closeIconClassName
1218
+ ),
1215
1219
  "aria-label": "Close mobile menu",
1216
1220
  children: [
1217
1221
  /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
@@ -1408,11 +1412,7 @@ var NavbarStickyCompact = ({
1408
1412
  {
1409
1413
  logo,
1410
1414
  logoSlot,
1411
- logoClassName: cn(
1412
- isScrolled ? "[&_img]:h-6 [&_span]:text-base" : "[&_img]:h-8 [&_span]:text-lg",
1413
- "[&_img]:transition-all [&_img]:duration-300 [&_span]:transition-all [&_span]:duration-300",
1414
- logoClassName
1415
- ),
1415
+ logoClassName,
1416
1416
  optixFlowConfig
1417
1417
  }
1418
1418
  ),
@@ -1436,13 +1436,7 @@ var NavbarStickyCompact = ({
1436
1436
  className: "lg:hidden transition-all duration-300",
1437
1437
  onClick: () => setIsOpen(!isOpen),
1438
1438
  children: [
1439
- /* @__PURE__ */ jsx(
1440
- DynamicIcon,
1441
- {
1442
- name: "lucide/menu",
1443
- size: isScrolled ? 18 : 20
1444
- }
1445
- ),
1439
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: isScrolled ? 18 : 20 }),
1446
1440
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1447
1441
  ]
1448
1442
  }