@opensite/ui 3.4.6 → 3.4.9

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 (87) hide show
  1. package/dist/navbar-animated-preview.cjs +16 -9
  2. package/dist/navbar-animated-preview.d.cts +3 -1
  3. package/dist/navbar-animated-preview.d.ts +3 -1
  4. package/dist/navbar-animated-preview.js +16 -9
  5. package/dist/navbar-centered-menu.cjs +4 -4
  6. package/dist/navbar-centered-menu.d.cts +4 -2
  7. package/dist/navbar-centered-menu.d.ts +4 -2
  8. package/dist/navbar-centered-menu.js +4 -4
  9. package/dist/navbar-dark-icons.cjs +10 -9
  10. package/dist/navbar-dark-icons.d.cts +5 -3
  11. package/dist/navbar-dark-icons.d.ts +5 -3
  12. package/dist/navbar-dark-icons.js +10 -9
  13. package/dist/navbar-dropdown-menu.cjs +4 -4
  14. package/dist/navbar-dropdown-menu.d.cts +4 -2
  15. package/dist/navbar-dropdown-menu.d.ts +4 -2
  16. package/dist/navbar-dropdown-menu.js +4 -4
  17. package/dist/navbar-education-platform.cjs +4 -4
  18. package/dist/navbar-education-platform.d.cts +5 -3
  19. package/dist/navbar-education-platform.d.ts +5 -3
  20. package/dist/navbar-education-platform.js +4 -4
  21. package/dist/navbar-enterprise-mega.cjs +109 -27
  22. package/dist/navbar-enterprise-mega.d.cts +10 -8
  23. package/dist/navbar-enterprise-mega.d.ts +10 -8
  24. package/dist/navbar-enterprise-mega.js +109 -27
  25. package/dist/navbar-feature-grid.cjs +2 -2
  26. package/dist/navbar-feature-grid.d.cts +3 -1
  27. package/dist/navbar-feature-grid.d.ts +3 -1
  28. package/dist/navbar-feature-grid.js +2 -2
  29. package/dist/navbar-floating-pill.cjs +2 -2
  30. package/dist/navbar-floating-pill.d.cts +3 -1
  31. package/dist/navbar-floating-pill.d.ts +3 -1
  32. package/dist/navbar-floating-pill.js +2 -2
  33. package/dist/navbar-fullscreen-menu.d.cts +3 -1
  34. package/dist/navbar-fullscreen-menu.d.ts +3 -1
  35. package/dist/navbar-icon-links.cjs +17 -3
  36. package/dist/navbar-icon-links.d.cts +4 -2
  37. package/dist/navbar-icon-links.d.ts +4 -2
  38. package/dist/navbar-icon-links.js +17 -3
  39. package/dist/navbar-image-preview.cjs +8 -8
  40. package/dist/navbar-image-preview.d.cts +5 -3
  41. package/dist/navbar-image-preview.d.ts +5 -3
  42. package/dist/navbar-image-preview.js +8 -8
  43. package/dist/navbar-mega-menu.cjs +36 -12
  44. package/dist/navbar-mega-menu.d.cts +4 -2
  45. package/dist/navbar-mega-menu.d.ts +4 -2
  46. package/dist/navbar-mega-menu.js +36 -12
  47. package/dist/navbar-multi-column-groups.cjs +10 -10
  48. package/dist/navbar-multi-column-groups.d.cts +5 -3
  49. package/dist/navbar-multi-column-groups.d.ts +5 -3
  50. package/dist/navbar-multi-column-groups.js +10 -10
  51. package/dist/navbar-platform-resources.cjs +72 -53
  52. package/dist/navbar-platform-resources.d.cts +3 -1
  53. package/dist/navbar-platform-resources.d.ts +3 -1
  54. package/dist/navbar-platform-resources.js +72 -53
  55. package/dist/navbar-search-focused.cjs +7 -7
  56. package/dist/navbar-search-focused.d.cts +5 -3
  57. package/dist/navbar-search-focused.d.ts +5 -3
  58. package/dist/navbar-search-focused.js +7 -7
  59. package/dist/navbar-sidebar-mobile.cjs +4 -4
  60. package/dist/navbar-sidebar-mobile.d.cts +4 -2
  61. package/dist/navbar-sidebar-mobile.d.ts +4 -2
  62. package/dist/navbar-sidebar-mobile.js +4 -4
  63. package/dist/navbar-simple-links.cjs +4 -4
  64. package/dist/navbar-simple-links.d.cts +3 -1
  65. package/dist/navbar-simple-links.d.ts +3 -1
  66. package/dist/navbar-simple-links.js +4 -4
  67. package/dist/navbar-split-cta.cjs +4 -5
  68. package/dist/navbar-split-cta.d.cts +4 -2
  69. package/dist/navbar-split-cta.d.ts +4 -2
  70. package/dist/navbar-split-cta.js +4 -5
  71. package/dist/navbar-sticky-compact.cjs +14 -8
  72. package/dist/navbar-sticky-compact.d.cts +4 -2
  73. package/dist/navbar-sticky-compact.d.ts +4 -2
  74. package/dist/navbar-sticky-compact.js +14 -8
  75. package/dist/navbar-tabbed-sections.cjs +4 -5
  76. package/dist/navbar-tabbed-sections.d.cts +5 -3
  77. package/dist/navbar-tabbed-sections.d.ts +5 -3
  78. package/dist/navbar-tabbed-sections.js +4 -5
  79. package/dist/navbar-transparent-overlay.cjs +6 -6
  80. package/dist/navbar-transparent-overlay.d.cts +5 -3
  81. package/dist/navbar-transparent-overlay.d.ts +5 -3
  82. package/dist/navbar-transparent-overlay.js +6 -6
  83. package/dist/registry.cjs +337 -186
  84. package/dist/registry.js +337 -186
  85. package/dist/{types-ldjwVMcl.d.cts → types-hJ2R0GoH.d.ts} +5 -4
  86. package/dist/{types-ldjwVMcl.d.ts → types-mWZcgKth.d.cts} +5 -4
  87. package/package.json +1 -1
