@opensite/ui 0.6.3 → 0.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/dist/about-startup-team.cjs +2 -2
  2. package/dist/about-startup-team.js +2 -2
  3. package/dist/article-breadcrumb-social.cjs +434 -215
  4. package/dist/article-breadcrumb-social.d.cts +19 -1
  5. package/dist/article-breadcrumb-social.d.ts +19 -1
  6. package/dist/article-breadcrumb-social.js +434 -214
  7. package/dist/article-chapters-author.cjs +422 -204
  8. package/dist/article-chapters-author.d.cts +19 -1
  9. package/dist/article-chapters-author.d.ts +19 -1
  10. package/dist/article-chapters-author.js +422 -203
  11. package/dist/article-compact-toc.cjs +429 -73
  12. package/dist/article-compact-toc.d.cts +19 -1
  13. package/dist/article-compact-toc.d.ts +19 -1
  14. package/dist/article-compact-toc.js +430 -73
  15. package/dist/article-hero-prose.cjs +394 -347
  16. package/dist/article-hero-prose.d.cts +19 -1
  17. package/dist/article-hero-prose.d.ts +19 -1
  18. package/dist/article-hero-prose.js +396 -348
  19. package/dist/article-sidebar-sticky.cjs +398 -152
  20. package/dist/article-sidebar-sticky.d.cts +19 -1
  21. package/dist/article-sidebar-sticky.d.ts +19 -1
  22. package/dist/article-sidebar-sticky.js +400 -153
  23. package/dist/article-split-animated.cjs +422 -35
  24. package/dist/article-split-animated.d.cts +19 -1
  25. package/dist/article-split-animated.d.ts +19 -1
  26. package/dist/article-split-animated.js +423 -35
  27. package/dist/article-toc-sidebar.cjs +417 -356
  28. package/dist/article-toc-sidebar.d.cts +19 -1
  29. package/dist/article-toc-sidebar.d.ts +19 -1
  30. package/dist/article-toc-sidebar.js +417 -355
  31. package/dist/blog-cards-read-time.cjs +66 -27
  32. package/dist/blog-cards-read-time.js +66 -27
  33. package/dist/blog-cards-tagline-cta.cjs +64 -14
  34. package/dist/blog-cards-tagline-cta.js +64 -14
  35. package/dist/blog-carousel-apple.cjs +1255 -0
  36. package/dist/blog-carousel-apple.d.cts +113 -0
  37. package/dist/blog-carousel-apple.d.ts +113 -0
  38. package/dist/blog-carousel-apple.js +1234 -0
  39. package/dist/blog-category-overlay.cjs +77 -15
  40. package/dist/blog-category-overlay.js +77 -15
  41. package/dist/blog-featured-popular.cjs +72 -14
  42. package/dist/blog-featured-popular.js +72 -14
  43. package/dist/blog-filtered-results.cjs +122 -39
  44. package/dist/blog-filtered-results.js +122 -39
  45. package/dist/blog-grid-author-cards.cjs +40 -6
  46. package/dist/blog-grid-author-cards.js +40 -6
  47. package/dist/blog-grid-nine-posts.cjs +40 -6
  48. package/dist/blog-grid-nine-posts.js +40 -6
  49. package/dist/blog-horizontal-cards.cjs +34 -6
  50. package/dist/blog-horizontal-cards.js +34 -6
  51. package/dist/blog-horizontal-timeline.cjs +41 -12
  52. package/dist/blog-horizontal-timeline.js +41 -12
  53. package/dist/blog-masonry-featured.cjs +96 -52
  54. package/dist/blog-masonry-featured.js +96 -52
  55. package/dist/blog-related-articles.cjs +47 -9
  56. package/dist/blog-related-articles.js +47 -9
  57. package/dist/blog-tech-insights.cjs +78 -14
  58. package/dist/blog-tech-insights.js +78 -14
  59. package/dist/registry.cjs +1036 -687
  60. package/dist/registry.js +1036 -687
  61. package/package.json +1 -1
@@ -1062,7 +1062,11 @@ var Section = React6__namespace.default.forwardRef(
1062
1062
  );
1063
1063
  Section.displayName = "Section";
