@opensite/ui 1.1.0 → 1.1.1

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 +11 -10
  2. package/dist/navbar-animated-preview.js +11 -10
  3. package/dist/navbar-centered-menu.cjs +5 -4
  4. package/dist/navbar-centered-menu.js +5 -4
  5. package/dist/navbar-dark-icons.cjs +5 -4
  6. package/dist/navbar-dark-icons.js +5 -4
  7. package/dist/navbar-dropdown-menu.cjs +5 -4
  8. package/dist/navbar-dropdown-menu.js +5 -4
  9. package/dist/navbar-education-platform.cjs +5 -4
  10. package/dist/navbar-education-platform.js +5 -4
  11. package/dist/navbar-enterprise-mega.cjs +5 -4
  12. package/dist/navbar-enterprise-mega.js +5 -4
  13. package/dist/navbar-feature-grid.cjs +5 -4
  14. package/dist/navbar-feature-grid.js +5 -4
  15. package/dist/navbar-icon-links.cjs +5 -4
  16. package/dist/navbar-icon-links.js +5 -4
  17. package/dist/navbar-image-preview.cjs +5 -4
  18. package/dist/navbar-image-preview.js +5 -4
  19. package/dist/navbar-mega-menu.cjs +5 -4
  20. package/dist/navbar-mega-menu.js +5 -4
  21. package/dist/navbar-multi-column-groups.cjs +5 -4
  22. package/dist/navbar-multi-column-groups.js +5 -4
  23. package/dist/navbar-platform-resources.cjs +5 -4
  24. package/dist/navbar-platform-resources.js +5 -4
  25. package/dist/navbar-search-focused.cjs +176 -97
  26. package/dist/navbar-search-focused.js +176 -97
  27. package/dist/navbar-sidebar-mobile.cjs +5 -4
  28. package/dist/navbar-sidebar-mobile.js +5 -4
  29. package/dist/navbar-simple-links.cjs +5 -4
  30. package/dist/navbar-simple-links.js +5 -4
  31. package/dist/navbar-split-cta.cjs +5 -4
  32. package/dist/navbar-split-cta.js +5 -4
  33. package/dist/navbar-sticky-compact.cjs +7 -16
  34. package/dist/navbar-sticky-compact.js +7 -16
  35. package/dist/navbar-tabbed-sections.cjs +5 -4
  36. package/dist/navbar-tabbed-sections.js +5 -4
  37. package/dist/navbar-transparent-overlay.cjs +6 -4
  38. package/dist/navbar-transparent-overlay.js +6 -4
  39. package/dist/registry.cjs +171 -117
  40. package/dist/registry.js +171 -117
  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,8 +1117,8 @@ 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",
@@ -1110,7 +1127,7 @@ var NavbarMobileMenu = ({
1110
1127
  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
1128
  "aria-label": "Close mobile menu",
1112
1129
  children: [
1113
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1130
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1114
1131
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1115
1132
  ]
1116
1133
  }
@@ -1193,6 +1210,11 @@ var NavbarSearchFocused = ({
1193
1210
  optixFlowConfig
1194
1211
  }) => {
1195
1212
  const [isOpen, setIsOpen] = useState(false);
1213
+ const [searchQuery, setSearchQuery] = useState("");
1214
+ const handleSearchSubmit = (e) => {
1215
+ e.preventDefault();
1216
+ onSearch?.(searchQuery);
1217
+ };
1196
1218
  const renderNavigation = (items) => {
1197
1219
  if (navigationSlot) return navigationSlot;
1198
1220
  if (!items || items.length === 0) return null;
@@ -1238,7 +1260,7 @@ var NavbarSearchFocused = ({
1238
1260
  );
1239
1261
  });
1240
1262
  }, [authActionsSlot, authActions]);