@@ -892,9 +892,16 @@ var NavbarAnimatedPreview = ({
892
892
  className: actionClassName,
893
893
  ...pressableProps,
894
894
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
895
- icon,
895
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
896
896
  label,
897
- iconAfter ?? /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/chevron-right", size: 16 })
897
+ /* @__PURE__ */ jsxRuntime.jsx(
898
+ DynamicIcon,
899
+ {
900
+ name: iconAfter ?? "lucide/chevron-right",
901
+ size: 16,
902
+ className: "shrink-0"
903
+ }
904
+ )
898
905
  ] })
899
906
  },
900
907
  index
@@ -1223,14 +1230,14 @@ var FeaturedLink = ({ link, optixFlowConfig }) => {
1223
1230
  className: "group relative flex w-full overflow-hidden rounded-xl bg-muted px-4 pt-24 pb-4",
1224
1231
  children: [
1225
1232
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative z-10 flex w-full items-center gap-6", children: [
1226
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-12 shrink-0 rounded-lg border bg-background shadow-lg", children: link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsxRuntime.jsx(
1233
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-12 shrink-0 rounded-lg border bg-background shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsx(
1227
1234
  DynamicIcon,
1228
1235
  {
1229
- name: link.iconName,
1236
+ name: link.icon || link.iconName,
1230
1237
  size: 20,
1231
1238
  className: "m-auto stroke-white"
1232
1239
  }
1233
- ) : null }),
1240
+ ) }),
1234
1241
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col text-white text-shadow-lg", children: [
1235
1242
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-lg font-semibold", children: link.label }),
1236
1243
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "font-medium", children: link.description })
@@ -1260,10 +1267,10 @@ var NavLink = React.forwardRef(
1260
1267
  onMouseEnter,
1261
1268
  onMouseLeave,
1262
1269
  children: [
1263
- (link.icon || link.iconName) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-6 shrink-0 rounded-md border shadow", children: link.icon ? link.icon : link.iconName && /* @__PURE__ */ jsxRuntime.jsx(
1270
+ (link.icon || link.iconName) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-6 shrink-0 rounded-md border shadow", children: /* @__PURE__ */ jsxRuntime.jsx(
1264
1271
  DynamicIcon,
1265
1272
  {
1266
- name: link.iconName,
1273
+ name: link.icon || link.iconName,
1267
1274
  size: 14,
1268
1275
  className: "m-auto"
1269
1276
  }
@@ -1304,9 +1311,9 @@ var MobileNavigationMenu = ({
1304
1311
  className: actionClassName,
1305
1312
  ...pressableProps,
1306
1313
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1307
- icon,
1314
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
1308
1315
  label,
1309
- iconAfter
1316
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
1310
1317
  ] })
1311
1318
  },