1064
1064
  var POSTS_PER_PAGE = 6;
1065
- var BlogCard = React6__namespace.memo(function BlogCard2({ post, optixFlowConfig, className }) {
1065
+ var BlogCard = React6__namespace.memo(function BlogCard2({
1066
+ post,
1067
+ optixFlowConfig,
1068
+ className
1069
+ }) {
1066
1070
  const postHref = post.href || post.url || post.link || "#";
1067
1071
  const postImage = post.thumbnail || post.image;
1068
1072
  const postTitle = typeof post.title === "string" ? post.title : "Content item";
@@ -1096,28 +1100,36 @@ var FilterForm = React6__namespace.memo(function FilterForm2({
1096
1100
  onCategoryChange,
1097
1101
  className
1098
1102
  }) {
1099
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex w-full flex-wrap items-center gap-2.5", className), children: categories.map((category) => {
1100
- const isChecked = selectedCategories.includes(category.value);
1101
- return /* @__PURE__ */ jsxRuntime.jsxs(
1102
- Label,
1103
- {
1104
- className: "flex cursor-pointer items-center gap-2.5 rounded-full bg-muted px-2.5 py-1.5",
1105
- children: [
1106
- /* @__PURE__ */ jsxRuntime.jsx("div", { children: category.label }),
1107
- /* @__PURE__ */ jsxRuntime.jsx(
1108
- Checkbox,
1109
- {
1110
- checked: isChecked,
1111
- onCheckedChange: (checked) => onCategoryChange(category.value, !!checked)
1112
- }
1113
- )
1114
- ]
1115
- },
1116
- category.value
1117
- );
1118
- }) });
1103
+ return /* @__PURE__ */ jsxRuntime.jsx(
1104
+ "div",
1105
+ {
1106
+ className: cn("flex w-full flex-wrap items-center gap-2.5", className),
1107
+ children: categories.map((category) => {
1108
+ const isChecked = selectedCategories.includes(category.value);
1109
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1110
+ Label,
1111
+ {
1112
+ className: "flex cursor-pointer items-center gap-2.5 rounded-full bg-muted px-2.5 py-1.5",
1113
+ children: [
1114
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: category.label }),
1115
+ /* @__PURE__ */ jsxRuntime.jsx(
1116
+ Checkbox,
1117
+ {
1118
+ checked: isChecked,
1119
+ onCheckedChange: (checked) => onCategoryChange(category.value, !!checked)
1120
+ }
1121
+ )
1122
+ ]
1123
+ },
1124
+ category.value
1125
+ );
1126
+ })
1127
+ }
1128
+ );
1119
1129
  });