1241
- const renderMobileMenuActions = useMemo(() => {
1263
+ useMemo(() => {
1242
1264
  if (mobileMenuActionsSlot) return mobileMenuActionsSlot;
1243
1265
  if (!mobileMenuActions || mobileMenuActions.length === 0) return null;
1244
1266
  return /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-2", children: mobileMenuActions.map((action, index) => {
@@ -1267,100 +1289,157 @@ var NavbarSearchFocused = ({
1267
1289
  sectionContainerMaxWidth,
1268
1290
  spacingOverride
1269
1291
  } = 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
- }
1292
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
1293
+ /* @__PURE__ */ jsx(
1294
+ Section,
1295
+ {
1296
+ background,
1297
+ spacing: spacingOverride ?? spacing,
1298
+ className: sectionClasses,
1299
+ pattern,
1300
+ patternOpacity,
1301
+ containerClassName: sectionContainerClassName,
1302
+ containerMaxWidth: sectionContainerMaxWidth,
1303
+ children: /* @__PURE__ */ jsx("div", { className: containerWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: navWrapperClasses, children: /* @__PURE__ */ jsx("div", { className: innerContainerClasses, children: /* @__PURE__ */ jsxs(
1304
+ "nav",
1305
+ {
1306
+ className: cn(
1307
+ "flex items-center justify-between gap-4 py-3 lg:gap-6",
1308
+ navClassName
1310
1309
  ),
1311
- /* @__PURE__ */ jsx(
1312
- "div",
1313
- {
1314
- className: cn(
1315
- "hidden shrink-0 items-center gap-2 lg:flex",
1316
- actionsClassName
1310
+ children: [
1311
+ /* @__PURE__ */ jsx(
1312
+ NavbarLogo,
1313
+ {
1314
+ logo,
1315
+ logoSlot,
1316
+ logoClassName,
1317
+ optixFlowConfig
1318
+ }
1319
+ ),
1320
+ /* @__PURE__ */ jsx(
1321
+ NavigationMenu,
1322
+ {
1323
+ className: cn("hidden lg:flex", navigationMenuClassName),
1324
+ children: renderNavigation(navItems ?? [])
1325
+ }
1326
+ ),
1327
+ /* @__PURE__ */ jsx("div", { className: "hidden flex-1 max-w-md lg:block", children: searchSlot ?? /* @__PURE__ */ jsxs("form", { onSubmit: handleSearchSubmit, className: "relative", children: [
1328
+ /* @__PURE__ */ jsx(
1329
+ DynamicIcon,
1330
+ {
1331
+ name: "lucide/search",
1332
+ size: 16,
1333
+ className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground"
1334
+ }
1317
1335
  ),
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
- );
1336
+ /* @__PURE__ */ jsx(
1337
+ Input,
1338
+ {
1339
+ type: "search",
1340
+ placeholder: typeof searchPlaceholder === "string" ? searchPlaceholder : "Search...",
1341
+ value: searchQuery,
1342
+ onChange: (e) => setSearchQuery(e.target.value),
1343
+ className: "pl-9 pr-4"
1344
+ }
1345
+ )
1346
+ ] }) }),
1347
+ /* @__PURE__ */ jsx(
1348
+ "div",
1349
+ {
1350
+ className: cn(
1351
+ "hidden shrink-0 items-center gap-2 lg:flex",
1352
+ actionsClassName
1353
+ ),
1354
+ children: renderAuthActions
1355
+ }
1356
+ ),
1357
+ /* @__PURE__ */ jsxs(
1358
+ Pressable,
1359
+ {
1360
+ variant: "ghost",
1361
+ size: "icon",
1362
+ asButton: true,
1363
+ className: "lg:hidden",
1364
+ onClick: () => setIsOpen(!isOpen),
1365
+ children: [
1366
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: 20 }),
1367
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1368
+ ]
1369
+ }
1370
+ )
1371
+ ]
1372
+ }
1373
+ ) }) }) })
1374
+ }
1375
+ ),
1376
+ /* @__PURE__ */ jsx(
1377
+ MobileNavigationMenu,
1378
+ {
1379
+ open: isOpen,
1380
+ setOpen: setIsOpen,
1381
+ navItems: navItems ?? [],
1382
+ navigationSlot,
1383
+ mobileMenuActions: mobileMenuActions ?? authActions,
1384
+ mobileMenuActionsSlot: mobileMenuActionsSlot ?? authActionsSlot
1385
+ }
1386
+ )
1387
+ ] });
1388
+ };
1389
+ var MobileNavigationMenu = ({
1390
+ open,
1391
+ setOpen,
1392
+ navItems,
1393
+ navigationSlot,
1394
+ mobileMenuActions,
1395
+ mobileMenuActionsSlot
1396
+ }) => {
1397
+ const handleClose = () => setOpen(false);
1398
+ const renderMobileActions = useMemo(() => {
1399
+ if (mobileMenuActionsSlot) return mobileMenuActionsSlot;
1400
+ if (!mobileMenuActions || mobileMenuActions.length === 0) return null;
1401
+ return /* @__PURE__ */ jsx("div", { className: "mt-6 flex flex-col gap-4", children: mobileMenuActions.map((action, index) => {
1402
+ const {
1403
+ label,
1404
+ icon,
1405
+ iconAfter,
1406
+ children,
1407
+ className: actionClassName,
1408
+ ...pressableProps
1409
+ } = action;
1410
+ return /* @__PURE__ */ jsx(
1411
+ Pressable,
1412
+ {
1413
+ asButton: true,
1414
+ className: cn("w-full", actionClassName),
1415
+ onClick: handleClose,
1416
+ ...pressableProps,
1417
+ children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
1418
+ icon,
1419
+ label,
1420
+ iconAfter
1421
+ ] })
1422
+ },
1423
+ index
1424
+ );
1425
+ }) });
1426
+ }, [mobileMenuActionsSlot, mobileMenuActions]);
1427
+ 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: [
1428
+ navigationSlot ?? /* @__PURE__ */ jsx("nav", { className: "flex flex-col", children: navItems.map((item, index) => /* @__PURE__ */ jsxs(
1429
+ Pressable,
1430
+ {
1431
+ href: item.url,
1432
+ 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",
1433
+ onClick: handleClose,
1434
+ children: [
1435
+ item.icon ?? (item.iconName && /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 })),
1436
+ item.title
1437
+ ]
1438
+ },
1439
+ `nav-link-${index}`
1440
+ )) }),
1441
+ renderMobileActions
1442
+ ] }) }) });
1364
1443
  };