1312
1319
  index
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
3
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
4
- import { a as ILinkItem, b as IMenuLinkGroup, L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.cjs';
4
+ import { a as ILinkItem, b as IMenuLinkGroup, L as LogoConfig, N as NavbarLayoutVariant } from './types-mWZcgKth.cjs';
5
5
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
6
+ import './dynamic-icon.cjs';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
3
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
4
- import { a as ILinkItem, b as IMenuLinkGroup, L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.js';
4
+ import { a as ILinkItem, b as IMenuLinkGroup, L as LogoConfig, N as NavbarLayoutVariant } from './types-hJ2R0GoH.js';
5
5
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.js';
6
+ import './dynamic-icon.js';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -867,9 +867,16 @@ var NavbarAnimatedPreview = ({
867
867
  className: actionClassName,
868
868
  ...pressableProps,
869
869
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
870
- icon,
870
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
871
871
  label,
872
- iconAfter ?? /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/chevron-right", size: 16 })
872
+ /* @__PURE__ */ jsx(
873
+ DynamicIcon,
874
+ {
875
+ name: iconAfter ?? "lucide/chevron-right",
876
+ size: 16,
877
+ className: "shrink-0"
878
+ }
879
+ )
873
880
  ] })
874
881
  },
875
882
  index
@@ -1198,14 +1205,14 @@ var FeaturedLink = ({ link, optixFlowConfig }) => {
1198
1205
  className: "group relative flex w-full overflow-hidden rounded-xl bg-muted px-4 pt-24 pb-4",
1199
1206
  children: [
1200
1207
  /* @__PURE__ */ jsxs("div", { className: "relative z-10 flex w-full items-center gap-6", children: [
1201
- /* @__PURE__ */ jsx("div", { className: "flex size-12 shrink-0 rounded-lg border bg-background shadow-lg", children: link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsx(
1208
+ /* @__PURE__ */ jsx("div", { className: "flex size-12 shrink-0 rounded-lg border bg-background shadow-lg", children: /* @__PURE__ */ jsx(
1202
1209
  DynamicIcon,
1203
1210
  {
1204
- name: link.iconName,
1211
+ name: link.icon || link.iconName,
1205
1212
  size: 20,
1206
1213
  className: "m-auto stroke-white"
1207
1214
  }
1208
- ) : null }),
1215
+ ) }),
1209
1216
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col text-white text-shadow-lg", children: [
1210
1217
  /* @__PURE__ */ jsx("div", { className: "text-lg font-semibold", children: link.label }),
1211
1218
  /* @__PURE__ */ jsx("div", { className: "font-medium", children: link.description })
@@ -1235,10 +1242,10 @@ var NavLink = forwardRef(
1235
1242
  onMouseEnter,
1236
1243
  onMouseLeave,
1237
1244
  children: [
1238
- (link.icon || link.iconName) && /* @__PURE__ */ jsx("div", { className: "flex size-6 shrink-0 rounded-md border shadow", children: link.icon ? link.icon : link.iconName && /* @__PURE__ */ jsx(
1245
+ (link.icon || link.iconName) && /* @__PURE__ */ jsx("div", { className: "flex size-6 shrink-0 rounded-md border shadow", children: /* @__PURE__ */ jsx(
1239
1246
  DynamicIcon,
1240
1247
  {
1241
- name: link.iconName,
1248
+ name: link.icon || link.iconName,
1242
1249
  size: 14,
1243
1250
  className: "m-auto"
1244
1251
  }
@@ -1279,9 +1286,9 @@ var MobileNavigationMenu = ({
1279
1286
  className: actionClassName,
1280
1287
  ...pressableProps,
1281
1288
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
1282
- icon,
1289
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
1283
1290
  label,
1284
- iconAfter
1291
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
1285
1292
  ] })
1286
1293
  },
1287
1294
  index
@@ -738,10 +738,10 @@ var SubMenuLink = ({ item }) => {
738
738
  return /* @__PURE__ */ jsxRuntime.jsxs(
739
739
  pressable.Pressable,
740
740
  {
741
- className: "flex flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
741
+ className: "flex flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
742
742
  href: item.url,
743
743
  children: [
744
- item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
744
+ item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
745
745
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
746
746
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold", children: item.title }),
747
747
  item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
@@ -829,9 +829,9 @@ var NavbarCenteredMenu = ({
829
829
  className: actionClassName,
830
830
  ...pressableProps,
831
831
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
832
- icon,
832
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
833
833
  label,
834
- iconAfter
834
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
835
835
  ] })
836
836
  },
837
837
  index
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.cjs';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.cjs';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-mWZcgKth.cjs';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -15,7 +17,7 @@ interface MenuItem {
15
17
  title: string;
16
18
  url: string;
17
19
  description?: string;
18
- icon?: string;
20
+ icon?: DynamicIconName;
19
21
  items?: MenuItem[];
20
22
  }
21
23
  /**
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.js';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.js';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-hJ2R0GoH.js';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.js';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -15,7 +17,7 @@ interface MenuItem {
15
17
  title: string;
16
18
  url: string;
17
19
  description?: string;
18
- icon?: string;
20
+ icon?: DynamicIconName;
19
21
  items?: MenuItem[];
20
22
  }
21
23
  /**
@@ -715,10 +715,10 @@ var SubMenuLink = ({ item }) => {
715
715
  return /* @__PURE__ */ jsxs(
716
716
  Pressable,
717
717
  {
718
- className: "flex flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
718
+ className: "flex flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
719
719
  href: item.url,
720
720
  children: [
721
- item.icon && /* @__PURE__ */ jsx("div", { className: "text-muted-foreground", children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
721
+ item.icon && /* @__PURE__ */ jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
722
722
  /* @__PURE__ */ jsxs("div", { children: [
723
723
  /* @__PURE__ */ jsx("div", { className: "text-sm font-semibold", children: item.title }),
724
724
  item.description && /* @__PURE__ */ jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
@@ -806,9 +806,9 @@ var NavbarCenteredMenu = ({
806
806
  className: actionClassName,
807
807
  ...pressableProps,
808
808
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
809
- icon,
809
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
810
810
  label,
811
- iconAfter
811
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
812
812
  ] })
813
813
  },
814
814
  index
@@ -828,9 +828,9 @@ var NavbarDarkIcons = ({
828
828
  className: actionClassName,
829
829
  ...pressableProps,
830
830
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
831
- icon,
831
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
832
832
  label,
833
- iconAfter
833
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
834
834
  ] })
835
835
  },
836
836
  index
@@ -968,15 +968,16 @@ var MenuSubLink = ({ link }) => {
968
968
  href: link.url,
969
969
  className: "flex items-center gap-4 rounded-lg p-2 hover:bg-muted",
970
970
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full items-center justify-between", children: [
971
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2.5", children: [
972
- link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsxRuntime.jsx(
971
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2.5", children: [
972
+ /* @__PURE__ */ jsxRuntime.jsx(
973
973
  DynamicIcon,
974
974
  {
975
- name: link.iconName,
975
+ name: link.icon || link.iconName,
976
976
  size: 20,
977
- color: link.iconColor
977
+ color: link.iconColor,
978
+ className: "shrink-0"
978
979
  }
979
- ) : null,
980
+ ),
980
981
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1.5", children: [
981
982
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-sm leading-none", children: link.label }),
982
983
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm leading-[1.2] text-muted-foreground/80", children: link.description })
@@ -1020,9 +1021,9 @@ var MobileNavigationMenu = ({
1020
1021
  className: cn("w-full", actionClassName),
1021
1022
  ...pressableProps,
1022
1023
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1023
- icon,
1024
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
1024
1025
  label,
1025
- iconAfter
1026
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
1026
1027
  ] })
1027
1028
  },
1028
1029
  index
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.cjs';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.cjs';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-mWZcgKth.cjs';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -11,8 +13,8 @@ interface MenuLink {
11
13
  label: React.ReactNode;
12
14
  description?: React.ReactNode;
13
15
  url?: string;
14
- icon?: React.ReactNode;
15
- iconName?: string;
16
+ icon?: DynamicIconName;
17
+ iconName?: DynamicIconName;
16
18
  iconColor?: string;
17
19
  }
18
20
  interface MenuItem {
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.js';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.js';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-hJ2R0GoH.js';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.js';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -11,8 +13,8 @@ interface MenuLink {
11
13
  label: React.ReactNode;
12
14
  description?: React.ReactNode;
13
15
  url?: string;
14
- icon?: React.ReactNode;
15
- iconName?: string;
16
+ icon?: DynamicIconName;
17
+ iconName?: DynamicIconName;
16
18
  iconColor?: string;
17
19
  }
18
20
  interface MenuItem {
@@ -805,9 +805,9 @@ var NavbarDarkIcons = ({
805
805
  className: actionClassName,
806
806
  ...pressableProps,
807
807
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
808
- icon,
808
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
809
809
  label,
810
- iconAfter
810
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
811
811
  ] })
812
812
  },
813
813
  index
@@ -945,15 +945,16 @@ var MenuSubLink = ({ link }) => {
945
945
  href: link.url,
946
946
  className: "flex items-center gap-4 rounded-lg p-2 hover:bg-muted",
947
947
  children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center justify-between", children: [
948
- /* @__PURE__ */ jsxs("div", { className: "flex gap-2.5", children: [
949
- link.icon ? link.icon : link.iconName ? /* @__PURE__ */ jsx(
948
+ /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2.5", children: [
949
+ /* @__PURE__ */ jsx(
950
950
  DynamicIcon,
951
951
  {
952
- name: link.iconName,
952
+ name: link.icon || link.iconName,
953
953
  size: 20,
954
- color: link.iconColor
954
+ color: link.iconColor,
955
+ className: "shrink-0"
955
956
  }
956
- ) : null,
957
+ ),
957
958
  /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1.5", children: [
958
959
  /* @__PURE__ */ jsx("h3", { className: "text-sm leading-none", children: link.label }),
959
960
  /* @__PURE__ */ jsx("p", { className: "text-sm leading-[1.2] text-muted-foreground/80", children: link.description })
@@ -997,9 +998,9 @@ var MobileNavigationMenu = ({
997
998
  className: cn("w-full", actionClassName),
998
999
  ...pressableProps,
999
1000
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
1000
- icon,
1001
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
1001
1002
  label,
1002
- iconAfter
1003
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
1003
1004
  ] })
1004
1005
  },
1005
1006
  index
@@ -770,10 +770,10 @@ var SubMenuLink = ({
770
770
  return /* @__PURE__ */ jsxRuntime.jsxs(
771
771
  pressable.Pressable,
772
772
  {
773
- className: "flex min-w-80 flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted",
773
+ className: "flex min-w-80 flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted",
774
774
  href: item.url,
775
775
  children: [
776
- item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
776
+ item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
777
777
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
778
778
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold", children: item.title }),
779
779
  item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
@@ -857,9 +857,9 @@ var NavbarDropdownMenu = ({
857
857
  className: actionClassName,
858
858
  ...pressableProps,
859
859
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
860
- icon,
860
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
861
861
  label,
862
- iconAfter
862
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
863
863
  ] })
864
864
  },
865
865
  index
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.cjs';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.cjs';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-mWZcgKth.cjs';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -15,7 +17,7 @@ interface MenuItem {
15
17
  title: string;
16
18
  url: string;
17
19
  description?: string;
18
- icon?: string;
20
+ icon?: DynamicIconName;
19
21
  items?: MenuItem[];
20
22
  }
21
23
  /**
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.js';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.js';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-hJ2R0GoH.js';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.js';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -15,7 +17,7 @@ interface MenuItem {
15
17
  title: string;
16
18
  url: string;
17
19
  description?: string;
18
- icon?: string;
20
+ icon?: DynamicIconName;
19
21
  items?: MenuItem[];
20
22
  }
21
23
  /**
@@ -747,10 +747,10 @@ var SubMenuLink = ({
747
747
  return /* @__PURE__ */ jsxs(
748
748
  Pressable,
749
749
  {
750
- className: "flex min-w-80 flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted",
750
+ className: "flex min-w-80 flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted",
751
751
  href: item.url,
752
752
  children: [
753
- item.icon && /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
753
+ item.icon && /* @__PURE__ */ jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
754
754
  /* @__PURE__ */ jsxs("div", { children: [
755
755
  /* @__PURE__ */ jsx("div", { className: "text-sm font-semibold", children: item.title }),
756
756
  item.description && /* @__PURE__ */ jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
@@ -834,9 +834,9 @@ var NavbarDropdownMenu = ({
834
834
  className: actionClassName,
835
835
  ...pressableProps,
836
836
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
837
- icon,
837
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
838
838
  label,
839
- iconAfter
839
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
840
840
  ] })
841
841
  },
842
842
  index
@@ -850,9 +850,9 @@ var NavbarEducationPlatform = ({
850
850
  ...pressableProps
851
851
  } = action;
852
852
  return /* @__PURE__ */ jsxRuntime.jsx(pressable.Pressable, { className: actionClassName, ...pressableProps, children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
853
- icon,
853
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
854
854
  label,
855
- iconAfter
855
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
856
856
  ] }) }, index);
857
857
  });
858
858
  }, [authActionsSlot, authActions]);
@@ -1044,9 +1044,9 @@ var MobileNavigationMenu = ({
1044
1044
  onClick: onClose,
1045
1045
  ...pressableProps,
1046
1046
  children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1047
- icon,
1047
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
1048
1048
  label,
1049
- iconAfter
1049
+ /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
1050
1050
  ] })
1051
1051
  },
1052
1052
  index
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.cjs';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Cgd-IXlI.cjs';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.cjs';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-mWZcgKth.cjs';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.cjs';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -15,8 +17,8 @@ interface MenuLinkItem {
15
17
  title: string;
16
18
  /** Optional description */
17
19
  description?: string;
18
- /** Icon name for DynamicIcon */
19
- icon?: string;
20
+ /** Icon name or element for DynamicIcon */
21
+ icon?: DynamicIconName;
20
22
  /** Link URL */
21
23
  href: string;
22
24
  }
@@ -1,8 +1,10 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
+ import { DynamicIconName } from './dynamic-icon.js';
3
4
  import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
4
- import { L as LogoConfig, N as NavbarLayoutVariant } from './types-ldjwVMcl.js';
5
+ import { L as LogoConfig, N as NavbarLayoutVariant } from './types-hJ2R0GoH.js';
5
6
  import { A as ActionConfig, O as OptixFlowConfig } from './blocks-DyouPohq.js';
7
+ import '@page-speed/icon';
6
8
  import 'class-variance-authority';
7
9
  import '@page-speed/pressable';
8
10
  import '@opensite/hooks/usePlatformFromUrl';
@@ -15,8 +17,8 @@ interface MenuLinkItem {
15
17
  title: string;
16
18
  /** Optional description */
17
19
  description?: string;
18
- /** Icon name for DynamicIcon */
19
- icon?: string;
20
+ /** Icon name or element for DynamicIcon */
21
+ icon?: DynamicIconName;
20
22
  /** Link URL */
21
23
  href: string;
22
24
  }
@@ -826,9 +826,9 @@ var NavbarEducationPlatform = ({
826
826
  ...pressableProps
827
827
  } = action;
828
828
  return /* @__PURE__ */ jsx(Pressable, { className: actionClassName, ...pressableProps, children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
829
- icon,
829
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
830
830
  label,
831
- iconAfter
831
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
832
832
  ] }) }, index);
833
833
  });
834
834
  }, [authActionsSlot, authActions]);
@@ -1020,9 +1020,9 @@ var MobileNavigationMenu = ({
1020
1020
  onClick: onClose,
1021
1021
  ...pressableProps,
1022
1022
  children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
1023
- icon,
1023
+ /* @__PURE__ */ jsx(DynamicIcon, { name: icon, size: 16, className: "shrink-0" }),
1024
1024
  label,
1025
- iconAfter
1025
+ /* @__PURE__ */ jsx(DynamicIcon, { name: iconAfter, size: 16, className: "shrink-0" })
1026
1026
  ] })
1027
1027
  },
1028
1028
  index