1120
- var BreadcrumbBlog = React6__namespace.memo(function BreadcrumbBlog2({ breadcrumb }) {
1130
+ var BreadcrumbBlog = React6__namespace.memo(function BreadcrumbBlog2({
1131
+ breadcrumb
1132
+ }) {
1121
1133
  return /* @__PURE__ */ jsxRuntime.jsx(Breadcrumb, { children: /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbList, { children: breadcrumb.map((item, i) => {
1122
1134
  const labelKey = typeof item.label === "string" ? item.label : `breadcrumb-${i}`;
1123
1135
  return /* @__PURE__ */ jsxRuntime.jsxs(React6.Fragment, { children: [
@@ -1153,8 +1165,8 @@ function BlogFilteredResultsComponent({
1153
1165
  postCardClassName,
1154
1166
  loadMoreClassName,
1155
1167
  optixFlowConfig,
1156
- background = "white",
1157
- spacing = "xl",
1168
+ background,
1169
+ spacing,
1158
1170
  pattern,
1159
1171
  patternOpacity
1160
1172
  }) {
@@ -1205,7 +1217,14 @@ function BlogFilteredResultsComponent({
1205
1217
  const primaryPostContent = React6__namespace.useMemo(() => {
1206
1218
  if (primaryPostSlot) return primaryPostSlot;
1207
1219
  if (!primaryPost) return null;
1208
- return /* @__PURE__ */ jsxRuntime.jsx(BlogCard, { post: primaryPost, optixFlowConfig, className: postCardClassName });
1220
+ return /* @__PURE__ */ jsxRuntime.jsx(
1221
+ BlogCard,
1222
+ {
1223
+ post: primaryPost,
1224
+ optixFlowConfig,
1225
+ className: postCardClassName
1226
+ }
1227
+ );
1209
1228
  }, [primaryPostSlot, primaryPost, optixFlowConfig, postCardClassName]);
1210
1229
  const categoriesContent = React6__namespace.useMemo(() => {
1211
1230
  if (categoriesSlot) return categoriesSlot;
@@ -1219,7 +1238,13 @@ function BlogFilteredResultsComponent({
1219
1238
  className: categoriesClassName
1220
1239
  }
1221
1240
  );
1222
- }, [categoriesSlot, categories, selectedCategories, handleCategoryChange, categoriesClassName]);
1241
+ }, [
1242
+ categoriesSlot,
1243
+ categories,
1244
+ selectedCategories,
1245
+ handleCategoryChange,
1246
+ categoriesClassName
1247
+ ]);
1223
1248
  const postsContent = React6__namespace.useMemo(() => {
1224
1249
  if (postsSlot) return postsSlot;
1225
1250
  return postsToDisplay.slice(0, visibleCount).map((post) => {
@@ -1234,11 +1259,24 @@ function BlogFilteredResultsComponent({
1234
1259
  postKey
1235
1260
  );
1236
1261
  });
1237
- }, [postsSlot, postsToDisplay, visibleCount, optixFlowConfig, postCardClassName]);
1262
+ }, [
1263
+ postsSlot,
1264
+ postsToDisplay,
1265
+ visibleCount,
1266
+ optixFlowConfig,
1267
+ postCardClassName
1268
+ ]);
1238
1269
  const loadMoreContent = React6__namespace.useMemo(() => {
1239
1270
  if (loadMoreSlot) return loadMoreSlot;
1240
1271
  if (!loadMoreAction || !hasMore) return null;
1241
- const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = loadMoreAction;
1272
+ const {
1273
+ label,
1274
+ icon,
1275
+ iconAfter,
1276
+ children,
1277
+ className: actionClassName,
1278
+ ...pressableProps
1279
+ } = loadMoreAction;
1242
1280
  return /* @__PURE__ */ jsxRuntime.jsx(
1243
1281
  Pressable,
1244
1282
  {
@@ -1263,22 +1301,67 @@ function BlogFilteredResultsComponent({
1263
1301
  pattern,
1264
1302
  patternOpacity,
1265
1303
  children: [
1266
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("bg-muted bg-size-[3.125rem_3.125rem] bg-repeat", heroClassName), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "container flex flex-col items-start justify-start gap-16 py-20 lg:flex-row lg:items-center lg:justify-between", children: [
1267
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full flex-col justify-between gap-12", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full max-w-xl flex-col gap-8", children: [
1268
- breadcrumbContent,
1269
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-col gap-5", children: [
1270
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn("text-[2.5rem] leading-[1.2] font-semibold md:text-5xl lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
1271
- description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-xl leading-[1.4] text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
1304
+ /* @__PURE__ */ jsxRuntime.jsx(
1305
+ "div",
1306
+ {
1307
+ className: cn(
1308
+ "bg-muted bg-size-[3.125rem_3.125rem] bg-repeat",
1309
+ heroClassName
1310
+ ),
1311
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "container flex flex-col items-start justify-start gap-16 py-20 lg:flex-row lg:items-center lg:justify-between", children: [
1312
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full flex-col justify-between gap-12", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full max-w-xl flex-col gap-8", children: [
1313
+ breadcrumbContent,
1314
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-col gap-5", children: [
1315
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1316
+ "h1",
1317
+ {
1318
+ className: cn(
1319
+ "text-[2.5rem] leading-[1.2] font-semibold md:text-5xl lg:text-6xl",
1320
+ headingClassName
1321
+ ),
1322
+ children: heading
1323
+ }
1324
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
1325
+ description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1326
+ "p",
1327
+ {
1328
+ className: cn(
1329
+ "text-xl leading-[1.4] text-muted-foreground",
1330
+ descriptionClassName
1331
+ ),
1332
+ children: description
1333
+ }
1334
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
1335
+ ] })
1336
+ ] }) }),
1337
+ (primaryPostSlot || primaryPost) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("w-full max-w-110", primaryPostClassName), children: primaryPostContent })
1272
1338
  ] })
1273
- ] }) }),
1274
- (primaryPostSlot || primaryPost) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("w-full max-w-110", primaryPostClassName), children: primaryPostContent })
1275
- ] }) }),
1339
+ }
1340
+ ),
1276
1341
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("py-20", allContentClassName), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "container flex flex-col gap-8", children: [
1277
- allContentHeading && (typeof allContentHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("text-[1.75rem] leading-none font-medium md:text-[2.25rem] lg:text-[2rem]", allContentHeadingClassName), children: allContentHeading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: allContentHeadingClassName, children: allContentHeading })),
1342
+ allContentHeading && (typeof allContentHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1343
+ "h2",
1344
+ {
1345
+ className: cn(
1346
+ "text-[1.75rem] leading-none font-medium md:text-[2.25rem] lg:text-[2rem]",
1347
+ allContentHeadingClassName
1348
+ ),
1349
+ children: allContentHeading
1350
+ }
1351
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: allContentHeadingClassName, children: allContentHeading })),
1278
1352
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1279
1353
  categoriesContent,