1365
1444
 
1366
1445
  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,8 +1228,8 @@ 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",
@@ -1237,7 +1238,7 @@ var NavbarMobileMenu = ({
1237
1238
  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
1239
  "aria-label": "Close mobile menu",
1239
1240
  children: [
1240
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1241
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1241
1242
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1242
1243
  ]
1243
1244
  }
@@ -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,8 +1205,8 @@ 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",
@@ -1214,7 +1215,7 @@ var NavbarMobileMenu = ({
1214
1215
  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
1216
  "aria-label": "Close mobile menu",
1216
1217
  children: [
1217
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1218
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1218
1219
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1219
1220
  ]
1220
1221
  }
@@ -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,8 +1123,8 @@ 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",
@@ -1132,7 +1133,7 @@ var NavbarMobileMenu = ({
1132
1133
  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
1134
  "aria-label": "Close mobile menu",
1134
1135
  children: [
1135
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1136
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1136
1137
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1137
1138
  ]
1138
1139
  }
@@ -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,8 +1101,8 @@ 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",
@@ -1110,7 +1111,7 @@ var NavbarMobileMenu = ({
1110
1111
  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
1112
  "aria-label": "Close mobile menu",
1112
1113
  children: [
1113
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1114
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1114
1115
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1115
1116
  ]
1116
1117
  }
@@ -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,8 +1166,8 @@ 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",
@@ -1175,7 +1176,7 @@ var NavbarMobileMenu = ({
1175
1176
  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
1177
  "aria-label": "Close mobile menu",
1177
1178
  children: [
1178
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1179
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1179
1180
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1180
1181
  ]
1181
1182
  }
@@ -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,8 +1144,8 @@ 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",
@@ -1153,7 +1154,7 @@ var NavbarMobileMenu = ({
1153
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",
1154
1155
  "aria-label": "Close mobile menu",
1155
1156
  children: [
1156
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1157
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1157
1158
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1158
1159
  ]
1159
1160
  }
@@ -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,8 +1228,8 @@ 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",
@@ -1237,7 +1238,7 @@ var NavbarMobileMenu = ({
1237
1238
  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
1239
  "aria-label": "Close mobile menu",
1239
1240
  children: [
1240
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1241
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1241
1242
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1242
1243
  ]
1243
1244
  }
@@ -1431,11 +1432,7 @@ var NavbarStickyCompact = ({
1431
1432
  {
1432
1433
  logo,
1433
1434
  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
- ),
1435
+ logoClassName,
1439
1436
  optixFlowConfig
1440
1437
  }
1441
1438
  ),
@@ -1459,13 +1456,7 @@ var NavbarStickyCompact = ({
1459
1456
  className: "lg:hidden transition-all duration-300",
1460
1457
  onClick: () => setIsOpen(!isOpen),
1461
1458
  children: [
1462
- /* @__PURE__ */ jsxRuntime.jsx(
1463
- DynamicIcon,
1464
- {
1465
- name: "lucide/menu",
1466
- size: isScrolled ? 18 : 20
1467
- }
1468
- ),
1459
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/menu", size: isScrolled ? 18 : 20 }),
1469
1460
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Toggle menu" })
1470
1461
  ]
1471
1462
  }
@@ -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,8 +1205,8 @@ 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",
@@ -1214,7 +1215,7 @@ var NavbarMobileMenu = ({
1214
1215
  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
1216
  "aria-label": "Close mobile menu",
1216
1217
  children: [
1217
- /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1218
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1218
1219
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
1219
1220
  ]
1220
1221
  }
@@ -1408,11 +1409,7 @@ var NavbarStickyCompact = ({
1408
1409
  {
1409
1410
  logo,
1410
1411
  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
- ),
1412
+ logoClassName,
1416
1413
  optixFlowConfig
1417
1414
  }
1418
1415
  ),
@@ -1436,13 +1433,7 @@ var NavbarStickyCompact = ({
1436
1433
  className: "lg:hidden transition-all duration-300",
1437
1434
  onClick: () => setIsOpen(!isOpen),
1438
1435
  children: [
1439
- /* @__PURE__ */ jsx(
1440
- DynamicIcon,
1441
- {
1442
- name: "lucide/menu",
1443
- size: isScrolled ? 18 : 20
1444
- }
1445
- ),
1436
+ /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/menu", size: isScrolled ? 18 : 20 }),
1446
1437
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle menu" })
1447
1438
  ]
1448
1439
  }
@@ -1138,7 +1138,8 @@ var NavbarMobileMenu = ({
1138
1138
  children,
1139
1139
  className,
1140
1140
  contentClassName,
1141
- closeContainerClassName = "",
1141
+ closeContainerClassName,
1142
+ closeIconClassName,
1142
1143
  title = "Mobile Navigation"
1143
1144
  }) => {
1144
1145
  React__namespace.useEffect(() => {
@@ -1167,8 +1168,8 @@ var NavbarMobileMenu = ({
1167
1168
  "div",
1168
1169
  {
1169
1170
  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"
1171
+ "absolute top-0 left-0 right-0 p-4 bg-background flex justify-end items-center z-10 w-screen",
1172
+ closeContainerClassName
1172
1173
  ),
1173
1174
  children: /* @__PURE__ */ jsxRuntime.jsxs(
1174
1175
  "button",
@@ -1177,7 +1178,7 @@ var NavbarMobileMenu = ({
1177
1178
  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
1179
  "aria-label": "Close mobile menu",
1179
1180
  children: [
1180
- /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: "size-4" }),
1181
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/x", className: cn("size-4", closeIconClassName) }),
1181
1182
  /* @__PURE__ */ jsxRuntime.jsx("span", { className: "sr-only", children: "Close" })
1182
1183
  ]
1183
1184
  }