1280
1354
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full flex-col gap-4 py-8 lg:gap-8", children: [
1281
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-10 md:grid-cols-2 lg:grid-cols-3", postsClassName), children: postsContent }),
1355
+ /* @__PURE__ */ jsxRuntime.jsx(
1356
+ "div",
1357
+ {
1358
+ className: cn(
1359
+ "grid gap-10 md:grid-cols-2 lg:grid-cols-3",
1360
+ postsClassName
1361
+ ),
1362
+ children: postsContent
1363
+ }
1364
+ ),
1282
1365
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("flex justify-center", loadMoreClassName), children: loadMoreContent })
1283
1366
  ] })
1284
1367
  ] })
@@ -1038,7 +1038,11 @@ var Section = React6__default.forwardRef(
1038
1038
  );
1039
1039
  Section.displayName = "Section";
1040
1040
  var POSTS_PER_PAGE = 6;
1041
- var BlogCard = React6.memo(function BlogCard2({ post, optixFlowConfig, className }) {
1041
+ var BlogCard = React6.memo(function BlogCard2({
1042
+ post,
1043
+ optixFlowConfig,
1044
+ className
1045
+ }) {
1042
1046
  const postHref = post.href || post.url || post.link || "#";
1043
1047
  const postImage = post.thumbnail || post.image;
1044
1048
  const postTitle = typeof post.title === "string" ? post.title : "Content item";
@@ -1072,28 +1076,36 @@ var FilterForm = React6.memo(function FilterForm2({
1072
1076
  onCategoryChange,
1073
1077
  className
1074
1078
  }) {
1075
- return /* @__PURE__ */ jsx("div", { className: cn("flex w-full flex-wrap items-center gap-2.5", className), children: categories.map((category) => {
1076
- const isChecked = selectedCategories.includes(category.value);
1077
- return /* @__PURE__ */ jsxs(
1078
- Label,
1079
- {
1080
- className: "flex cursor-pointer items-center gap-2.5 rounded-full bg-muted px-2.5 py-1.5",
1081
- children: [
1082
- /* @__PURE__ */ jsx("div", { children: category.label }),
1083
- /* @__PURE__ */ jsx(
1084
- Checkbox,
1085
- {
1086
- checked: isChecked,
1087
- onCheckedChange: (checked) => onCategoryChange(category.value, !!checked)
1088
- }
1089
- )
1090
- ]
1091
- },
1092
- category.value
1093
- );
1094
- }) });
1079
+ return /* @__PURE__ */ jsx(
1080
+ "div",
1081
+ {
1082
+ className: cn("flex w-full flex-wrap items-center gap-2.5", className),
1083
+ children: categories.map((category) => {
1084
+ const isChecked = selectedCategories.includes(category.value);
1085
+ return /* @__PURE__ */ jsxs(
1086
+ Label,
1087
+ {
1088
+ className: "flex cursor-pointer items-center gap-2.5 rounded-full bg-muted px-2.5 py-1.5",
1089
+ children: [
1090
+ /* @__PURE__ */ jsx("div", { children: category.label }),
1091
+ /* @__PURE__ */ jsx(
1092
+ Checkbox,
1093
+ {
1094
+ checked: isChecked,
1095
+ onCheckedChange: (checked) => onCategoryChange(category.value, !!checked)
1096
+ }
1097
+ )
1098
+ ]
1099
+ },
1100
+ category.value
1101
+ );
1102
+ })
1103
+ }
1104
+ );
1095
1105
  });
1096
- var BreadcrumbBlog = React6.memo(function BreadcrumbBlog2({ breadcrumb }) {
1106
+ var BreadcrumbBlog = React6.memo(function BreadcrumbBlog2({
1107
+ breadcrumb
1108
+ }) {
1097
1109
  return /* @__PURE__ */ jsx(Breadcrumb, { children: /* @__PURE__ */ jsx(BreadcrumbList, { children: breadcrumb.map((item, i) => {
1098
1110
  const labelKey = typeof item.label === "string" ? item.label : `breadcrumb-${i}`;
1099
1111
  return /* @__PURE__ */ jsxs(Fragment, { children: [
@@ -1129,8 +1141,8 @@ function BlogFilteredResultsComponent({
1129
1141
  postCardClassName,
1130
1142
  loadMoreClassName,
1131
1143
  optixFlowConfig,
1132
- background = "white",
1133
- spacing = "xl",
1144
+ background,
1145
+ spacing,
1134
1146
  pattern,
1135
1147
  patternOpacity
1136
1148
  }) {
@@ -1181,7 +1193,14 @@ function BlogFilteredResultsComponent({
1181
1193
  const primaryPostContent = React6.useMemo(() => {
1182
1194
  if (primaryPostSlot) return primaryPostSlot;
1183
1195
  if (!primaryPost) return null;
1184
- return /* @__PURE__ */ jsx(BlogCard, { post: primaryPost, optixFlowConfig, className: postCardClassName });
1196
+ return /* @__PURE__ */ jsx(
1197
+ BlogCard,
1198
+ {
1199
+ post: primaryPost,
1200
+ optixFlowConfig,
1201
+ className: postCardClassName
1202
+ }
1203
+ );
1185
1204
  }, [primaryPostSlot, primaryPost, optixFlowConfig, postCardClassName]);
1186
1205
  const categoriesContent = React6.useMemo(() => {
1187
1206
  if (categoriesSlot) return categoriesSlot;
@@ -1195,7 +1214,13 @@ function BlogFilteredResultsComponent({
1195
1214
  className: categoriesClassName
1196
1215
  }
1197
1216
  );
1198
- }, [categoriesSlot, categories, selectedCategories, handleCategoryChange, categoriesClassName]);
1217
+ }, [
1218
+ categoriesSlot,
1219
+ categories,
1220
+ selectedCategories,
1221
+ handleCategoryChange,
1222
+ categoriesClassName
1223
+ ]);
1199
1224
  const postsContent = React6.useMemo(() => {
1200
1225
  if (postsSlot) return postsSlot;
1201
1226
  return postsToDisplay.slice(0, visibleCount).map((post) => {
@@ -1210,11 +1235,24 @@ function BlogFilteredResultsComponent({
1210
1235
  postKey
1211
1236
  );
1212
1237
  });
1213
- }, [postsSlot, postsToDisplay, visibleCount, optixFlowConfig, postCardClassName]);
1238
+ }, [
1239
+ postsSlot,
1240
+ postsToDisplay,
1241
+ visibleCount,
1242
+ optixFlowConfig,
1243
+ postCardClassName
1244
+ ]);
1214
1245
  const loadMoreContent = React6.useMemo(() => {
1215
1246
  if (loadMoreSlot) return loadMoreSlot;
1216
1247
  if (!loadMoreAction || !hasMore) return null;
1217
- const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = loadMoreAction;
1248
+ const {
1249
+ label,
1250
+ icon,
1251
+ iconAfter,
1252
+ children,
1253
+ className: actionClassName,
1254
+ ...pressableProps
1255
+ } = loadMoreAction;
1218
1256
  return /* @__PURE__ */ jsx(
1219
1257
  Pressable,
1220
1258
  {
@@ -1239,22 +1277,67 @@ function BlogFilteredResultsComponent({
1239
1277
  pattern,
1240
1278
  patternOpacity,
1241
1279
  children: [
1242
- /* @__PURE__ */ jsx("div", { className: cn("bg-muted bg-size-[3.125rem_3.125rem] bg-repeat", heroClassName), children: /* @__PURE__ */ jsxs("div", { className: "container flex flex-col items-start justify-start gap-16 py-20 lg:flex-row lg:items-center lg:justify-between", children: [
1243
- /* @__PURE__ */ jsx("div", { className: "flex w-full flex-col justify-between gap-12", children: /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-xl flex-col gap-8", children: [
1244
- breadcrumbContent,
1245
- /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-5", children: [
1246
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-[2.5rem] leading-[1.2] font-semibold md:text-5xl lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
1247
- description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-xl leading-[1.4] text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
1280
+ /* @__PURE__ */ jsx(
1281
+ "div",
1282
+ {
1283
+ className: cn(
1284
+ "bg-muted bg-size-[3.125rem_3.125rem] bg-repeat",
1285
+ heroClassName
1286
+ ),
1287
+ children: /* @__PURE__ */ jsxs("div", { className: "container flex flex-col items-start justify-start gap-16 py-20 lg:flex-row lg:items-center lg:justify-between", children: [
1288
+ /* @__PURE__ */ jsx("div", { className: "flex w-full flex-col justify-between gap-12", children: /* @__PURE__ */ jsxs("div", { className: "flex w-full max-w-xl flex-col gap-8", children: [
1289
+ breadcrumbContent,
1290
+ /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-5", children: [
1291
+ heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
1292
+ "h1",
1293
+ {
1294
+ className: cn(
1295
+ "text-[2.5rem] leading-[1.2] font-semibold md:text-5xl lg:text-6xl",
1296
+ headingClassName
1297
+ ),
1298
+ children: heading
1299
+ }
1300
+ ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
1301
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx(
1302
+ "p",
1303
+ {
1304
+ className: cn(
1305
+ "text-xl leading-[1.4] text-muted-foreground",
1306
+ descriptionClassName
1307
+ ),
1308
+ children: description
1309
+ }
1310
+ ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
1311
+ ] })
1312
+ ] }) }),
1313
+ (primaryPostSlot || primaryPost) && /* @__PURE__ */ jsx("div", { className: cn("w-full max-w-110", primaryPostClassName), children: primaryPostContent })
1248
1314
  ] })
1249
- ] }) }),
1250
- (primaryPostSlot || primaryPost) && /* @__PURE__ */ jsx("div", { className: cn("w-full max-w-110", primaryPostClassName), children: primaryPostContent })
1251
- ] }) }),
1315
+ }
1316
+ ),
1252
1317
  /* @__PURE__ */ jsx("div", { className: cn("py-20", allContentClassName), children: /* @__PURE__ */ jsxs("div", { className: "container flex flex-col gap-8", children: [
1253
- allContentHeading && (typeof allContentHeading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("text-[1.75rem] leading-none font-medium md:text-[2.25rem] lg:text-[2rem]", allContentHeadingClassName), children: allContentHeading }) : /* @__PURE__ */ jsx("div", { className: allContentHeadingClassName, children: allContentHeading })),
1318
+ allContentHeading && (typeof allContentHeading === "string" ? /* @__PURE__ */ jsx(
1319
+ "h2",
1320
+ {
1321
+ className: cn(
1322
+ "text-[1.75rem] leading-none font-medium md:text-[2.25rem] lg:text-[2rem]",
1323
+ allContentHeadingClassName
1324
+ ),
1325
+ children: allContentHeading
1326
+ }
1327
+ ) : /* @__PURE__ */ jsx("div", { className: allContentHeadingClassName, children: allContentHeading })),
1254
1328
  /* @__PURE__ */ jsxs("div", { children: [
1255
1329
  categoriesContent,
1256
1330
  /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-4 py-8 lg:gap-8", children: [
1257
- /* @__PURE__ */ jsx("div", { className: cn("grid gap-10 md:grid-cols-2 lg:grid-cols-3", postsClassName), children: postsContent }),
1331
+ /* @__PURE__ */ jsx(
1332
+ "div",
1333
+ {
1334
+ className: cn(
1335
+ "grid gap-10 md:grid-cols-2 lg:grid-cols-3",
1336
+ postsClassName
1337
+ ),
1338
+ children: postsContent
1339
+ }
1340
+ ),
1258
1341
  /* @__PURE__ */ jsx("div", { className: cn("flex justify-center", loadMoreClassName), children: loadMoreContent })
1259
1342
  ] })
1260
1343
  ] })
@@ -919,15 +919,22 @@ function BlogGridAuthorCardsComponent({
919
919
  postCardClassName,
920
920
  viewAllClassName,
921
921
  optixFlowConfig,
922
- background = "white",
923
- spacing = "xl",
922
+ background,
923
+ spacing,
924
924
  pattern,
925
925
  patternOpacity
926
926
  }) {
927
927
  const viewAllActionContent = React__namespace.useMemo(() => {
928
928
  if (viewAllSlot) return viewAllSlot;
929
929
  if (!viewAllAction) return null;
930
- const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = viewAllAction;
930
+ const {
931
+ label,
932
+ icon,
933
+ iconAfter,
934
+ children,
935
+ className: actionClassName,
936
+ ...pressableProps
937
+ } = viewAllAction;
931
938
  return /* @__PURE__ */ jsxRuntime.jsx(
932
939
  Pressable,
933
940
  {
@@ -994,11 +1001,38 @@ function BlogGridAuthorCardsComponent({
994
1001
  patternOpacity,
995
1002
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("container", containerClassName), children: [
996
1003
  (heading || description) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mb-8 md:mb-14 lg:mb-16", headerClassName), children: [
997
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })) }) }),
1004
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1005
+ "h2",
1006
+ {
1007
+ className: cn(
1008
+ "mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl",
1009
+ headingClassName
1010
+ ),
1011
+ children: heading
1012
+ }
1013
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })) }) }),
998
1014
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: descriptionClassName, children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
999
1015
  ] }),
1000
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3", postsClassName), children: postsContent }),
1001
- (viewAllSlot || viewAllAction) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-8 flex flex-col items-center py-2 md:hidden", viewAllClassName), children: viewAllActionContent })
1016
+ /* @__PURE__ */ jsxRuntime.jsx(
1017
+ "div",
1018
+ {
1019
+ className: cn(
1020
+ "grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3",
1021
+ postsClassName
1022
+ ),
1023
+ children: postsContent
1024
+ }
1025
+ ),
1026
+ (viewAllSlot || viewAllAction) && /* @__PURE__ */ jsxRuntime.jsx(
1027
+ "div",
1028
+ {
1029
+ className: cn(
1030
+ "mt-8 flex flex-col items-center py-2 md:hidden",
1031
+ viewAllClassName
1032
+ ),
1033
+ children: viewAllActionContent
1034
+ }
1035
+ )
1002
1036
  ] })
1003
1037
  }
1004
1038
  );
@@ -897,15 +897,22 @@ function BlogGridAuthorCardsComponent({
897
897
  postCardClassName,
898
898
  viewAllClassName,
899
899
  optixFlowConfig,
900
- background = "white",
901
- spacing = "xl",
900
+ background,
901
+ spacing,
902
902
  pattern,
903
903
  patternOpacity
904
904
  }) {
905
905
  const viewAllActionContent = React.useMemo(() => {
906
906
  if (viewAllSlot) return viewAllSlot;
907
907
  if (!viewAllAction) return null;
908
- const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = viewAllAction;
908
+ const {
909
+ label,
910
+ icon,
911
+ iconAfter,
912
+ children,
913
+ className: actionClassName,
914
+ ...pressableProps
915
+ } = viewAllAction;
909
916
  return /* @__PURE__ */ jsx(
910
917
  Pressable,
911
918
  {
@@ -972,11 +979,38 @@ function BlogGridAuthorCardsComponent({
972
979
  patternOpacity,
973
980
  children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
974
981
  (heading || description) && /* @__PURE__ */ jsxs("div", { className: cn("mb-8 md:mb-14 lg:mb-16", headerClassName), children: [
975
- /* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })) }) }),
982
+ /* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
983
+ "h2",
984
+ {
985
+ className: cn(
986
+ "mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl",
987
+ headingClassName
988
+ ),
989
+ children: heading
990
+ }
991
+ ) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })) }) }),
976
992
  description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: descriptionClassName, children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
977
993
  ] }),
978
- /* @__PURE__ */ jsx("div", { className: cn("grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3", postsClassName), children: postsContent }),
979
- (viewAllSlot || viewAllAction) && /* @__PURE__ */ jsx("div", { className: cn("mt-8 flex flex-col items-center py-2 md:hidden", viewAllClassName), children: viewAllActionContent })
994
+ /* @__PURE__ */ jsx(
995
+ "div",
996
+ {
997
+ className: cn(
998
+ "grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3",
999
+ postsClassName
1000
+ ),
1001
+ children: postsContent
1002
+ }
1003
+ ),
1004
+ (viewAllSlot || viewAllAction) && /* @__PURE__ */ jsx(
1005
+ "div",
1006
+ {
1007
+ className: cn(
1008
+ "mt-8 flex flex-col items-center py-2 md:hidden",
1009
+ viewAllClassName
1010
+ ),
1011
+ children: viewAllActionContent
1012
+ }
1013
+ )
980
1014
  ] })
981
1015
  }
982
1016
  );
@@ -919,15 +919,22 @@ function BlogGridNinePosts({
919
919
  postCardClassName,
920
920
  ctaClassName,
921
921
  optixFlowConfig,
922
- background = "white",
923
- spacing = "xl",
922
+ background,
923
+ spacing,
924
924
  pattern,
925
925
  patternOpacity
926
926
  }) {
927
927
  const renderedCtaAction = React__namespace.useMemo(() => {
928
928
  if (ctaSlot) return ctaSlot;
929
929
  if (!ctaAction) return null;
930
- const { label, icon, iconAfter, children, className: actionClassName, ...pressableProps } = ctaAction;
930
+ const {
931
+ label,
932
+ icon,
933
+ iconAfter,
934
+ children,
935
+ className: actionClassName,
936
+ ...pressableProps
937
+ } = ctaAction;
931
938
  return /* @__PURE__ */ jsxRuntime.jsx(
932
939
  Pressable,
933
940
  {
@@ -993,11 +1000,38 @@ function BlogGridNinePosts({
993
1000
  patternOpacity,
994
1001
  children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("container", containerClassName), children: [
995
1002
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mb-8 md:mb-14 lg:mb-16", headerClassName), children: [
996
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h2", { className: cn("mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl", headingClassName), children: heading }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })) }) }),
1003
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsxRuntime.jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
1004
+ "h2",
1005
+ {
1006
+ className: cn(
1007
+ "mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl",
1008
+ headingClassName
1009
+ ),
1010
+ children: heading
1011
+ }
1012
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })) }) }),
997
1013
  description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: descriptionClassName, children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
998
1014
  ] }),
999
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3", postsClassName), children: renderedPosts }),
1000
- (ctaSlot || ctaAction) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mt-8 flex flex-col items-center py-2 md:hidden", ctaClassName), children: renderedCtaAction })
1015
+ /* @__PURE__ */ jsxRuntime.jsx(
1016
+ "div",
1017
+ {
1018
+ className: cn(
1019
+ "grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3",
1020
+ postsClassName
1021
+ ),
1022
+ children: renderedPosts
1023
+ }
1024
+ ),
1025
+ (ctaSlot || ctaAction) && /* @__PURE__ */ jsxRuntime.jsx(
1026
+ "div",
1027
+ {
1028
+ className: cn(
1029
+ "mt-8 flex flex-col items-center py-2 md:hidden",
1030
+ ctaClassName
1031
+ ),
1032
+ children: renderedCtaAction
1033
+ }
1034
+ )
1001
1035
  ] })
1002
1036
  }
1003
1037
  );