@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.
- package/dist/about-startup-team.cjs +2 -2
- package/dist/about-startup-team.js +2 -2
- package/dist/article-breadcrumb-social.cjs +434 -215
- package/dist/article-breadcrumb-social.d.cts +19 -1
- package/dist/article-breadcrumb-social.d.ts +19 -1
- package/dist/article-breadcrumb-social.js +434 -214
- package/dist/article-chapters-author.cjs +422 -204
- package/dist/article-chapters-author.d.cts +19 -1
- package/dist/article-chapters-author.d.ts +19 -1
- package/dist/article-chapters-author.js +422 -203
- package/dist/article-compact-toc.cjs +429 -73
- package/dist/article-compact-toc.d.cts +19 -1
- package/dist/article-compact-toc.d.ts +19 -1
- package/dist/article-compact-toc.js +430 -73
- package/dist/article-hero-prose.cjs +394 -347
- package/dist/article-hero-prose.d.cts +19 -1
- package/dist/article-hero-prose.d.ts +19 -1
- package/dist/article-hero-prose.js +396 -348
- package/dist/article-sidebar-sticky.cjs +398 -152
- package/dist/article-sidebar-sticky.d.cts +19 -1
- package/dist/article-sidebar-sticky.d.ts +19 -1
- package/dist/article-sidebar-sticky.js +400 -153
- package/dist/article-split-animated.cjs +422 -35
- package/dist/article-split-animated.d.cts +19 -1
- package/dist/article-split-animated.d.ts +19 -1
- package/dist/article-split-animated.js +423 -35
- package/dist/article-toc-sidebar.cjs +417 -356
- package/dist/article-toc-sidebar.d.cts +19 -1
- package/dist/article-toc-sidebar.d.ts +19 -1
- package/dist/article-toc-sidebar.js +417 -355
- package/dist/blog-cards-read-time.cjs +66 -27
- package/dist/blog-cards-read-time.js +66 -27
- package/dist/blog-cards-tagline-cta.cjs +64 -14
- package/dist/blog-cards-tagline-cta.js +64 -14
- package/dist/blog-carousel-apple.cjs +1255 -0
- package/dist/blog-carousel-apple.d.cts +113 -0
- package/dist/blog-carousel-apple.d.ts +113 -0
- package/dist/blog-carousel-apple.js +1234 -0
- package/dist/blog-category-overlay.cjs +77 -15
- package/dist/blog-category-overlay.js +77 -15
- package/dist/blog-featured-popular.cjs +72 -14
- package/dist/blog-featured-popular.js +72 -14
- package/dist/blog-filtered-results.cjs +122 -39
- package/dist/blog-filtered-results.js +122 -39
- package/dist/blog-grid-author-cards.cjs +40 -6
- package/dist/blog-grid-author-cards.js +40 -6
- package/dist/blog-grid-nine-posts.cjs +40 -6
- package/dist/blog-grid-nine-posts.js +40 -6
- package/dist/blog-horizontal-cards.cjs +34 -6
- package/dist/blog-horizontal-cards.js +34 -6
- package/dist/blog-horizontal-timeline.cjs +41 -12
- package/dist/blog-horizontal-timeline.js +41 -12
- package/dist/blog-masonry-featured.cjs +96 -52
- package/dist/blog-masonry-featured.js +96 -52
- package/dist/blog-related-articles.cjs +47 -9
- package/dist/blog-related-articles.js +47 -9
- package/dist/blog-tech-insights.cjs +78 -14
- package/dist/blog-tech-insights.js +78 -14
- package/dist/registry.cjs +1036 -687
- package/dist/registry.js +1036 -687
- package/package.json +1 -1
package/dist/registry.js
CHANGED
|
@@ -2524,7 +2524,7 @@ function AboutStartupTeam({
|
|
|
2524
2524
|
if (sidebarSlot) return null;
|
|
2525
2525
|
if (!effectiveTabs || effectiveTabs.length === 0) return null;
|
|
2526
2526
|
if (!teamMembers || teamMembers.length === 0) return null;
|
|
2527
|
-
return /* @__PURE__ */ jsx("nav", { className: "flex gap-2 overflow-x-auto pb-2
|
|
2527
|
+
return /* @__PURE__ */ jsx("div", { className: "w-full min-w-0 max-w-[calc(100vw-1rem)] overflow-hidden sm:max-w-[calc(100vw-2rem)] lg:hidden", children: /* @__PURE__ */ jsx("nav", { className: "-mx-2 flex gap-2 overflow-x-auto px-2 pb-2", children: effectiveTabs.map((link, idx) => /* @__PURE__ */ jsx(
|
|
2528
2528
|
Pressable,
|
|
2529
2529
|
{
|
|
2530
2530
|
componentType: "button",
|
|
@@ -2536,7 +2536,7 @@ function AboutStartupTeam({
|
|
|
2536
2536
|
children: link.label
|
|
2537
2537
|
},
|
|
2538
2538
|
idx
|
|
2539
|
-
)) });
|
|
2539
|
+
)) }) });
|
|
2540
2540
|
}, [sidebarSlot, effectiveTabs, activeTab]);
|
|
2541
2541
|
return /* @__PURE__ */ jsx(
|
|
2542
2542
|
Section,
|
|
@@ -32052,15 +32052,22 @@ function BlogGridAuthorCardsComponent({
|
|
|
32052
32052
|
postCardClassName,
|
|
32053
32053
|
viewAllClassName,
|
|
32054
32054
|
optixFlowConfig,
|
|
32055
|
-
background
|
|
32056
|
-
spacing
|
|
32055
|
+
background,
|
|
32056
|
+
spacing,
|
|
32057
32057
|
pattern,
|
|
32058
32058
|
patternOpacity
|
|
32059
32059
|
}) {
|
|
32060
32060
|
const viewAllActionContent = React52.useMemo(() => {
|
|
32061
32061
|
if (viewAllSlot) return viewAllSlot;
|
|
32062
32062
|
if (!viewAllAction) return null;
|
|
32063
|
-
const {
|
|
32063
|
+
const {
|
|
32064
|
+
label,
|
|
32065
|
+
icon,
|
|
32066
|
+
iconAfter,
|
|
32067
|
+
children,
|
|
32068
|
+
className: actionClassName,
|
|
32069
|
+
...pressableProps
|
|
32070
|
+
} = viewAllAction;
|
|
32064
32071
|
return /* @__PURE__ */ jsx(
|
|
32065
32072
|
Pressable,
|
|
32066
32073
|
{
|
|
@@ -32127,11 +32134,38 @@ function BlogGridAuthorCardsComponent({
|
|
|
32127
32134
|
patternOpacity,
|
|
32128
32135
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
32129
32136
|
(heading || description) && /* @__PURE__ */ jsxs("div", { className: cn("mb-8 md:mb-14 lg:mb-16", headerClassName), children: [
|
|
32130
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32137
|
+
/* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32138
|
+
"h2",
|
|
32139
|
+
{
|
|
32140
|
+
className: cn(
|
|
32141
|
+
"mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl",
|
|
32142
|
+
headingClassName
|
|
32143
|
+
),
|
|
32144
|
+
children: heading
|
|
32145
|
+
}
|
|
32146
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })) }) }),
|
|
32131
32147
|
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: descriptionClassName, children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
32132
32148
|
] }),
|
|
32133
|
-
/* @__PURE__ */ jsx(
|
|
32134
|
-
|
|
32149
|
+
/* @__PURE__ */ jsx(
|
|
32150
|
+
"div",
|
|
32151
|
+
{
|
|
32152
|
+
className: cn(
|
|
32153
|
+
"grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3",
|
|
32154
|
+
postsClassName
|
|
32155
|
+
),
|
|
32156
|
+
children: postsContent
|
|
32157
|
+
}
|
|
32158
|
+
),
|
|
32159
|
+
(viewAllSlot || viewAllAction) && /* @__PURE__ */ jsx(
|
|
32160
|
+
"div",
|
|
32161
|
+
{
|
|
32162
|
+
className: cn(
|
|
32163
|
+
"mt-8 flex flex-col items-center py-2 md:hidden",
|
|
32164
|
+
viewAllClassName
|
|
32165
|
+
),
|
|
32166
|
+
children: viewAllActionContent
|
|
32167
|
+
}
|
|
32168
|
+
)
|
|
32135
32169
|
] })
|
|
32136
32170
|
}
|
|
32137
32171
|
);
|
|
@@ -32155,19 +32189,30 @@ function BlogCardsTaglineCta({
|
|
|
32155
32189
|
postsClassName,
|
|
32156
32190
|
postCardClassName,
|
|
32157
32191
|
optixFlowConfig,
|
|
32158
|
-
background
|
|
32159
|
-
spacing
|
|
32192
|
+
background,
|
|
32193
|
+
spacing,
|
|
32160
32194
|
pattern,
|
|
32161
32195
|
patternOpacity
|
|
32162
32196
|
}) {
|
|
32163
32197
|
const ctaActionContent = React52.useMemo(() => {
|
|
32164
32198
|
if (ctaSlot) return ctaSlot;
|
|
32165
32199
|
if (!ctaAction) return null;
|
|
32166
|
-
const {
|
|
32200
|
+
const {
|
|
32201
|
+
label,
|
|
32202
|
+
icon,
|
|
32203
|
+
iconAfter,
|
|
32204
|
+
children,
|
|
32205
|
+
className: actionClassName,
|
|
32206
|
+
...pressableProps
|
|
32207
|
+
} = ctaAction;
|
|
32167
32208
|
return /* @__PURE__ */ jsx(
|
|
32168
32209
|
Pressable,
|
|
32169
32210
|
{
|
|
32170
|
-
className: cn(
|
|
32211
|
+
className: cn(
|
|
32212
|
+
"w-full sm:w-auto inline-flex items-center",
|
|
32213
|
+
actionClassName,
|
|
32214
|
+
ctaClassName
|
|
32215
|
+
),
|
|
32171
32216
|
...pressableProps,
|
|
32172
32217
|
children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
32173
32218
|
icon,
|
|
@@ -32188,7 +32233,10 @@ function BlogCardsTaglineCta({
|
|
|
32188
32233
|
return /* @__PURE__ */ jsxs(
|
|
32189
32234
|
Card,
|
|
32190
32235
|
{
|
|
32191
|
-
className: cn(
|
|
32236
|
+
className: cn(
|
|
32237
|
+
"grid grid-rows-[auto_auto_1fr_auto] overflow-hidden pt-0",
|
|
32238
|
+
postCardClassName
|
|
32239
|
+
),
|
|
32192
32240
|
children: [
|
|
32193
32241
|
post.image && /* @__PURE__ */ jsx("div", { className: "aspect-video w-full", children: /* @__PURE__ */ jsx(
|
|
32194
32242
|
Pressable,
|
|
@@ -32240,15 +32288,51 @@ function BlogCardsTaglineCta({
|
|
|
32240
32288
|
className: cn(className),
|
|
32241
32289
|
pattern,
|
|
32242
32290
|
patternOpacity,
|
|
32243
|
-
children: /* @__PURE__ */ jsxs(
|
|
32244
|
-
|
|
32245
|
-
|
|
32246
|
-
|
|
32247
|
-
|
|
32248
|
-
|
|
32249
|
-
|
|
32250
|
-
|
|
32251
|
-
|
|
32291
|
+
children: /* @__PURE__ */ jsxs(
|
|
32292
|
+
"div",
|
|
32293
|
+
{
|
|
32294
|
+
className: cn(
|
|
32295
|
+
"container mx-auto flex flex-col items-center gap-16 lg:px-16",
|
|
32296
|
+
containerClassName
|
|
32297
|
+
),
|
|
32298
|
+
children: [
|
|
32299
|
+
/* @__PURE__ */ jsxs("div", { className: cn("text-center", headerClassName), children: [
|
|
32300
|
+
badge && (typeof badge === "string" ? /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: cn("mb-6", badgeClassName), children: badge }) : /* @__PURE__ */ jsx("div", { className: cn("mb-6", badgeClassName), children: badge })),
|
|
32301
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32302
|
+
"h2",
|
|
32303
|
+
{
|
|
32304
|
+
className: cn(
|
|
32305
|
+
"mb-3 text-3xl font-semibold text-pretty md:mb-4 md:text-4xl lg:mb-6 lg:max-w-3xl lg:text-5xl",
|
|
32306
|
+
headingClassName
|
|
32307
|
+
),
|
|
32308
|
+
children: heading
|
|
32309
|
+
}
|
|
32310
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
32311
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
32312
|
+
"p",
|
|
32313
|
+
{
|
|
32314
|
+
className: cn(
|
|
32315
|
+
"mb-8 text-muted-foreground md:text-base lg:max-w-2xl lg:text-lg",
|
|
32316
|
+
descriptionClassName
|
|
32317
|
+
),
|
|
32318
|
+
children: description
|
|
32319
|
+
}
|
|
32320
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
|
|
32321
|
+
ctaActionContent
|
|
32322
|
+
] }),
|
|
32323
|
+
/* @__PURE__ */ jsx(
|
|
32324
|
+
"div",
|
|
32325
|
+
{
|
|
32326
|
+
className: cn(
|
|
32327
|
+
"grid gap-6 md:grid-cols-2 lg:grid-cols-3 lg:gap-8",
|
|
32328
|
+
postsClassName
|
|
32329
|
+
),
|
|
32330
|
+
children: postsContent
|
|
32331
|
+
}
|
|
32332
|
+
)
|
|
32333
|
+
]
|
|
32334
|
+
}
|
|
32335
|
+
)
|
|
32252
32336
|
}
|
|
32253
32337
|
);
|
|
32254
32338
|
}
|
|
@@ -32270,28 +32354,27 @@ function BlogCardsReadTime({
|
|
|
32270
32354
|
postCardClassName,
|
|
32271
32355
|
viewAllClassName,
|
|
32272
32356
|
optixFlowConfig,
|
|
32273
|
-
background
|
|
32274
|
-
spacing
|
|
32357
|
+
background,
|
|
32358
|
+
spacing,
|
|
32275
32359
|
pattern,
|
|
32276
32360
|
patternOpacity
|
|
32277
32361
|
}) {
|
|
32278
32362
|
const renderedViewAllAction = React52.useMemo(() => {
|
|
32279
32363
|
if (viewAllSlot) return viewAllSlot;
|
|
32280
32364
|
if (!viewAllAction) return null;
|
|
32281
|
-
const {
|
|
32282
|
-
|
|
32283
|
-
|
|
32284
|
-
|
|
32285
|
-
|
|
32286
|
-
|
|
32287
|
-
|
|
32288
|
-
|
|
32289
|
-
|
|
32290
|
-
|
|
32291
|
-
|
|
32292
|
-
|
|
32293
|
-
|
|
32294
|
-
);
|
|
32365
|
+
const {
|
|
32366
|
+
label,
|
|
32367
|
+
icon,
|
|
32368
|
+
iconAfter,
|
|
32369
|
+
children,
|
|
32370
|
+
className: actionClassName,
|
|
32371
|
+
...pressableProps
|
|
32372
|
+
} = viewAllAction;
|
|
32373
|
+
return /* @__PURE__ */ jsx(Pressable, { asButton: true, className: actionClassName, ...pressableProps, children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
32374
|
+
icon,
|
|
32375
|
+
label,
|
|
32376
|
+
iconAfter
|
|
32377
|
+
] }) });
|
|
32295
32378
|
}, [viewAllSlot, viewAllAction]);
|
|
32296
32379
|
const renderedPosts = React52.useMemo(() => {
|
|
32297
32380
|
if (postsSlot) return postsSlot;
|
|
@@ -32320,7 +32403,13 @@ function BlogCardsReadTime({
|
|
|
32320
32403
|
/* @__PURE__ */ jsx(Separator, { className: "my-5" }),
|
|
32321
32404
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between gap-4", children: [
|
|
32322
32405
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
|
|
32323
|
-
/* @__PURE__ */ jsx(Avatar, { className: "size-9 rounded-full ring-1 ring-input", children: post.authorAvatar && /* @__PURE__ */ jsx(
|
|
32406
|
+
/* @__PURE__ */ jsx(Avatar, { className: "size-9 rounded-full ring-1 ring-input", children: post.authorAvatar && /* @__PURE__ */ jsx(
|
|
32407
|
+
AvatarImage,
|
|
32408
|
+
{
|
|
32409
|
+
src: post.authorAvatar,
|
|
32410
|
+
alt: typeof post.author === "string" ? post.author : "Author"
|
|
32411
|
+
}
|
|
32412
|
+
) }),
|
|
32324
32413
|
post.author && /* @__PURE__ */ jsx("span", { className: "text-sm font-medium", children: post.author })
|
|
32325
32414
|
] }),
|
|
32326
32415
|
post.readTime && /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: "h-fit", children: post.readTime })
|
|
@@ -32341,16 +32430,50 @@ function BlogCardsReadTime({
|
|
|
32341
32430
|
pattern,
|
|
32342
32431
|
patternOpacity,
|
|
32343
32432
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
32344
|
-
/* @__PURE__ */ jsxs(
|
|
32345
|
-
|
|
32346
|
-
|
|
32347
|
-
|
|
32348
|
-
|
|
32349
|
-
|
|
32350
|
-
|
|
32351
|
-
|
|
32352
|
-
|
|
32353
|
-
|
|
32433
|
+
/* @__PURE__ */ jsxs(
|
|
32434
|
+
"div",
|
|
32435
|
+
{
|
|
32436
|
+
className: cn(
|
|
32437
|
+
"mx-auto flex max-w-3xl flex-col items-center gap-4 text-center",
|
|
32438
|
+
headerClassName
|
|
32439
|
+
),
|
|
32440
|
+
children: [
|
|
32441
|
+
badge && /* @__PURE__ */ jsx("div", { className: badgeClassName, children: typeof badge === "string" ? /* @__PURE__ */ jsxs(Badge, { variant: "outline", className: "gap-1 py-1", children: [
|
|
32442
|
+
/* @__PURE__ */ jsx(
|
|
32443
|
+
DynamicIcon,
|
|
32444
|
+
{
|
|
32445
|
+
name: "lucide/file-text",
|
|
32446
|
+
size: 16,
|
|
32447
|
+
className: "h-full w-4"
|
|
32448
|
+
}
|
|
32449
|
+
),
|
|
32450
|
+
" ",
|
|
32451
|
+
badge
|
|
32452
|
+
] }) : badge }),
|
|
32453
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32454
|
+
"h1",
|
|
32455
|
+
{
|
|
32456
|
+
className: cn(
|
|
32457
|
+
"text-4xl font-semibold text-balance",
|
|
32458
|
+
headingClassName
|
|
32459
|
+
),
|
|
32460
|
+
children: heading
|
|
32461
|
+
}
|
|
32462
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
32463
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
32464
|
+
]
|
|
32465
|
+
}
|
|
32466
|
+
),
|
|
32467
|
+
/* @__PURE__ */ jsx(
|
|
32468
|
+
"div",
|
|
32469
|
+
{
|
|
32470
|
+
className: cn(
|
|
32471
|
+
"mt-20 grid gap-4 md:grid-cols-2 lg:grid-cols-3",
|
|
32472
|
+
postsClassName
|
|
32473
|
+
),
|
|
32474
|
+
children: renderedPosts
|
|
32475
|
+
}
|
|
32476
|
+
),
|
|
32354
32477
|
(viewAllSlot || viewAllAction) && /* @__PURE__ */ jsx("div", { className: cn("mt-10 flex justify-center", viewAllClassName), children: renderedViewAllAction })
|
|
32355
32478
|
] })
|
|
32356
32479
|
}
|
|
@@ -32376,19 +32499,30 @@ function BlogCategoryOverlay({
|
|
|
32376
32499
|
postCardClassName,
|
|
32377
32500
|
categoryBadgeClassName,
|
|
32378
32501
|
optixFlowConfig,
|
|
32379
|
-
background
|
|
32380
|
-
spacing
|
|
32502
|
+
background,
|
|
32503
|
+
spacing,
|
|
32381
32504
|
pattern,
|
|
32382
32505
|
patternOpacity
|
|
32383
32506
|
}) {
|
|
32384
32507
|
const viewAllActionContent = React52.useMemo(() => {
|
|
32385
32508
|
if (viewAllSlot) return viewAllSlot;
|
|
32386
32509
|
if (!viewAllAction) return null;
|
|
32387
|
-
const {
|
|
32510
|
+
const {
|
|
32511
|
+
label,
|
|
32512
|
+
icon,
|
|
32513
|
+
iconAfter,
|
|
32514
|
+
children,
|
|
32515
|
+
className: actionClassName,
|
|
32516
|
+
...pressableProps
|
|
32517
|
+
} = viewAllAction;
|
|
32388
32518
|
return /* @__PURE__ */ jsx(
|
|
32389
32519
|
Pressable,
|
|
32390
32520
|
{
|
|
32391
|
-
className: cn(
|
|
32521
|
+
className: cn(
|
|
32522
|
+
"flex items-center gap-1 text-sm font-semibold",
|
|
32523
|
+
actionClassName,
|
|
32524
|
+
viewAllClassName
|
|
32525
|
+
),
|
|
32392
32526
|
...pressableProps,
|
|
32393
32527
|
children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
32394
32528
|
icon,
|
|
@@ -32419,7 +32553,10 @@ function BlogCategoryOverlay({
|
|
|
32419
32553
|
Badge,
|
|
32420
32554
|
{
|
|
32421
32555
|
variant: "secondary",
|
|
32422
|
-
className: cn(
|
|
32556
|
+
className: cn(
|
|
32557
|
+
"absolute top-4 right-4 bg-background/70 px-3 py-1 text-sm backdrop-blur-sm",
|
|
32558
|
+
categoryBadgeClassName
|
|
32559
|
+
),
|
|
32423
32560
|
children: post.category || post.label
|
|
32424
32561
|
}
|
|
32425
32562
|
)
|
|
@@ -32428,18 +32565,39 @@ function BlogCategoryOverlay({
|
|
|
32428
32565
|
post.title && (typeof post.title === "string" ? /* @__PURE__ */ jsx("h2", { className: "mb-5 text-xl font-semibold", children: post.title }) : /* @__PURE__ */ jsx("div", { className: "mb-5 text-xl font-semibold", children: post.title })),
|
|
32429
32566
|
/* @__PURE__ */ jsxs("div", { className: "flex justify-between gap-6 text-sm", children: [
|
|
32430
32567
|
(post.date || post.published) && /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1 text-muted-foreground", children: [
|
|
32431
|
-
/* @__PURE__ */ jsx(
|
|
32568
|
+
/* @__PURE__ */ jsx(
|
|
32569
|
+
DynamicIcon,
|
|
32570
|
+
{
|
|
32571
|
+
name: "lucide/calendar",
|
|
32572
|
+
size: 16,
|
|
32573
|
+
className: "h-4 w-4"
|
|
32574
|
+
}
|
|
32575
|
+
),
|
|
32432
32576
|
post.date || post.published
|
|
32433
32577
|
] }),
|
|
32434
32578
|
readMoreText && /* @__PURE__ */ jsxs(Pressable, { href: postHref, className: "flex items-center gap-1", children: [
|
|
32435
32579
|
readMoreText,
|
|
32436
|
-
/* @__PURE__ */ jsx(
|
|
32580
|
+
/* @__PURE__ */ jsx(
|
|
32581
|
+
DynamicIcon,
|
|
32582
|
+
{
|
|
32583
|
+
name: "lucide/chevron-right",
|
|
32584
|
+
size: 12,
|
|
32585
|
+
className: "h-full w-3"
|
|
32586
|
+
}
|
|
32587
|
+
)
|
|
32437
32588
|
] })
|
|
32438
32589
|
] })
|
|
32439
32590
|
] })
|
|
32440
32591
|
] }, postId);
|
|
32441
32592
|
});
|
|
32442
|
-
}, [
|
|
32593
|
+
}, [
|
|
32594
|
+
postsSlot,
|
|
32595
|
+
posts,
|
|
32596
|
+
postCardClassName,
|
|
32597
|
+
categoryBadgeClassName,
|
|
32598
|
+
optixFlowConfig,
|
|
32599
|
+
readMoreText
|
|
32600
|
+
]);
|
|
32443
32601
|
return /* @__PURE__ */ jsx(
|
|
32444
32602
|
Section,
|
|
32445
32603
|
{
|
|
@@ -32449,13 +32607,40 @@ function BlogCategoryOverlay({
|
|
|
32449
32607
|
pattern,
|
|
32450
32608
|
patternOpacity,
|
|
32451
32609
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
32452
|
-
/* @__PURE__ */ jsxs(
|
|
32453
|
-
|
|
32454
|
-
|
|
32455
|
-
|
|
32456
|
-
|
|
32457
|
-
|
|
32458
|
-
|
|
32610
|
+
/* @__PURE__ */ jsxs(
|
|
32611
|
+
"div",
|
|
32612
|
+
{
|
|
32613
|
+
className: cn(
|
|
32614
|
+
"mx-auto flex max-w-3xl flex-col items-center gap-6 text-center",
|
|
32615
|
+
headerClassName
|
|
32616
|
+
),
|
|
32617
|
+
children: [
|
|
32618
|
+
badge && /* @__PURE__ */ jsx("div", { className: badgeClassName, children: typeof badge === "string" ? /* @__PURE__ */ jsx(Badge, { variant: "outline", children: badge }) : badge }),
|
|
32619
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32620
|
+
"h1",
|
|
32621
|
+
{
|
|
32622
|
+
className: cn(
|
|
32623
|
+
"text-4xl font-semibold text-balance",
|
|
32624
|
+
headingClassName
|
|
32625
|
+
),
|
|
32626
|
+
children: heading
|
|
32627
|
+
}
|
|
32628
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
32629
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
|
|
32630
|
+
viewAllActionContent
|
|
32631
|
+
]
|
|
32632
|
+
}
|
|
32633
|
+
),
|
|
32634
|
+
/* @__PURE__ */ jsx(
|
|
32635
|
+
"div",
|
|
32636
|
+
{
|
|
32637
|
+
className: cn(
|
|
32638
|
+
"mt-20 grid gap-6 md:grid-cols-2 lg:grid-cols-3",
|
|
32639
|
+
postsClassName
|
|
32640
|
+
),
|
|
32641
|
+
children: postsContent
|
|
32642
|
+
}
|
|
32643
|
+
)
|
|
32459
32644
|
] })
|
|
32460
32645
|
}
|
|
32461
32646
|
);
|
|
@@ -32479,8 +32664,8 @@ function BlogFeaturedPopular({
|
|
|
32479
32664
|
postsClassName,
|
|
32480
32665
|
postCardClassName,
|
|
32481
32666
|
optixFlowConfig,
|
|
32482
|
-
background
|
|
32483
|
-
spacing
|
|
32667
|
+
background,
|
|
32668
|
+
spacing,
|
|
32484
32669
|
pattern,
|
|
32485
32670
|
patternOpacity
|
|
32486
32671
|
}) {
|
|
@@ -32495,7 +32680,10 @@ function BlogFeaturedPopular({
|
|
|
32495
32680
|
return /* @__PURE__ */ jsxs(
|
|
32496
32681
|
PostWrapper,
|
|
32497
32682
|
{
|
|
32498
|
-
className: cn(
|
|
32683
|
+
className: cn(
|
|
32684
|
+
"my-16 grid grid-cols-1 items-center gap-8 md:grid-cols-2 lg:gap-16",
|
|
32685
|
+
featuredClassName
|
|
32686
|
+
),
|
|
32499
32687
|
...wrapperProps,
|
|
32500
32688
|
children: [
|
|
32501
32689
|
featuredPost.image && /* @__PURE__ */ jsx(
|
|
@@ -32503,19 +32691,38 @@ function BlogFeaturedPopular({
|
|
|
32503
32691
|
{
|
|
32504
32692
|
src: featuredPost.image,
|
|
32505
32693
|
alt: typeof featuredPost.title === "string" ? featuredPost.title : "Featured post",
|
|
32506
|
-
className: cn(
|
|
32694
|
+
className: cn(
|
|
32695
|
+
"aspect-video rounded-lg object-cover",
|
|
32696
|
+
featuredImageClassName
|
|
32697
|
+
),
|
|
32507
32698
|
optixFlowConfig
|
|
32508
32699
|
}
|
|
32509
32700
|
),
|
|
32510
|
-
/* @__PURE__ */ jsxs(
|
|
32511
|
-
|
|
32512
|
-
|
|
32513
|
-
|
|
32514
|
-
|
|
32701
|
+
/* @__PURE__ */ jsxs(
|
|
32702
|
+
"div",
|
|
32703
|
+
{
|
|
32704
|
+
className: cn(
|
|
32705
|
+
"flex flex-col items-start gap-4",
|
|
32706
|
+
featuredContentClassName
|
|
32707
|
+
),
|
|
32708
|
+
children: [
|
|
32709
|
+
(featuredPost.category || featuredPost.label) && /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: "shrink", children: featuredPost.category || featuredPost.label }),
|
|
32710
|
+
featuredPost.title && (typeof featuredPost.title === "string" ? /* @__PURE__ */ jsx("h2", { className: "text-2xl font-semibold text-balance md:max-w-lg lg:text-3xl", children: featuredPost.title }) : /* @__PURE__ */ jsx("div", { className: "text-2xl font-semibold text-balance md:max-w-lg lg:text-3xl", children: featuredPost.title })),
|
|
32711
|
+
(featuredPost.description || featuredPost.summary) && /* @__PURE__ */ jsx("p", { className: "text-muted-foreground md:max-w-lg", children: featuredPost.description || featuredPost.summary })
|
|
32712
|
+
]
|
|
32713
|
+
}
|
|
32714
|
+
)
|
|
32515
32715
|
]
|
|
32516
32716
|
}
|
|
32517
32717
|
);
|
|
32518
|
-
}, [
|
|
32718
|
+
}, [
|
|
32719
|
+
featuredSlot,
|
|
32720
|
+
featuredPost,
|
|
32721
|
+
featuredClassName,
|
|
32722
|
+
featuredImageClassName,
|
|
32723
|
+
featuredContentClassName,
|
|
32724
|
+
optixFlowConfig
|
|
32725
|
+
]);
|
|
32519
32726
|
const renderedPopularPosts = React52.useMemo(() => {
|
|
32520
32727
|
if (postsSlot) return postsSlot;
|
|
32521
32728
|
if (!popularPosts || popularPosts.length === 0) return null;
|
|
@@ -32558,19 +32765,55 @@ function BlogFeaturedPopular({
|
|
|
32558
32765
|
patternOpacity,
|
|
32559
32766
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
32560
32767
|
(heading || description) && /* @__PURE__ */ jsxs("div", { className: cn("mb-16 text-center", headerClassName), children: [
|
|
32561
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32562
|
-
|
|
32563
|
-
|
|
32564
|
-
|
|
32565
|
-
|
|
32566
|
-
|
|
32567
|
-
|
|
32568
|
-
|
|
32569
|
-
|
|
32570
|
-
|
|
32571
|
-
|
|
32572
|
-
|
|
32573
|
-
|
|
32768
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32769
|
+
"h1",
|
|
32770
|
+
{
|
|
32771
|
+
className: cn(
|
|
32772
|
+
"text-5xl font-medium md:text-6xl",
|
|
32773
|
+
headingClassName
|
|
32774
|
+
),
|
|
32775
|
+
children: heading
|
|
32776
|
+
}
|
|
32777
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
32778
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
32779
|
+
"p",
|
|
32780
|
+
{
|
|
32781
|
+
className: cn(
|
|
32782
|
+
"mx-auto mt-4 max-w-xl text-lg text-muted-foreground",
|
|
32783
|
+
descriptionClassName
|
|
32784
|
+
),
|
|
32785
|
+
children: description
|
|
32786
|
+
}
|
|
32787
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
32788
|
+
] }),
|
|
32789
|
+
/* @__PURE__ */ jsxs("div", { className: "mx-auto max-w-7xl", children: [
|
|
32790
|
+
renderedFeaturedPost,
|
|
32791
|
+
popularHeading && (typeof popularHeading === "string" ? /* @__PURE__ */ jsx(
|
|
32792
|
+
"p",
|
|
32793
|
+
{
|
|
32794
|
+
className: cn(
|
|
32795
|
+
"text-2xl font-medium md:text-3xl",
|
|
32796
|
+
popularHeadingClassName
|
|
32797
|
+
),
|
|
32798
|
+
children: popularHeading
|
|
32799
|
+
}
|
|
32800
|
+
) : /* @__PURE__ */ jsx("div", { className: popularHeadingClassName, children: popularHeading })),
|
|
32801
|
+
renderedPopularPosts && /* @__PURE__ */ jsx(
|
|
32802
|
+
"div",
|
|
32803
|
+
{
|
|
32804
|
+
className: cn(
|
|
32805
|
+
"mt-8 grid grid-cols-1 gap-10 md:grid-cols-3 md:gap-6",
|
|
32806
|
+
postsClassName
|
|
32807
|
+
),
|
|
32808
|
+
children: renderedPopularPosts
|
|
32809
|
+
}
|
|
32810
|
+
)
|
|
32811
|
+
] })
|
|
32812
|
+
] })
|
|
32813
|
+
}
|
|
32814
|
+
);
|
|
32815
|
+
}
|
|
32816
|
+
function BlogRelatedArticles({
|
|
32574
32817
|
heading,
|
|
32575
32818
|
seeAllAction,
|
|
32576
32819
|
seeAllSlot,
|
|
@@ -32583,20 +32826,31 @@ function BlogRelatedArticles({
|
|
|
32583
32826
|
seeAllClassName,
|
|
32584
32827
|
articlesClassName,
|
|
32585
32828
|
articleCardClassName,
|
|
32586
|
-
background
|
|
32587
|
-
spacing
|
|
32829
|
+
background,
|
|
32830
|
+
spacing,
|
|
32588
32831
|
pattern,
|
|
32589
32832
|
patternOpacity
|
|
32590
32833
|
}) {
|
|
32591
32834
|
const renderedSeeAllAction = React52.useMemo(() => {
|
|
32592
32835
|
if (seeAllSlot) return seeAllSlot;
|
|
32593
32836
|
if (!seeAllAction) return null;
|
|
32594
|
-
const {
|
|
32837
|
+
const {
|
|
32838
|
+
label,
|
|
32839
|
+
icon,
|
|
32840
|
+
iconAfter,
|
|
32841
|
+
children,
|
|
32842
|
+
className: actionClassName,
|
|
32843
|
+
...pressableProps
|
|
32844
|
+
} = seeAllAction;
|
|
32595
32845
|
return /* @__PURE__ */ jsx(
|
|
32596
32846
|
Pressable,
|
|
32597
32847
|
{
|
|
32598
32848
|
asButton: true,
|
|
32599
|
-
className: cn(
|
|
32849
|
+
className: cn(
|
|
32850
|
+
"md:h-10 md:px-4 md:py-2",
|
|
32851
|
+
actionClassName,
|
|
32852
|
+
seeAllClassName
|
|
32853
|
+
),
|
|
32600
32854
|
...pressableProps,
|
|
32601
32855
|
children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
32602
32856
|
icon,
|
|
@@ -32637,11 +32891,38 @@ function BlogRelatedArticles({
|
|
|
32637
32891
|
pattern,
|
|
32638
32892
|
patternOpacity,
|
|
32639
32893
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
32640
|
-
/* @__PURE__ */ jsxs(
|
|
32641
|
-
|
|
32642
|
-
|
|
32643
|
-
|
|
32644
|
-
|
|
32894
|
+
/* @__PURE__ */ jsxs(
|
|
32895
|
+
"div",
|
|
32896
|
+
{
|
|
32897
|
+
className: cn(
|
|
32898
|
+
"mb-8 flex flex-wrap items-center justify-between gap-1",
|
|
32899
|
+
headerClassName
|
|
32900
|
+
),
|
|
32901
|
+
children: [
|
|
32902
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32903
|
+
"h1",
|
|
32904
|
+
{
|
|
32905
|
+
className: cn(
|
|
32906
|
+
"text-2xl font-semibold md:text-4xl",
|
|
32907
|
+
headingClassName
|
|
32908
|
+
),
|
|
32909
|
+
children: heading
|
|
32910
|
+
}
|
|
32911
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
32912
|
+
renderedSeeAllAction
|
|
32913
|
+
]
|
|
32914
|
+
}
|
|
32915
|
+
),
|
|
32916
|
+
/* @__PURE__ */ jsx(
|
|
32917
|
+
"div",
|
|
32918
|
+
{
|
|
32919
|
+
className: cn(
|
|
32920
|
+
"grid grid-cols-1 gap-16 md:grid-cols-2 lg:grid-cols-4 lg:gap-10",
|
|
32921
|
+
articlesClassName
|
|
32922
|
+
),
|
|
32923
|
+
children: renderedArticles
|
|
32924
|
+
}
|
|
32925
|
+
)
|
|
32645
32926
|
] })
|
|
32646
32927
|
}
|
|
32647
32928
|
);
|
|
@@ -32667,20 +32948,31 @@ function BlogTechInsights({
|
|
|
32667
32948
|
secondaryPostsClassName,
|
|
32668
32949
|
secondaryPostItemClassName,
|
|
32669
32950
|
optixFlowConfig,
|
|
32670
|
-
background
|
|
32671
|
-
spacing
|
|
32951
|
+
background,
|
|
32952
|
+
spacing,
|
|
32672
32953
|
pattern,
|
|
32673
32954
|
patternOpacity
|
|
32674
32955
|
}) {
|
|
32675
32956
|
const readMoreActionContent = useMemo$1(() => {
|
|
32676
32957
|
if (readMoreSlot) return readMoreSlot;
|
|
32677
32958
|
if (!readMoreAction) return null;
|
|
32678
|
-
const {
|
|
32959
|
+
const {
|
|
32960
|
+
label,
|
|
32961
|
+
icon,
|
|
32962
|
+
iconAfter,
|
|
32963
|
+
children,
|
|
32964
|
+
className: actionClassName,
|
|
32965
|
+
...pressableProps
|
|
32966
|
+
} = readMoreAction;
|
|
32679
32967
|
return /* @__PURE__ */ jsx(
|
|
32680
32968
|
Pressable,
|
|
32681
32969
|
{
|
|
32682
32970
|
asButton: true,
|
|
32683
|
-
className: cn(
|
|
32971
|
+
className: cn(
|
|
32972
|
+
"ml-auto rounded-full border-foreground text-foreground",
|
|
32973
|
+
actionClassName,
|
|
32974
|
+
readMoreClassName
|
|
32975
|
+
),
|
|
32684
32976
|
...pressableProps,
|
|
32685
32977
|
children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
32686
32978
|
icon,
|
|
@@ -32697,7 +32989,10 @@ function BlogTechInsights({
|
|
|
32697
32989
|
featuredPost.image && /* @__PURE__ */ jsx(
|
|
32698
32990
|
Img,
|
|
32699
32991
|
{
|
|
32700
|
-
className: cn(
|
|
32992
|
+
className: cn(
|
|
32993
|
+
"w-full rounded-lg object-cover",
|
|
32994
|
+
featuredImageClassName
|
|
32995
|
+
),
|
|
32701
32996
|
src: featuredPost.image,
|
|
32702
32997
|
alt: typeof featuredPost.title === "string" ? featuredPost.title : "Featured item",
|
|
32703
32998
|
optixFlowConfig
|
|
@@ -32712,7 +33007,13 @@ function BlogTechInsights({
|
|
|
32712
33007
|
] })
|
|
32713
33008
|
] })
|
|
32714
33009
|
] });
|
|
32715
|
-
}, [
|
|
33010
|
+
}, [
|
|
33011
|
+
featuredSlot,
|
|
33012
|
+
featuredPost,
|
|
33013
|
+
featuredClassName,
|
|
33014
|
+
featuredImageClassName,
|
|
33015
|
+
optixFlowConfig
|
|
33016
|
+
]);
|
|
32716
33017
|
const secondaryPostsContent = useMemo$1(() => {
|
|
32717
33018
|
if (secondaryPostsSlot) return secondaryPostsSlot;
|
|
32718
33019
|
if (!secondaryPosts || secondaryPosts.length === 0) return null;
|
|
@@ -32721,7 +33022,10 @@ function BlogTechInsights({
|
|
|
32721
33022
|
return /* @__PURE__ */ jsxs(
|
|
32722
33023
|
"div",
|
|
32723
33024
|
{
|
|
32724
|
-
className: cn(
|
|
33025
|
+
className: cn(
|
|
33026
|
+
"flex items-start gap-4 border-b pb-6 last:border-b-0",
|
|
33027
|
+
secondaryPostItemClassName
|
|
33028
|
+
),
|
|
32725
33029
|
children: [
|
|
32726
33030
|
/* @__PURE__ */ jsx("div", { className: "w-1/4 shrink-0 md:w-1/5", children: post.image && /* @__PURE__ */ jsx(
|
|
32727
33031
|
Img,
|
|
@@ -32738,7 +33042,12 @@ function BlogTechInsights({
|
|
|
32738
33042
|
postId
|
|
32739
33043
|
);
|
|
32740
33044
|
});
|
|
32741
|
-
}, [
|
|
33045
|
+
}, [
|
|
33046
|
+
secondaryPostsSlot,
|
|
33047
|
+
secondaryPosts,
|
|
33048
|
+
secondaryPostItemClassName,
|
|
33049
|
+
optixFlowConfig
|
|
33050
|
+
]);
|
|
32742
33051
|
return /* @__PURE__ */ jsx(
|
|
32743
33052
|
Section,
|
|
32744
33053
|
{
|
|
@@ -32749,16 +33058,52 @@ function BlogTechInsights({
|
|
|
32749
33058
|
patternOpacity,
|
|
32750
33059
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
32751
33060
|
/* @__PURE__ */ jsxs("div", { className: cn("mb-8", headerClassName), children: [
|
|
32752
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33061
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33062
|
+
"h1",
|
|
33063
|
+
{
|
|
33064
|
+
className: cn(
|
|
33065
|
+
"text-3xl font-bold text-foreground md:text-4xl lg:text-5xl",
|
|
33066
|
+
headingClassName
|
|
33067
|
+
),
|
|
33068
|
+
children: heading
|
|
33069
|
+
}
|
|
33070
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
32753
33071
|
/* @__PURE__ */ jsxs("div", { className: "mt-4 flex justify-start", children: [
|
|
32754
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
33072
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
33073
|
+
"span",
|
|
33074
|
+
{
|
|
33075
|
+
className: cn(
|
|
33076
|
+
"mt-2 block text-sm text-muted-foreground md:text-base",
|
|
33077
|
+
descriptionClassName
|
|
33078
|
+
),
|
|
33079
|
+
children: description
|
|
33080
|
+
}
|
|
33081
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
|
|
32755
33082
|
readMoreActionContent
|
|
32756
33083
|
] })
|
|
32757
33084
|
] }),
|
|
32758
|
-
/* @__PURE__ */ jsxs(
|
|
32759
|
-
|
|
32760
|
-
|
|
32761
|
-
|
|
33085
|
+
/* @__PURE__ */ jsxs(
|
|
33086
|
+
"div",
|
|
33087
|
+
{
|
|
33088
|
+
className: cn(
|
|
33089
|
+
"mt-12 grid grid-cols-1 gap-8 md:grid-cols-2 lg:gap-12",
|
|
33090
|
+
contentClassName
|
|
33091
|
+
),
|
|
33092
|
+
children: [
|
|
33093
|
+
featuredPostContent,
|
|
33094
|
+
/* @__PURE__ */ jsx(
|
|
33095
|
+
"div",
|
|
33096
|
+
{
|
|
33097
|
+
className: cn(
|
|
33098
|
+
"space-y-6 text-foreground md:space-y-8",
|
|
33099
|
+
secondaryPostsClassName
|
|
33100
|
+
),
|
|
33101
|
+
children: secondaryPostsContent
|
|
33102
|
+
}
|
|
33103
|
+
)
|
|
33104
|
+
]
|
|
33105
|
+
}
|
|
33106
|
+
)
|
|
32762
33107
|
] })
|
|
32763
33108
|
}
|
|
32764
33109
|
);
|
|
@@ -32782,15 +33127,22 @@ function BlogHorizontalCards({
|
|
|
32782
33127
|
postCardClassName,
|
|
32783
33128
|
ctaClassName,
|
|
32784
33129
|
optixFlowConfig,
|
|
32785
|
-
background
|
|
32786
|
-
spacing
|
|
33130
|
+
background,
|
|
33131
|
+
spacing,
|
|
32787
33132
|
pattern,
|
|
32788
33133
|
patternOpacity
|
|
32789
33134
|
}) {
|
|
32790
33135
|
const ctaContent = React52.useMemo(() => {
|
|
32791
33136
|
if (ctaSlot) return ctaSlot;
|
|
32792
33137
|
if (!ctaAction) return null;
|
|
32793
|
-
const {
|
|
33138
|
+
const {
|
|
33139
|
+
label,
|
|
33140
|
+
icon,
|
|
33141
|
+
iconAfter,
|
|
33142
|
+
children,
|
|
33143
|
+
className: actionClassName,
|
|
33144
|
+
...pressableProps
|
|
33145
|
+
} = ctaAction;
|
|
32794
33146
|
return /* @__PURE__ */ jsx(
|
|
32795
33147
|
Pressable,
|
|
32796
33148
|
{
|
|
@@ -32818,7 +33170,10 @@ function BlogHorizontalCards({
|
|
|
32818
33170
|
return /* @__PURE__ */ jsx(
|
|
32819
33171
|
Card,
|
|
32820
33172
|
{
|
|
32821
|
-
className: cn(
|
|
33173
|
+
className: cn(
|
|
33174
|
+
"overflow-hidden border-0 bg-transparent shadow-none",
|
|
33175
|
+
postCardClassName
|
|
33176
|
+
),
|
|
32822
33177
|
children: /* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-6 sm:flex-row", children: [
|
|
32823
33178
|
post.image && /* @__PURE__ */ jsx("div", { className: "shrink-0", children: /* @__PURE__ */ jsx(
|
|
32824
33179
|
Pressable,
|
|
@@ -32880,8 +33235,26 @@ function BlogHorizontalCards({
|
|
|
32880
33235
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container mx-auto", containerClassName), children: [
|
|
32881
33236
|
/* @__PURE__ */ jsxs("div", { className: cn("mx-auto max-w-3xl text-center", headerClassName), children: [
|
|
32882
33237
|
badge && (typeof badge === "string" ? /* @__PURE__ */ jsx(Badge, { variant: "secondary", className: cn("mb-6", badgeClassName), children: badge }) : /* @__PURE__ */ jsx("div", { className: cn("mb-6", badgeClassName), children: badge })),
|
|
32883
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
32884
|
-
|
|
33238
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33239
|
+
"h2",
|
|
33240
|
+
{
|
|
33241
|
+
className: cn(
|
|
33242
|
+
"mb-3 text-3xl font-semibold text-pretty md:mb-4 md:text-5xl lg:mb-6",
|
|
33243
|
+
headingClassName
|
|
33244
|
+
),
|
|
33245
|
+
children: heading
|
|
33246
|
+
}
|
|
33247
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
33248
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
33249
|
+
"p",
|
|
33250
|
+
{
|
|
33251
|
+
className: cn(
|
|
33252
|
+
"mb-12 text-muted-foreground md:text-base lg:text-lg",
|
|
33253
|
+
descriptionClassName
|
|
33254
|
+
),
|
|
33255
|
+
children: description
|
|
33256
|
+
}
|
|
33257
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
32885
33258
|
] }),
|
|
32886
33259
|
/* @__PURE__ */ jsx("div", { className: cn("mx-auto max-w-5xl space-y-12", postsClassName), children: postsContent }),
|
|
32887
33260
|
(ctaSlot || ctaAction) && /* @__PURE__ */ jsx("div", { className: cn("mt-16 text-center", ctaClassName), children: ctaContent })
|
|
@@ -32966,7 +33339,11 @@ function BreadcrumbSeparator({
|
|
|
32966
33339
|
);
|
|
32967
33340
|
}
|
|
32968
33341
|
var POSTS_PER_PAGE = 6;
|
|
32969
|
-
var BlogCard = React52.memo(function BlogCard2({
|
|
33342
|
+
var BlogCard = React52.memo(function BlogCard2({
|
|
33343
|
+
post,
|
|
33344
|
+
optixFlowConfig,
|
|
33345
|
+
className
|
|
33346
|
+
}) {
|
|
32970
33347
|
const postHref = post.href || post.url || post.link || "#";
|
|
32971
33348
|
const postImage = post.thumbnail || post.image;
|
|
32972
33349
|
const postTitle = typeof post.title === "string" ? post.title : "Content item";
|
|
@@ -33000,28 +33377,36 @@ var FilterForm = React52.memo(function FilterForm2({
|
|
|
33000
33377
|
onCategoryChange,
|
|
33001
33378
|
className
|
|
33002
33379
|
}) {
|
|
33003
|
-
return /* @__PURE__ */ jsx(
|
|
33004
|
-
|
|
33005
|
-
|
|
33006
|
-
|
|
33007
|
-
{
|
|
33008
|
-
|
|
33009
|
-
|
|
33010
|
-
|
|
33011
|
-
|
|
33012
|
-
|
|
33013
|
-
|
|
33014
|
-
|
|
33015
|
-
|
|
33016
|
-
|
|
33017
|
-
|
|
33018
|
-
|
|
33019
|
-
|
|
33020
|
-
|
|
33021
|
-
|
|
33022
|
-
|
|
33380
|
+
return /* @__PURE__ */ jsx(
|
|
33381
|
+
"div",
|
|
33382
|
+
{
|
|
33383
|
+
className: cn("flex w-full flex-wrap items-center gap-2.5", className),
|
|
33384
|
+
children: categories.map((category) => {
|
|
33385
|
+
const isChecked = selectedCategories.includes(category.value);
|
|
33386
|
+
return /* @__PURE__ */ jsxs(
|
|
33387
|
+
Label,
|
|
33388
|
+
{
|
|
33389
|
+
className: "flex cursor-pointer items-center gap-2.5 rounded-full bg-muted px-2.5 py-1.5",
|
|
33390
|
+
children: [
|
|
33391
|
+
/* @__PURE__ */ jsx("div", { children: category.label }),
|
|
33392
|
+
/* @__PURE__ */ jsx(
|
|
33393
|
+
Checkbox,
|
|
33394
|
+
{
|
|
33395
|
+
checked: isChecked,
|
|
33396
|
+
onCheckedChange: (checked) => onCategoryChange(category.value, !!checked)
|
|
33397
|
+
}
|
|
33398
|
+
)
|
|
33399
|
+
]
|
|
33400
|
+
},
|
|
33401
|
+
category.value
|
|
33402
|
+
);
|
|
33403
|
+
})
|
|
33404
|
+
}
|
|
33405
|
+
);
|
|
33023
33406
|
});
|
|
33024
|
-
var BreadcrumbBlog = React52.memo(function BreadcrumbBlog2({
|
|
33407
|
+
var BreadcrumbBlog = React52.memo(function BreadcrumbBlog2({
|
|
33408
|
+
breadcrumb
|
|
33409
|
+
}) {
|
|
33025
33410
|
return /* @__PURE__ */ jsx(Breadcrumb, { children: /* @__PURE__ */ jsx(BreadcrumbList, { children: breadcrumb.map((item, i) => {
|
|
33026
33411
|
const labelKey = typeof item.label === "string" ? item.label : `breadcrumb-${i}`;
|
|
33027
33412
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
@@ -33057,8 +33442,8 @@ function BlogFilteredResultsComponent({
|
|
|
33057
33442
|
postCardClassName,
|
|
33058
33443
|
loadMoreClassName,
|
|
33059
33444
|
optixFlowConfig,
|
|
33060
|
-
background
|
|
33061
|
-
spacing
|
|
33445
|
+
background,
|
|
33446
|
+
spacing,
|
|
33062
33447
|
pattern,
|
|
33063
33448
|
patternOpacity
|
|
33064
33449
|
}) {
|
|
@@ -33109,7 +33494,14 @@ function BlogFilteredResultsComponent({
|
|
|
33109
33494
|
const primaryPostContent = React52.useMemo(() => {
|
|
33110
33495
|
if (primaryPostSlot) return primaryPostSlot;
|
|
33111
33496
|
if (!primaryPost) return null;
|
|
33112
|
-
return /* @__PURE__ */ jsx(
|
|
33497
|
+
return /* @__PURE__ */ jsx(
|
|
33498
|
+
BlogCard,
|
|
33499
|
+
{
|
|
33500
|
+
post: primaryPost,
|
|
33501
|
+
optixFlowConfig,
|
|
33502
|
+
className: postCardClassName
|
|
33503
|
+
}
|
|
33504
|
+
);
|
|
33113
33505
|
}, [primaryPostSlot, primaryPost, optixFlowConfig, postCardClassName]);
|
|
33114
33506
|
const categoriesContent = React52.useMemo(() => {
|
|
33115
33507
|
if (categoriesSlot) return categoriesSlot;
|
|
@@ -33123,7 +33515,13 @@ function BlogFilteredResultsComponent({
|
|
|
33123
33515
|
className: categoriesClassName
|
|
33124
33516
|
}
|
|
33125
33517
|
);
|
|
33126
|
-
}, [
|
|
33518
|
+
}, [
|
|
33519
|
+
categoriesSlot,
|
|
33520
|
+
categories,
|
|
33521
|
+
selectedCategories,
|
|
33522
|
+
handleCategoryChange,
|
|
33523
|
+
categoriesClassName
|
|
33524
|
+
]);
|
|
33127
33525
|
const postsContent = React52.useMemo(() => {
|
|
33128
33526
|
if (postsSlot) return postsSlot;
|
|
33129
33527
|
return postsToDisplay.slice(0, visibleCount).map((post) => {
|
|
@@ -33138,11 +33536,24 @@ function BlogFilteredResultsComponent({
|
|
|
33138
33536
|
postKey
|
|
33139
33537
|
);
|
|
33140
33538
|
});
|
|
33141
|
-
}, [
|
|
33539
|
+
}, [
|
|
33540
|
+
postsSlot,
|
|
33541
|
+
postsToDisplay,
|
|
33542
|
+
visibleCount,
|
|
33543
|
+
optixFlowConfig,
|
|
33544
|
+
postCardClassName
|
|
33545
|
+
]);
|
|
33142
33546
|
const loadMoreContent = React52.useMemo(() => {
|
|
33143
33547
|
if (loadMoreSlot) return loadMoreSlot;
|
|
33144
33548
|
if (!loadMoreAction || !hasMore) return null;
|
|
33145
|
-
const {
|
|
33549
|
+
const {
|
|
33550
|
+
label,
|
|
33551
|
+
icon,
|
|
33552
|
+
iconAfter,
|
|
33553
|
+
children,
|
|
33554
|
+
className: actionClassName,
|
|
33555
|
+
...pressableProps
|
|
33556
|
+
} = loadMoreAction;
|
|
33146
33557
|
return /* @__PURE__ */ jsx(
|
|
33147
33558
|
Pressable,
|
|
33148
33559
|
{
|
|
@@ -33167,22 +33578,67 @@ function BlogFilteredResultsComponent({
|
|
|
33167
33578
|
pattern,
|
|
33168
33579
|
patternOpacity,
|
|
33169
33580
|
children: [
|
|
33170
|
-
/* @__PURE__ */ jsx(
|
|
33171
|
-
|
|
33172
|
-
|
|
33173
|
-
|
|
33174
|
-
|
|
33175
|
-
|
|
33581
|
+
/* @__PURE__ */ jsx(
|
|
33582
|
+
"div",
|
|
33583
|
+
{
|
|
33584
|
+
className: cn(
|
|
33585
|
+
"bg-muted bg-size-[3.125rem_3.125rem] bg-repeat",
|
|
33586
|
+
heroClassName
|
|
33587
|
+
),
|
|
33588
|
+
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: [
|
|
33589
|
+
/* @__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: [
|
|
33590
|
+
breadcrumbContent,
|
|
33591
|
+
/* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-5", children: [
|
|
33592
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33593
|
+
"h1",
|
|
33594
|
+
{
|
|
33595
|
+
className: cn(
|
|
33596
|
+
"text-[2.5rem] leading-[1.2] font-semibold md:text-5xl lg:text-6xl",
|
|
33597
|
+
headingClassName
|
|
33598
|
+
),
|
|
33599
|
+
children: heading
|
|
33600
|
+
}
|
|
33601
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
33602
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
33603
|
+
"p",
|
|
33604
|
+
{
|
|
33605
|
+
className: cn(
|
|
33606
|
+
"text-xl leading-[1.4] text-muted-foreground",
|
|
33607
|
+
descriptionClassName
|
|
33608
|
+
),
|
|
33609
|
+
children: description
|
|
33610
|
+
}
|
|
33611
|
+
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
33612
|
+
] })
|
|
33613
|
+
] }) }),
|
|
33614
|
+
(primaryPostSlot || primaryPost) && /* @__PURE__ */ jsx("div", { className: cn("w-full max-w-110", primaryPostClassName), children: primaryPostContent })
|
|
33176
33615
|
] })
|
|
33177
|
-
|
|
33178
|
-
|
|
33179
|
-
] }) }),
|
|
33616
|
+
}
|
|
33617
|
+
),
|
|
33180
33618
|
/* @__PURE__ */ jsx("div", { className: cn("py-20", allContentClassName), children: /* @__PURE__ */ jsxs("div", { className: "container flex flex-col gap-8", children: [
|
|
33181
|
-
allContentHeading && (typeof allContentHeading === "string" ? /* @__PURE__ */ jsx(
|
|
33619
|
+
allContentHeading && (typeof allContentHeading === "string" ? /* @__PURE__ */ jsx(
|
|
33620
|
+
"h2",
|
|
33621
|
+
{
|
|
33622
|
+
className: cn(
|
|
33623
|
+
"text-[1.75rem] leading-none font-medium md:text-[2.25rem] lg:text-[2rem]",
|
|
33624
|
+
allContentHeadingClassName
|
|
33625
|
+
),
|
|
33626
|
+
children: allContentHeading
|
|
33627
|
+
}
|
|
33628
|
+
) : /* @__PURE__ */ jsx("div", { className: allContentHeadingClassName, children: allContentHeading })),
|
|
33182
33629
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
33183
33630
|
categoriesContent,
|
|
33184
33631
|
/* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-4 py-8 lg:gap-8", children: [
|
|
33185
|
-
/* @__PURE__ */ jsx(
|
|
33632
|
+
/* @__PURE__ */ jsx(
|
|
33633
|
+
"div",
|
|
33634
|
+
{
|
|
33635
|
+
className: cn(
|
|
33636
|
+
"grid gap-10 md:grid-cols-2 lg:grid-cols-3",
|
|
33637
|
+
postsClassName
|
|
33638
|
+
),
|
|
33639
|
+
children: postsContent
|
|
33640
|
+
}
|
|
33641
|
+
),
|
|
33186
33642
|
/* @__PURE__ */ jsx("div", { className: cn("flex justify-center", loadMoreClassName), children: loadMoreContent })
|
|
33187
33643
|
] })
|
|
33188
33644
|
] })
|
|
@@ -33204,8 +33660,8 @@ function BlogMasonryFeaturedComponent({
|
|
|
33204
33660
|
featuredImageClassName,
|
|
33205
33661
|
postCardClassName,
|
|
33206
33662
|
optixFlowConfig,
|
|
33207
|
-
background
|
|
33208
|
-
spacing
|
|
33663
|
+
background,
|
|
33664
|
+
spacing,
|
|
33209
33665
|
pattern,
|
|
33210
33666
|
patternOpacity
|
|
33211
33667
|
}) {
|
|
@@ -33213,61 +33669,87 @@ function BlogMasonryFeaturedComponent({
|
|
|
33213
33669
|
const otherPosts = posts?.slice(1);
|
|
33214
33670
|
const featuredPostContent = React52.useMemo(() => {
|
|
33215
33671
|
if (featuredSlot) return featuredSlot;
|
|
33216
|
-
if (!featuredPost) return null;
|
|
33217
|
-
const postHref = featuredPost.href || featuredPost.url || featuredPost.link || "#";
|
|
33218
|
-
return /* @__PURE__ */ jsx(
|
|
33219
|
-
|
|
33220
|
-
{
|
|
33221
|
-
|
|
33222
|
-
|
|
33223
|
-
|
|
33224
|
-
|
|
33225
|
-
|
|
33226
|
-
|
|
33227
|
-
|
|
33228
|
-
|
|
33229
|
-
|
|
33230
|
-
|
|
33231
|
-
|
|
33232
|
-
|
|
33233
|
-
|
|
33234
|
-
|
|
33235
|
-
|
|
33236
|
-
|
|
33237
|
-
|
|
33238
|
-
|
|
33239
|
-
|
|
33240
|
-
|
|
33241
|
-
|
|
33242
|
-
|
|
33672
|
+
if (!featuredPost) return null;
|
|
33673
|
+
const postHref = featuredPost.href || featuredPost.url || featuredPost.link || "#";
|
|
33674
|
+
return /* @__PURE__ */ jsx(
|
|
33675
|
+
"div",
|
|
33676
|
+
{
|
|
33677
|
+
className: cn(
|
|
33678
|
+
"relative md:row-span-2 lg:col-span-2",
|
|
33679
|
+
featuredClassName
|
|
33680
|
+
),
|
|
33681
|
+
children: /* @__PURE__ */ jsxs(
|
|
33682
|
+
Pressable,
|
|
33683
|
+
{
|
|
33684
|
+
href: postHref,
|
|
33685
|
+
className: "block h-fit rounded-lg p-3 md:top-0",
|
|
33686
|
+
children: [
|
|
33687
|
+
featuredPost.image && /* @__PURE__ */ jsx(
|
|
33688
|
+
Img,
|
|
33689
|
+
{
|
|
33690
|
+
src: featuredPost.image,
|
|
33691
|
+
alt: typeof featuredPost.title === "string" ? featuredPost.title : "Featured content",
|
|
33692
|
+
className: cn(
|
|
33693
|
+
"h-48 w-full rounded-lg object-cover hover:opacity-80 md:h-80 lg:h-96",
|
|
33694
|
+
featuredImageClassName
|
|
33695
|
+
),
|
|
33696
|
+
optixFlowConfig
|
|
33697
|
+
}
|
|
33698
|
+
),
|
|
33699
|
+
/* @__PURE__ */ jsxs("div", { className: "mt-5", children: [
|
|
33700
|
+
/* @__PURE__ */ jsxs("div", { className: "mb-2.5 flex items-center gap-1 text-sm text-muted-foreground", children: [
|
|
33701
|
+
(featuredPost.date || featuredPost.published) && /* @__PURE__ */ jsx("time", { children: featuredPost.date || featuredPost.published }),
|
|
33702
|
+
(featuredPost.date || featuredPost.published) && featuredPost.author && "\xB7",
|
|
33703
|
+
featuredPost.author && /* @__PURE__ */ jsx("span", { children: featuredPost.author })
|
|
33704
|
+
] }),
|
|
33705
|
+
featuredPost.title && (typeof featuredPost.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-lg md:text-3xl lg:text-4xl", children: featuredPost.title }) : /* @__PURE__ */ jsx("div", { className: "text-lg md:text-3xl lg:text-4xl", children: featuredPost.title })),
|
|
33706
|
+
(featuredPost.description || featuredPost.summary) && /* @__PURE__ */ jsx("p", { className: "mt-4 text-muted-foreground", children: featuredPost.description || featuredPost.summary })
|
|
33707
|
+
] })
|
|
33708
|
+
]
|
|
33709
|
+
}
|
|
33710
|
+
)
|
|
33243
33711
|
}
|
|
33244
|
-
)
|
|
33245
|
-
}, [
|
|
33712
|
+
);
|
|
33713
|
+
}, [
|
|
33714
|
+
featuredSlot,
|
|
33715
|
+
featuredPost,
|
|
33716
|
+
featuredClassName,
|
|
33717
|
+
featuredImageClassName,
|
|
33718
|
+
optixFlowConfig
|
|
33719
|
+
]);
|
|
33246
33720
|
const otherPostsContent = React52.useMemo(() => {
|
|
33247
33721
|
if (postsSlot) return postsSlot;
|
|
33248
33722
|
if (!otherPosts || otherPosts.length === 0) return null;
|
|
33249
33723
|
return otherPosts.map((post) => {
|
|
33250
33724
|
const postHref = post.href || post.url || post.link || "#";
|
|
33251
33725
|
const postId = post.id || String(post.title) || Math.random().toString();
|
|
33252
|
-
return /* @__PURE__ */ jsxs(
|
|
33253
|
-
|
|
33254
|
-
|
|
33255
|
-
|
|
33256
|
-
|
|
33257
|
-
|
|
33258
|
-
|
|
33259
|
-
|
|
33260
|
-
|
|
33261
|
-
|
|
33262
|
-
|
|
33263
|
-
|
|
33264
|
-
|
|
33265
|
-
|
|
33266
|
-
|
|
33267
|
-
|
|
33268
|
-
|
|
33269
|
-
|
|
33270
|
-
|
|
33726
|
+
return /* @__PURE__ */ jsxs(
|
|
33727
|
+
Pressable,
|
|
33728
|
+
{
|
|
33729
|
+
href: postHref,
|
|
33730
|
+
className: cn("rounded-lg p-3", postCardClassName),
|
|
33731
|
+
children: [
|
|
33732
|
+
post.image && /* @__PURE__ */ jsx(
|
|
33733
|
+
Img,
|
|
33734
|
+
{
|
|
33735
|
+
src: post.image,
|
|
33736
|
+
alt: typeof post.title === "string" ? post.title : "Content item",
|
|
33737
|
+
className: "h-48 w-full rounded-lg object-cover hover:opacity-80",
|
|
33738
|
+
optixFlowConfig
|
|
33739
|
+
}
|
|
33740
|
+
),
|
|
33741
|
+
/* @__PURE__ */ jsxs("div", { className: "mt-5", children: [
|
|
33742
|
+
/* @__PURE__ */ jsxs("div", { className: "mb-2.5 flex items-center gap-1 text-sm text-muted-foreground", children: [
|
|
33743
|
+
(post.date || post.published) && /* @__PURE__ */ jsx("time", { children: post.date || post.published }),
|
|
33744
|
+
(post.date || post.published) && post.author && "\xB7",
|
|
33745
|
+
post.author && /* @__PURE__ */ jsx("span", { children: post.author })
|
|
33746
|
+
] }),
|
|
33747
|
+
post.title && (typeof post.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-lg", children: post.title }) : /* @__PURE__ */ jsx("div", { className: "text-lg", children: post.title }))
|
|
33748
|
+
] })
|
|
33749
|
+
]
|
|
33750
|
+
},
|
|
33751
|
+
postId
|
|
33752
|
+
);
|
|
33271
33753
|
});
|
|
33272
33754
|
}, [postsSlot, otherPosts, postCardClassName, optixFlowConfig]);
|
|
33273
33755
|
return /* @__PURE__ */ jsx(
|
|
@@ -33279,11 +33761,29 @@ function BlogMasonryFeaturedComponent({
|
|
|
33279
33761
|
pattern,
|
|
33280
33762
|
patternOpacity,
|
|
33281
33763
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
33282
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33283
|
-
|
|
33284
|
-
|
|
33285
|
-
|
|
33286
|
-
|
|
33764
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33765
|
+
"h1",
|
|
33766
|
+
{
|
|
33767
|
+
className: cn(
|
|
33768
|
+
"mb-12 text-center text-4xl font-medium md:text-7xl",
|
|
33769
|
+
headingClassName
|
|
33770
|
+
),
|
|
33771
|
+
children: heading
|
|
33772
|
+
}
|
|
33773
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })),
|
|
33774
|
+
/* @__PURE__ */ jsxs(
|
|
33775
|
+
"div",
|
|
33776
|
+
{
|
|
33777
|
+
className: cn(
|
|
33778
|
+
"xs:grid-cols-1 mt-24 grid gap-4 sm:grid-cols-2 lg:grid-cols-4",
|
|
33779
|
+
postsClassName
|
|
33780
|
+
),
|
|
33781
|
+
children: [
|
|
33782
|
+
featuredPostContent,
|
|
33783
|
+
otherPostsContent
|
|
33784
|
+
]
|
|
33785
|
+
}
|
|
33786
|
+
)
|
|
33287
33787
|
] })
|
|
33288
33788
|
}
|
|
33289
33789
|
);
|
|
@@ -33301,8 +33801,8 @@ function BlogHorizontalTimelineComponent({
|
|
|
33301
33801
|
postImageClassName,
|
|
33302
33802
|
postCardClassName,
|
|
33303
33803
|
optixFlowConfig,
|
|
33304
|
-
background
|
|
33305
|
-
spacing
|
|
33804
|
+
background,
|
|
33805
|
+
spacing,
|
|
33306
33806
|
pattern,
|
|
33307
33807
|
patternOpacity
|
|
33308
33808
|
}) {
|
|
@@ -33318,17 +33818,29 @@ function BlogHorizontalTimelineComponent({
|
|
|
33318
33818
|
return /* @__PURE__ */ jsxs(
|
|
33319
33819
|
"div",
|
|
33320
33820
|
{
|
|
33321
|
-
className: cn(
|
|
33821
|
+
className: cn(
|
|
33822
|
+
"flex flex-col items-center gap-16 md:flex-row",
|
|
33823
|
+
postItemClassName
|
|
33824
|
+
),
|
|
33322
33825
|
children: [
|
|
33323
|
-
post.image && /* @__PURE__ */ jsx(
|
|
33324
|
-
|
|
33826
|
+
post.image && /* @__PURE__ */ jsx(
|
|
33827
|
+
"div",
|
|
33325
33828
|
{
|
|
33326
|
-
|
|
33327
|
-
|
|
33328
|
-
|
|
33329
|
-
|
|
33829
|
+
className: cn(
|
|
33830
|
+
"flex h-80 w-full items-center justify-center overflow-hidden rounded-3xl bg-muted md:w-140",
|
|
33831
|
+
postImageClassName
|
|
33832
|
+
),
|
|
33833
|
+
children: /* @__PURE__ */ jsx(
|
|
33834
|
+
Img,
|
|
33835
|
+
{
|
|
33836
|
+
src: post.image,
|
|
33837
|
+
className: "h-full w-full object-cover",
|
|
33838
|
+
alt: postImageAlt,
|
|
33839
|
+
optixFlowConfig
|
|
33840
|
+
}
|
|
33841
|
+
)
|
|
33330
33842
|
}
|
|
33331
|
-
)
|
|
33843
|
+
),
|
|
33332
33844
|
/* @__PURE__ */ jsx(Card, { className: cn("border-none shadow-none", postCardClassName), children: /* @__PURE__ */ jsx(CardContent, { className: "p-0", children: /* @__PURE__ */ jsxs(
|
|
33333
33845
|
"div",
|
|
33334
33846
|
{
|
|
@@ -33364,7 +33876,15 @@ function BlogHorizontalTimelineComponent({
|
|
|
33364
33876
|
postId
|
|
33365
33877
|
);
|
|
33366
33878
|
});
|
|
33367
|
-
}, [
|
|
33879
|
+
}, [
|
|
33880
|
+
postsSlot,
|
|
33881
|
+
posts,
|
|
33882
|
+
postItemClassName,
|
|
33883
|
+
postImageClassName,
|
|
33884
|
+
postCardClassName,
|
|
33885
|
+
optixFlowConfig,
|
|
33886
|
+
readText
|
|
33887
|
+
]);
|
|
33368
33888
|
return /* @__PURE__ */ jsx(
|
|
33369
33889
|
Section,
|
|
33370
33890
|
{
|
|
@@ -33374,7 +33894,16 @@ function BlogHorizontalTimelineComponent({
|
|
|
33374
33894
|
pattern,
|
|
33375
33895
|
patternOpacity,
|
|
33376
33896
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
33377
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33897
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
33898
|
+
"h1",
|
|
33899
|
+
{
|
|
33900
|
+
className: cn(
|
|
33901
|
+
"mb-12 max-w-lg font-sans text-5xl font-extrabold tracking-tight text-foreground md:text-7xl",
|
|
33902
|
+
headingClassName
|
|
33903
|
+
),
|
|
33904
|
+
children: heading
|
|
33905
|
+
}
|
|
33906
|
+
) : /* @__PURE__ */ jsx("div", { className: cn("mb-12", headingClassName), children: heading })),
|
|
33378
33907
|
/* @__PURE__ */ jsx("div", { className: cn("flex flex-col", postsClassName), children: renderPosts })
|
|
33379
33908
|
] })
|
|
33380
33909
|
}
|
|
@@ -33396,15 +33925,22 @@ function BlogGridNinePosts({
|
|
|
33396
33925
|
postCardClassName,
|
|
33397
33926
|
ctaClassName,
|
|
33398
33927
|
optixFlowConfig,
|
|
33399
|
-
background
|
|
33400
|
-
spacing
|
|
33928
|
+
background,
|
|
33929
|
+
spacing,
|
|
33401
33930
|
pattern,
|
|
33402
33931
|
patternOpacity
|
|
33403
33932
|
}) {
|
|
33404
33933
|
const renderedCtaAction = React52.useMemo(() => {
|
|
33405
33934
|
if (ctaSlot) return ctaSlot;
|
|
33406
33935
|
if (!ctaAction) return null;
|
|
33407
|
-
const {
|
|
33936
|
+
const {
|
|
33937
|
+
label,
|
|
33938
|
+
icon,
|
|
33939
|
+
iconAfter,
|
|
33940
|
+
children,
|
|
33941
|
+
className: actionClassName,
|
|
33942
|
+
...pressableProps
|
|
33943
|
+
} = ctaAction;
|
|
33408
33944
|
return /* @__PURE__ */ jsx(
|
|
33409
33945
|
Pressable,
|
|
33410
33946
|
{
|
|
@@ -33470,11 +34006,38 @@ function BlogGridNinePosts({
|
|
|
33470
34006
|
patternOpacity,
|
|
33471
34007
|
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
33472
34008
|
/* @__PURE__ */ jsxs("div", { className: cn("mb-8 md:mb-14 lg:mb-16", headerClassName), children: [
|
|
33473
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
34009
|
+
/* @__PURE__ */ jsx("div", { className: "flex items-start justify-between gap-8", children: /* @__PURE__ */ jsx("div", { children: heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
34010
|
+
"h2",
|
|
34011
|
+
{
|
|
34012
|
+
className: cn(
|
|
34013
|
+
"mb-4 w-full text-4xl font-medium md:mb-5 md:text-5xl lg:mb-6 lg:text-6xl",
|
|
34014
|
+
headingClassName
|
|
34015
|
+
),
|
|
34016
|
+
children: heading
|
|
34017
|
+
}
|
|
34018
|
+
) : /* @__PURE__ */ jsx("div", { className: headingClassName, children: heading })) }) }),
|
|
33474
34019
|
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: descriptionClassName, children: description }) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
33475
34020
|
] }),
|
|
33476
|
-
/* @__PURE__ */ jsx(
|
|
33477
|
-
|
|
34021
|
+
/* @__PURE__ */ jsx(
|
|
34022
|
+
"div",
|
|
34023
|
+
{
|
|
34024
|
+
className: cn(
|
|
34025
|
+
"grid gap-x-4 gap-y-8 md:grid-cols-2 lg:gap-x-6 lg:gap-y-12 2xl:grid-cols-3",
|
|
34026
|
+
postsClassName
|
|
34027
|
+
),
|
|
34028
|
+
children: renderedPosts
|
|
34029
|
+
}
|
|
34030
|
+
),
|
|
34031
|
+
(ctaSlot || ctaAction) && /* @__PURE__ */ jsx(
|
|
34032
|
+
"div",
|
|
34033
|
+
{
|
|
34034
|
+
className: cn(
|
|
34035
|
+
"mt-8 flex flex-col items-center py-2 md:hidden",
|
|
34036
|
+
ctaClassName
|
|
34037
|
+
),
|
|
34038
|
+
children: renderedCtaAction
|
|
34039
|
+
}
|
|
34040
|
+
)
|
|
33478
34041
|
] })
|
|
33479
34042
|
}
|
|
33480
34043
|
);
|
|
@@ -33767,7 +34330,7 @@ function BlogCarouselAppleComponent({
|
|
|
33767
34330
|
},
|
|
33768
34331
|
`carousel-card-${index}`
|
|
33769
34332
|
);
|
|
33770
|
-
}).filter(
|
|
34333
|
+
}).filter((element) => element !== null);
|
|
33771
34334
|
}, [
|
|
33772
34335
|
carouselCards,
|
|
33773
34336
|
posts,
|
|
@@ -33801,122 +34364,6 @@ function BlogCarouselAppleComponent({
|
|
|
33801
34364
|
}
|
|
33802
34365
|
);
|
|
33803
34366
|
}
|
|
33804
|
-
var alertVariants = cva(
|
|
33805
|
-
"relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
|
|
33806
|
-
{
|
|
33807
|
-
variants: {
|
|
33808
|
-
variant: {
|
|
33809
|
-
default: "bg-card text-card-foreground",
|
|
33810
|
-
destructive: "text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90"
|
|
33811
|
-
}
|
|
33812
|
-
},
|
|
33813
|
-
defaultVariants: {
|
|
33814
|
-
variant: "default"
|
|
33815
|
-
}
|
|
33816
|
-
}
|
|
33817
|
-
);
|
|
33818
|
-
function Alert({
|
|
33819
|
-
className,
|
|
33820
|
-
variant,
|
|
33821
|
-
...props
|
|
33822
|
-
}) {
|
|
33823
|
-
return /* @__PURE__ */ jsx(
|
|
33824
|
-
"div",
|
|
33825
|
-
{
|
|
33826
|
-
"data-slot": "alert",
|
|
33827
|
-
role: "alert",
|
|
33828
|
-
className: cn(alertVariants({ variant }), className),
|
|
33829
|
-
...props
|
|
33830
|
-
}
|
|
33831
|
-
);
|
|
33832
|
-
}
|
|
33833
|
-
function AlertTitle({ className, ...props }) {
|
|
33834
|
-
return /* @__PURE__ */ jsx(
|
|
33835
|
-
"div",
|
|
33836
|
-
{
|
|
33837
|
-
"data-slot": "alert-title",
|
|
33838
|
-
className: cn(
|
|
33839
|
-
"col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",
|
|
33840
|
-
className
|
|
33841
|
-
),
|
|
33842
|
-
...props
|
|
33843
|
-
}
|
|
33844
|
-
);
|
|
33845
|
-
}
|
|
33846
|
-
function AlertDescription({
|
|
33847
|
-
className,
|
|
33848
|
-
...props
|
|
33849
|
-
}) {
|
|
33850
|
-
return /* @__PURE__ */ jsx(
|
|
33851
|
-
"div",
|
|
33852
|
-
{
|
|
33853
|
-
"data-slot": "alert-description",
|
|
33854
|
-
className: cn(
|
|
33855
|
-
"text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
|
|
33856
|
-
className
|
|
33857
|
-
),
|
|
33858
|
-
...props
|
|
33859
|
-
}
|
|
33860
|
-
);
|
|
33861
|
-
}
|
|
33862
|
-
var defaultArticleContent = (optixFlowConfig) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
33863
|
-
/* @__PURE__ */ jsx("h2", { className: "text-3xl font-extrabold", children: "The Great Joke Tax" }),
|
|
33864
|
-
/* @__PURE__ */ jsx("p", { className: "mt-2 text-lg text-muted-foreground", children: "In a kingdom far away, where laughter once flowed freely, a peculiar tale unfolded about a king who decided to tax the very essence of joy itself - jokes and jest." }),
|
|
33865
|
-
/* @__PURE__ */ jsx("h2", { children: "How the Tax System Works" }),
|
|
33866
|
-
/* @__PURE__ */ jsx("p", { children: "The king, seeing how much happier his subjects were, realized the error of his ways and repealed the joke tax. Jokester was declared a hero, and the kingdom lived happily ever after." }),
|
|
33867
|
-
/* @__PURE__ */ jsxs(Alert, { children: [
|
|
33868
|
-
/* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/lightbulb", size: 16 }),
|
|
33869
|
-
/* @__PURE__ */ jsx(AlertTitle, { children: "Royal Decree!" }),
|
|
33870
|
-
/* @__PURE__ */ jsx(AlertDescription, { children: "Remember, all jokes must be registered at the Royal Jest Office before telling them" })
|
|
33871
|
-
] }),
|
|
33872
|
-
/* @__PURE__ */ jsx("h2", { children: "The People's Rebellion" }),
|
|
33873
|
-
/* @__PURE__ */ jsx("p", { children: "The people of the kingdom, feeling uplifted by the laughter, started to tell jokes and puns again, and soon the entire kingdom was in on the joke." }),
|
|
33874
|
-
/* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs("table", { children: [
|
|
33875
|
-
/* @__PURE__ */ jsx("thead", { children: /* @__PURE__ */ jsxs("tr", { children: [
|
|
33876
|
-
/* @__PURE__ */ jsx("th", { children: "King's Treasury" }),
|
|
33877
|
-
/* @__PURE__ */ jsx("th", { children: "People's happiness" })
|
|
33878
|
-
] }) }),
|
|
33879
|
-
/* @__PURE__ */ jsxs("tbody", { children: [
|
|
33880
|
-
/* @__PURE__ */ jsxs("tr", { children: [
|
|
33881
|
-
/* @__PURE__ */ jsx("td", { children: "Empty" }),
|
|
33882
|
-
/* @__PURE__ */ jsx("td", { children: "Overflowing" })
|
|
33883
|
-
] }),
|
|
33884
|
-
/* @__PURE__ */ jsxs("tr", { className: "m-0 border-t p-0 even:bg-muted", children: [
|
|
33885
|
-
/* @__PURE__ */ jsx("td", { children: "Modest" }),
|
|
33886
|
-
/* @__PURE__ */ jsx("td", { children: "Satisfied" })
|
|
33887
|
-
] }),
|
|
33888
|
-
/* @__PURE__ */ jsxs("tr", { className: "m-0 border-t p-0 even:bg-muted", children: [
|
|
33889
|
-
/* @__PURE__ */ jsx("td", { children: "Full" }),
|
|
33890
|
-
/* @__PURE__ */ jsx("td", { children: "Ecstatic" })
|
|
33891
|
-
] })
|
|
33892
|
-
] })
|
|
33893
|
-
] }) }),
|
|
33894
|
-
/* @__PURE__ */ jsx("p", { children: "The king, seeing how much happier his subjects were, realized the error of his ways and repealed the joke tax. Jokester was declared a hero, and the kingdom lived happily ever after." }),
|
|
33895
|
-
/* @__PURE__ */ jsx("h2", { children: "The King's Plan" }),
|
|
33896
|
-
/* @__PURE__ */ jsx(
|
|
33897
|
-
Img,
|
|
33898
|
-
{
|
|
33899
|
-
src: imagePlaceholders[1],
|
|
33900
|
-
alt: "Article content image",
|
|
33901
|
-
className: "my-8 aspect-video w-full rounded-md object-cover",
|
|
33902
|
-
optixFlowConfig
|
|
33903
|
-
}
|
|
33904
|
-
),
|
|
33905
|
-
/* @__PURE__ */ jsxs("p", { children: [
|
|
33906
|
-
"The king thought long and hard, and finally came up with",
|
|
33907
|
-
" ",
|
|
33908
|
-
/* @__PURE__ */ jsx(Pressable, { href: "#", children: "a brilliant plan" }),
|
|
33909
|
-
": he would tax the jokes in the kingdom."
|
|
33910
|
-
] }),
|
|
33911
|
-
/* @__PURE__ */ jsx("blockquote", { children: "\u201CAfter all,\u201D he said, \u201Ceveryone enjoys a good joke, so it's only fair that they should pay for the privilege.\u201D" }),
|
|
33912
|
-
/* @__PURE__ */ jsx("p", { children: "The king's subjects were not amused. They grumbled and complained, but the king was firm:" }),
|
|
33913
|
-
/* @__PURE__ */ jsxs("ul", { children: [
|
|
33914
|
-
/* @__PURE__ */ jsx("li", { children: "1st level of puns: 5 gold coins" }),
|
|
33915
|
-
/* @__PURE__ */ jsx("li", { children: "2nd level of jokes: 10 gold coins" }),
|
|
33916
|
-
/* @__PURE__ */ jsx("li", { children: "3rd level of one-liners : 20 gold coins" })
|
|
33917
|
-
] }),
|
|
33918
|
-
/* @__PURE__ */ jsx("p", { children: "As a result, people stopped telling jokes, and the kingdom fell into a gloom. But there was one person who refused to let the king's foolishness get him down: a court jester named Jokester." })
|
|
33919
|
-
] });
|
|
33920
34367
|
function ArticleHeroProseComponent({
|
|
33921
34368
|
post,
|
|
33922
34369
|
className,
|
|
@@ -33931,7 +34378,11 @@ function ArticleHeroProseComponent({
|
|
|
33931
34378
|
authorSlot,
|
|
33932
34379
|
children,
|
|
33933
34380
|
dateFormat = "MMMM d, yyyy",
|
|
33934
|
-
optixFlowConfig
|
|
34381
|
+
optixFlowConfig,
|
|
34382
|
+
background,
|
|
34383
|
+
spacing,
|
|
34384
|
+
pattern,
|
|
34385
|
+
patternOpacity
|
|
33935
34386
|
}) {
|
|
33936
34387
|
const { title, authorName, authorHref, image, pubDate, description, authorImage } = post ?? {};
|
|
33937
34388
|
const authorContent = React52.useMemo(() => {
|
|
@@ -33964,38 +34415,26 @@ function ArticleHeroProseComponent({
|
|
|
33964
34415
|
}
|
|
33965
34416
|
);
|
|
33966
34417
|
}, [heroMediaSlot, image, heroImageClassName, optixFlowConfig]);
|
|
33967
|
-
return /* @__PURE__ */ jsxs(
|
|
33968
|
-
|
|
33969
|
-
title && /* @__PURE__ */ jsx("h1", { className: cn("max-w-3xl text-5xl font-semibold text-pretty md:text-6xl", titleClassName), children: title }),
|
|
33970
|
-
description && /* @__PURE__ */ jsx("h3", { className: cn("max-w-3xl text-lg text-muted-foreground md:text-xl", descriptionClassName), children: description }),
|
|
33971
|
-
authorContent,
|
|
33972
|
-
heroMediaContent
|
|
33973
|
-
] }) }),
|
|
33974
|
-
/* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsx("div", { className: cn("mx-auto prose max-w-3xl dark:prose-invert", proseClassName), children: children || defaultArticleContent(optixFlowConfig) }) })
|
|
33975
|
-
] });
|
|
33976
|
-
}
|
|
33977
|
-
var defaultArticleContent2 = (optixFlowConfig) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
33978
|
-
/* @__PURE__ */ jsx("p", { className: "lead", children: "In the ever-evolving landscape of web development, staying current with best practices and emerging technologies is crucial for building exceptional digital experiences." }),
|
|
33979
|
-
/* @__PURE__ */ jsx("h2", { children: "Understanding the Fundamentals" }),
|
|
33980
|
-
/* @__PURE__ */ jsx("p", { children: "Before diving into advanced concepts, it's essential to have a solid grasp of the fundamentals. HTML, CSS, and JavaScript form the backbone of web development, and mastering these technologies opens doors to more complex frameworks and tools." }),
|
|
33981
|
-
/* @__PURE__ */ jsx("p", { children: "Modern web development has evolved significantly over the past decade. What once required extensive server-side rendering can now be accomplished with client-side frameworks that offer improved performance and user experience." }),
|
|
33982
|
-
/* @__PURE__ */ jsx("h2", { children: "The Rise of Component-Based Architecture" }),
|
|
33983
|
-
/* @__PURE__ */ jsx("p", { children: "Component-based architecture has revolutionized how we build web applications. By breaking down interfaces into reusable, self-contained components, developers can create more maintainable and scalable codebases." }),
|
|
33984
|
-
/* @__PURE__ */ jsx("blockquote", { children: "\u201CThe best code is no code at all. Every new line of code you willingly bring into the world is code that has to be debugged, code that has to be read and understood.\u201D" }),
|
|
33985
|
-
/* @__PURE__ */ jsx("h2", { children: "Performance Optimization" }),
|
|
33986
|
-
/* @__PURE__ */ jsx("p", { children: "Performance is no longer optional\u2014it's a critical factor in user experience and search engine rankings. Techniques like code splitting, lazy loading, and image optimization have become standard practices in modern web development." }),
|
|
33987
|
-
/* @__PURE__ */ jsx(
|
|
33988
|
-
Img,
|
|
34418
|
+
return /* @__PURE__ */ jsxs(
|
|
34419
|
+
Section,
|
|
33989
34420
|
{
|
|
33990
|
-
|
|
33991
|
-
|
|
33992
|
-
|
|
33993
|
-
|
|
34421
|
+
background,
|
|
34422
|
+
spacing,
|
|
34423
|
+
pattern,
|
|
34424
|
+
patternOpacity,
|
|
34425
|
+
className,
|
|
34426
|
+
children: [
|
|
34427
|
+
/* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: cn("mx-auto flex max-w-5xl flex-col items-center gap-4 text-center", headerClassName), children: [
|
|
34428
|
+
title && /* @__PURE__ */ jsx("h1", { className: cn("max-w-3xl text-5xl font-semibold text-pretty md:text-6xl", titleClassName), children: title }),
|
|
34429
|
+
description && /* @__PURE__ */ jsx("h3", { className: cn("max-w-3xl text-lg text-muted-foreground md:text-xl", descriptionClassName), children: description }),
|
|
34430
|
+
authorContent,
|
|
34431
|
+
heroMediaContent
|
|
34432
|
+
] }) }),
|
|
34433
|
+
children && /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsx("div", { className: cn("mx-auto prose max-w-3xl dark:prose-invert", proseClassName), children }) })
|
|
34434
|
+
]
|
|
33994
34435
|
}
|
|
33995
|
-
)
|
|
33996
|
-
|
|
33997
|
-
/* @__PURE__ */ jsx("p", { children: "The future of web development is exciting, with emerging technologies like WebAssembly, Edge Computing, and AI-powered development tools reshaping how we build for the web. Staying curious and continuously learning will be key to thriving in this dynamic field." })
|
|
33998
|
-
] });
|
|
34436
|
+
);
|
|
34437
|
+
}
|
|
33999
34438
|
function ArticleSidebarStickyComponent({
|
|
34000
34439
|
className,
|
|
34001
34440
|
containerClassName,
|
|
@@ -34019,7 +34458,11 @@ function ArticleSidebarStickyComponent({
|
|
|
34019
34458
|
heroImageAlt,
|
|
34020
34459
|
heroMediaSlot,
|
|
34021
34460
|
children,
|
|
34022
|
-
optixFlowConfig
|
|
34461
|
+
optixFlowConfig,
|
|
34462
|
+
background,
|
|
34463
|
+
spacing,
|
|
34464
|
+
pattern,
|
|
34465
|
+
patternOpacity
|
|
34023
34466
|
}) {
|
|
34024
34467
|
const backLinkContent = React52.useMemo(() => {
|
|
34025
34468
|
if (backLinkSlot) return backLinkSlot;
|
|
@@ -34054,74 +34497,40 @@ function ArticleSidebarStickyComponent({
|
|
|
34054
34497
|
const heroMediaContent = React52.useMemo(() => {
|
|
34055
34498
|
if (heroMediaSlot) return heroMediaSlot;
|
|
34056
34499
|
if (!heroImageSrc) return null;
|
|
34057
|
-
return /* @__PURE__ */ jsx(
|
|
34058
|
-
Img,
|
|
34059
|
-
{
|
|
34060
|
-
src: heroImageSrc,
|
|
34061
|
-
alt: heroImageAlt,
|
|
34062
|
-
className: cn("my-8 aspect-video w-full rounded-lg object-cover", heroImageClassName),
|
|
34063
|
-
optixFlowConfig
|
|
34064
|
-
}
|
|
34065
|
-
);
|
|
34066
|
-
}, [heroMediaSlot, heroImageSrc, heroImageAlt, heroImageClassName, optixFlowConfig]);
|
|
34067
|
-
return /* @__PURE__ */ jsx("section", { className: cn("py-32", className), children: /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid gap-10 lg:grid-cols-[1fr_minmax(0,2fr)]", children: [
|
|
34068
|
-
/* @__PURE__ */ jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
34069
|
-
backLinkContent,
|
|
34070
|
-
/* @__PURE__ */ jsx("div", { className: "space-y-4", children: renderAuthor(false) })
|
|
34071
|
-
] }) }),
|
|
34072
|
-
/* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
34073
|
-
/* @__PURE__ */ jsx("div", { className: "mb-8 lg:hidden", children: backLinkContent }),
|
|
34074
|
-
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-4xl font-bold tracking-tight md:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
|
|
34075
|
-
/* @__PURE__ */ jsx("div", { className: "mt-4 lg:hidden", children: renderAuthor(true) }),
|
|
34076
|
-
heroMediaContent,
|
|
34077
|
-
children || defaultArticleContent2(optixFlowConfig)
|
|
34078
|
-
] })
|
|
34079
|
-
] }) }) });
|
|
34080
|
-
}
|
|
34081
|
-
var defaultArticleContent3 = (optixFlowConfig) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
34082
|
-
/* @__PURE__ */ jsxs("section", { id: "introduction", children: [
|
|
34083
|
-
/* @__PURE__ */ jsx("h2", { children: "Introduction" }),
|
|
34084
|
-
/* @__PURE__ */ jsx("p", { children: "Building scalable applications requires careful consideration of architecture, design patterns, and infrastructure. In this guide, we'll explore the key principles that enable applications to grow gracefully with increasing demand." }),
|
|
34085
|
-
/* @__PURE__ */ jsxs(Alert, { children: [
|
|
34086
|
-
/* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/lightbulb", size: 16 }),
|
|
34087
|
-
/* @__PURE__ */ jsx(AlertTitle, { children: "Pro Tip" }),
|
|
34088
|
-
/* @__PURE__ */ jsx(AlertDescription, { children: "Start with a simple architecture and evolve it as your needs grow. Premature optimization can lead to unnecessary complexity." })
|
|
34089
|
-
] })
|
|
34090
|
-
] }),
|
|
34091
|
-
/* @__PURE__ */ jsxs("section", { id: "getting-started", children: [
|
|
34092
|
-
/* @__PURE__ */ jsx("h2", { children: "Getting Started" }),
|
|
34093
|
-
/* @__PURE__ */ jsx("p", { children: "Before diving into complex architectural patterns, ensure you have a solid understanding of your application's requirements. Consider factors like expected traffic, data volume, and team expertise." }),
|
|
34094
|
-
/* @__PURE__ */ jsx("p", { children: "A well-designed system starts with clear requirements and constraints. Document your assumptions and validate them with stakeholders before making architectural decisions." })
|
|
34095
|
-
] }),
|
|
34096
|
-
/* @__PURE__ */ jsxs("section", { id: "core-concepts", children: [
|
|
34097
|
-
/* @__PURE__ */ jsx("h2", { children: "Core Concepts" }),
|
|
34098
|
-
/* @__PURE__ */ jsx("p", { children: "Scalability encompasses both horizontal and vertical scaling strategies. Horizontal scaling adds more machines to handle load, while vertical scaling increases the capacity of existing machines." }),
|
|
34099
|
-
/* @__PURE__ */ jsx(
|
|
34500
|
+
return /* @__PURE__ */ jsx(
|
|
34100
34501
|
Img,
|
|
34101
34502
|
{
|
|
34102
|
-
src:
|
|
34103
|
-
alt:
|
|
34104
|
-
className: "my-8 aspect-video w-full rounded-lg object-cover",
|
|
34503
|
+
src: heroImageSrc,
|
|
34504
|
+
alt: heroImageAlt,
|
|
34505
|
+
className: cn("my-8 aspect-video w-full rounded-lg object-cover", heroImageClassName),
|
|
34105
34506
|
optixFlowConfig
|
|
34106
34507
|
}
|
|
34107
|
-
)
|
|
34108
|
-
|
|
34109
|
-
|
|
34110
|
-
|
|
34111
|
-
|
|
34112
|
-
|
|
34113
|
-
|
|
34114
|
-
|
|
34115
|
-
|
|
34116
|
-
|
|
34117
|
-
/* @__PURE__ */ jsx("
|
|
34118
|
-
|
|
34119
|
-
|
|
34120
|
-
|
|
34121
|
-
|
|
34122
|
-
|
|
34123
|
-
|
|
34124
|
-
|
|
34508
|
+
);
|
|
34509
|
+
}, [heroMediaSlot, heroImageSrc, heroImageAlt, heroImageClassName, optixFlowConfig]);
|
|
34510
|
+
return /* @__PURE__ */ jsx(
|
|
34511
|
+
Section,
|
|
34512
|
+
{
|
|
34513
|
+
background,
|
|
34514
|
+
spacing,
|
|
34515
|
+
pattern,
|
|
34516
|
+
patternOpacity,
|
|
34517
|
+
className,
|
|
34518
|
+
children: /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid gap-10 lg:grid-cols-[1fr_minmax(0,2fr)]", children: [
|
|
34519
|
+
/* @__PURE__ */ jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
34520
|
+
backLinkContent,
|
|
34521
|
+
/* @__PURE__ */ jsx("div", { className: "space-y-4", children: renderAuthor(false) })
|
|
34522
|
+
] }) }),
|
|
34523
|
+
/* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
34524
|
+
/* @__PURE__ */ jsx("div", { className: "mb-8 lg:hidden", children: backLinkContent }),
|
|
34525
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-4xl font-bold tracking-tight md:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
|
|
34526
|
+
/* @__PURE__ */ jsx("div", { className: "mt-4 lg:hidden", children: renderAuthor(true) }),
|
|
34527
|
+
heroMediaContent,
|
|
34528
|
+
children
|
|
34529
|
+
] })
|
|
34530
|
+
] }) })
|
|
34531
|
+
}
|
|
34532
|
+
);
|
|
34533
|
+
}
|
|
34125
34534
|
function ArticleTocSidebarComponent({
|
|
34126
34535
|
className,
|
|
34127
34536
|
containerClassName,
|
|
@@ -34158,7 +34567,11 @@ function ArticleTocSidebarComponent({
|
|
|
34158
34567
|
ctaSlot,
|
|
34159
34568
|
children,
|
|
34160
34569
|
enableTocTracking = true,
|
|
34161
|
-
optixFlowConfig
|
|
34570
|
+
optixFlowConfig,
|
|
34571
|
+
background,
|
|
34572
|
+
spacing,
|
|
34573
|
+
pattern,
|
|
34574
|
+
patternOpacity
|
|
34162
34575
|
}) {
|
|
34163
34576
|
const ctaActions = ctaActionsProp ?? (ctaButtonText ? [{ label: ctaButtonText, href: ctaButtonHref || "#", variant: "default", className: "w-full" }] : []);
|
|
34164
34577
|
const [activeSection, setActiveSection] = React52.useState(
|
|
@@ -34270,72 +34683,33 @@ function ArticleTocSidebarComponent({
|
|
|
34270
34683
|
}) })
|
|
34271
34684
|
] });
|
|
34272
34685
|
}, [ctaSlot, ctaTitle, ctaDescription, ctaActions, ctaClassName]);
|
|
34273
|
-
return /* @__PURE__ */ jsx(
|
|
34274
|
-
|
|
34275
|
-
/* @__PURE__ */ jsxs("div", { className: cn("mb-8 not-prose", headerClassName), children: [
|
|
34276
|
-
categoryContent,
|
|
34277
|
-
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("mt-4 text-4xl font-bold tracking-tight md:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", titleClassName), children: title })),
|
|
34278
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-lg text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", descriptionClassName), children: description })),
|
|
34279
|
-
authorContent
|
|
34280
|
-
] }),
|
|
34281
|
-
heroMediaContent,
|
|
34282
|
-
children || defaultArticleContent3(optixFlowConfig)
|
|
34283
|
-
] }),
|
|
34284
|
-
/* @__PURE__ */ jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
34285
|
-
tocContent,
|
|
34286
|
-
ctaContent
|
|
34287
|
-
] }) })
|
|
34288
|
-
] }) }) });
|
|
34289
|
-
}
|
|
34290
|
-
var defaultArticleContent4 = (optixFlowConfig) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
34291
|
-
/* @__PURE__ */ jsx(
|
|
34292
|
-
Img,
|
|
34686
|
+
return /* @__PURE__ */ jsx(
|
|
34687
|
+
Section,
|
|
34293
34688
|
{
|
|
34294
|
-
|
|
34295
|
-
|
|
34296
|
-
|
|
34297
|
-
|
|
34689
|
+
background,
|
|
34690
|
+
spacing,
|
|
34691
|
+
pattern,
|
|
34692
|
+
patternOpacity,
|
|
34693
|
+
className,
|
|
34694
|
+
children: /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid gap-10 lg:grid-cols-[minmax(0,1fr)_300px]", children: [
|
|
34695
|
+
/* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
34696
|
+
/* @__PURE__ */ jsxs("div", { className: cn("mb-8 not-prose", headerClassName), children: [
|
|
34697
|
+
categoryContent,
|
|
34698
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("mt-4 text-4xl font-bold tracking-tight md:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", titleClassName), children: title })),
|
|
34699
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-lg text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", descriptionClassName), children: description })),
|
|
34700
|
+
authorContent
|
|
34701
|
+
] }),
|
|
34702
|
+
heroMediaContent,
|
|
34703
|
+
children
|
|
34704
|
+
] }),
|
|
34705
|
+
/* @__PURE__ */ jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
34706
|
+
tocContent,
|
|
34707
|
+
ctaContent
|
|
34708
|
+
] }) })
|
|
34709
|
+
] }) })
|
|
34298
34710
|
}
|
|
34299
|
-
)
|
|
34300
|
-
|
|
34301
|
-
/* @__PURE__ */ jsx("h2", { children: "Overview" }),
|
|
34302
|
-
/* @__PURE__ */ jsx("p", { children: "Performance optimization is crucial for delivering exceptional user experiences. In this comprehensive guide, we'll explore proven strategies for improving web application performance." }),
|
|
34303
|
-
/* @__PURE__ */ jsx("p", { children: "From initial page load to runtime performance, every millisecond counts. Users expect fast, responsive applications, and search engines reward sites that deliver." })
|
|
34304
|
-
] }),
|
|
34305
|
-
/* @__PURE__ */ jsxs("section", { id: "key-features", children: [
|
|
34306
|
-
/* @__PURE__ */ jsx("h2", { children: "Key Features" }),
|
|
34307
|
-
/* @__PURE__ */ jsx("p", { children: "Modern performance optimization encompasses several key areas:" }),
|
|
34308
|
-
/* @__PURE__ */ jsxs("ul", { children: [
|
|
34309
|
-
/* @__PURE__ */ jsx("li", { children: "Code splitting and lazy loading" }),
|
|
34310
|
-
/* @__PURE__ */ jsx("li", { children: "Image optimization and responsive images" }),
|
|
34311
|
-
/* @__PURE__ */ jsx("li", { children: "Caching strategies and CDN utilization" }),
|
|
34312
|
-
/* @__PURE__ */ jsx("li", { children: "Bundle size optimization" })
|
|
34313
|
-
] }),
|
|
34314
|
-
/* @__PURE__ */ jsx(
|
|
34315
|
-
Img,
|
|
34316
|
-
{
|
|
34317
|
-
src: imagePlaceholders[7],
|
|
34318
|
-
alt: "Performance metrics",
|
|
34319
|
-
className: "my-8 aspect-video w-full rounded-lg object-cover",
|
|
34320
|
-
optixFlowConfig
|
|
34321
|
-
}
|
|
34322
|
-
)
|
|
34323
|
-
] }),
|
|
34324
|
-
/* @__PURE__ */ jsxs("section", { id: "implementation", children: [
|
|
34325
|
-
/* @__PURE__ */ jsx("h2", { children: "Implementation" }),
|
|
34326
|
-
/* @__PURE__ */ jsx("p", { children: "Implementing performance optimizations requires a systematic approach. Start by measuring your current performance using tools like Lighthouse, WebPageTest, or Chrome DevTools." }),
|
|
34327
|
-
/* @__PURE__ */ jsx("blockquote", { children: "\u201CYou can't improve what you don't measure.\u201D - Peter Drucker" }),
|
|
34328
|
-
/* @__PURE__ */ jsx("p", { children: "Once you have baseline metrics, prioritize optimizations based on their potential impact and implementation effort." })
|
|
34329
|
-
] }),
|
|
34330
|
-
/* @__PURE__ */ jsxs("section", { id: "performance", children: [
|
|
34331
|
-
/* @__PURE__ */ jsx("h2", { children: "Performance Metrics" }),
|
|
34332
|
-
/* @__PURE__ */ jsx("p", { children: "Focus on Core Web Vitals: Largest Contentful Paint (LCP), First Input Delay (FID), and Cumulative Layout Shift (CLS). These metrics directly impact user experience and SEO rankings." })
|
|
34333
|
-
] }),
|
|
34334
|
-
/* @__PURE__ */ jsxs("section", { id: "summary", children: [
|
|
34335
|
-
/* @__PURE__ */ jsx("h2", { children: "Summary" }),
|
|
34336
|
-
/* @__PURE__ */ jsx("p", { children: "Performance optimization is an ongoing process, not a one-time task. Continuously monitor your metrics, identify bottlenecks, and iterate on improvements to maintain a fast, responsive application." })
|
|
34337
|
-
] })
|
|
34338
|
-
] });
|
|
34711
|
+
);
|
|
34712
|
+
}
|
|
34339
34713
|
function ArticleBreadcrumbSocialComponent({
|
|
34340
34714
|
className,
|
|
34341
34715
|
containerClassName,
|
|
@@ -34370,7 +34744,11 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
34370
34744
|
children,
|
|
34371
34745
|
enableTocTracking,
|
|
34372
34746
|
enableBackToTop,
|
|
34373
|
-
optixFlowConfig
|
|
34747
|
+
optixFlowConfig,
|
|
34748
|
+
background,
|
|
34749
|
+
spacing,
|
|
34750
|
+
pattern,
|
|
34751
|
+
patternOpacity
|
|
34374
34752
|
}) {
|
|
34375
34753
|
const author = authorProp ?? (authorName ? { name: authorName, image: authorImage, role: authorRole } : void 0);
|
|
34376
34754
|
const platformLabels = {
|
|
@@ -34507,65 +34885,44 @@ function ArticleBreadcrumbSocialComponent({
|
|
|
34507
34885
|
)) })
|
|
34508
34886
|
] });
|
|
34509
34887
|
}, [shareSlot, socialLinks, shareClassName]);
|
|
34510
|
-
return /* @__PURE__ */ jsxs(
|
|
34511
|
-
|
|
34512
|
-
|
|
34513
|
-
|
|
34514
|
-
|
|
34515
|
-
|
|
34516
|
-
|
|
34517
|
-
|
|
34518
|
-
|
|
34519
|
-
|
|
34888
|
+
return /* @__PURE__ */ jsxs(
|
|
34889
|
+
Section,
|
|
34890
|
+
{
|
|
34891
|
+
background,
|
|
34892
|
+
spacing,
|
|
34893
|
+
pattern,
|
|
34894
|
+
patternOpacity,
|
|
34895
|
+
className,
|
|
34896
|
+
children: [
|
|
34897
|
+
/* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
34898
|
+
breadcrumbsContent,
|
|
34899
|
+
/* @__PURE__ */ jsxs("div", { className: "grid gap-10 lg:grid-cols-[minmax(0,1fr)_280px]", children: [
|
|
34900
|
+
children && /* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
34901
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-4xl font-bold tracking-tight md:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
|
|
34902
|
+
authorContent,
|
|
34903
|
+
/* @__PURE__ */ jsx(Separator, { className: "my-8" }),
|
|
34904
|
+
heroMediaContent,
|
|
34905
|
+
children
|
|
34906
|
+
] }),
|
|
34907
|
+
/* @__PURE__ */ jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
34908
|
+
tocContent,
|
|
34909
|
+
shareButtonsContent
|
|
34910
|
+
] }) })
|
|
34911
|
+
] })
|
|
34520
34912
|
] }),
|
|
34521
|
-
|
|
34522
|
-
|
|
34523
|
-
|
|
34524
|
-
|
|
34525
|
-
|
|
34526
|
-
|
|
34527
|
-
|
|
34528
|
-
|
|
34529
|
-
|
|
34530
|
-
|
|
34531
|
-
|
|
34532
|
-
|
|
34533
|
-
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-up", size: 20 })
|
|
34534
|
-
}
|
|
34535
|
-
)
|
|
34536
|
-
] });
|
|
34913
|
+
enableBackToTop && showBackToTop && /* @__PURE__ */ jsx(
|
|
34914
|
+
"button",
|
|
34915
|
+
{
|
|
34916
|
+
onClick: scrollToTop,
|
|
34917
|
+
className: "fixed bottom-8 right-8 flex h-10 w-10 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg transition-opacity hover:opacity-90",
|
|
34918
|
+
"aria-label": "Back to top",
|
|
34919
|
+
children: /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/arrow-up", size: 20 })
|
|
34920
|
+
}
|
|
34921
|
+
)
|
|
34922
|
+
]
|
|
34923
|
+
}
|
|
34924
|
+
);
|
|
34537
34925
|
}
|
|
34538
|
-
var defaultArticleContent5 = () => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
34539
|
-
/* @__PURE__ */ jsxs("section", { id: "introduction", children: [
|
|
34540
|
-
/* @__PURE__ */ jsx("h2", { children: "Introduction" }),
|
|
34541
|
-
/* @__PURE__ */ jsx("p", { children: "Understanding user behavior is fundamental to creating effective web applications. This study examines patterns in user interaction and provides insights for improving user experience." }),
|
|
34542
|
-
/* @__PURE__ */ jsx("p", { children: "Our research focuses on identifying key factors that influence user engagement and satisfaction in modern web applications." })
|
|
34543
|
-
] }),
|
|
34544
|
-
/* @__PURE__ */ jsxs("section", { id: "methodology", children: [
|
|
34545
|
-
/* @__PURE__ */ jsx("h2", { children: "Methodology" }),
|
|
34546
|
-
/* @__PURE__ */ jsx("p", { children: "We employed a mixed-methods approach combining quantitative analytics with qualitative user interviews. Data was collected from over 10,000 users across diverse demographics." }),
|
|
34547
|
-
/* @__PURE__ */ jsx("p", { children: "Statistical analysis was performed using industry-standard tools to ensure reliability and validity of our findings." })
|
|
34548
|
-
] }),
|
|
34549
|
-
/* @__PURE__ */ jsxs("section", { id: "results", children: [
|
|
34550
|
-
/* @__PURE__ */ jsx("h2", { children: "Results" }),
|
|
34551
|
-
/* @__PURE__ */ jsx("p", { children: "Our findings reveal several key patterns in user behavior:" }),
|
|
34552
|
-
/* @__PURE__ */ jsxs("ul", { children: [
|
|
34553
|
-
/* @__PURE__ */ jsx("li", { children: "Users prefer intuitive navigation over complex menus" }),
|
|
34554
|
-
/* @__PURE__ */ jsx("li", { children: "Page load time significantly impacts engagement" }),
|
|
34555
|
-
/* @__PURE__ */ jsx("li", { children: "Mobile-first design improves overall satisfaction" }),
|
|
34556
|
-
/* @__PURE__ */ jsx("li", { children: "Clear calls-to-action increase conversion rates" })
|
|
34557
|
-
] })
|
|
34558
|
-
] }),
|
|
34559
|
-
/* @__PURE__ */ jsxs("section", { id: "discussion", children: [
|
|
34560
|
-
/* @__PURE__ */ jsx("h2", { children: "Discussion" }),
|
|
34561
|
-
/* @__PURE__ */ jsx("p", { children: "These results align with existing literature while providing new insights into emerging user expectations. The implications for web development practices are significant." }),
|
|
34562
|
-
/* @__PURE__ */ jsx("blockquote", { children: "\u201CUser experience is not just about usability\u2014it's about creating meaningful interactions that resonate with users.\u201D" })
|
|
34563
|
-
] }),
|
|
34564
|
-
/* @__PURE__ */ jsxs("section", { id: "conclusion", children: [
|
|
34565
|
-
/* @__PURE__ */ jsx("h2", { children: "Conclusion" }),
|
|
34566
|
-
/* @__PURE__ */ jsx("p", { children: "This study provides actionable insights for developers and designers seeking to improve user experience. Future research should explore the impact of emerging technologies on user behavior patterns." })
|
|
34567
|
-
] })
|
|
34568
|
-
] });
|
|
34569
34926
|
function ArticleCompactTocComponent({
|
|
34570
34927
|
className,
|
|
34571
34928
|
containerClassName,
|
|
@@ -34595,7 +34952,11 @@ function ArticleCompactTocComponent({
|
|
|
34595
34952
|
heroMediaSlot,
|
|
34596
34953
|
children,
|
|
34597
34954
|
enableTocTracking = true,
|
|
34598
|
-
optixFlowConfig
|
|
34955
|
+
optixFlowConfig,
|
|
34956
|
+
background,
|
|
34957
|
+
spacing,
|
|
34958
|
+
pattern,
|
|
34959
|
+
patternOpacity
|
|
34599
34960
|
}) {
|
|
34600
34961
|
const [activeSection, setActiveSection] = React52.useState(
|
|
34601
34962
|
sections?.[0]?.id || ""
|
|
@@ -34707,77 +35068,37 @@ function ArticleCompactTocComponent({
|
|
|
34707
35068
|
}
|
|
34708
35069
|
);
|
|
34709
35070
|
}, [heroMediaSlot, heroImageSrc, heroImageAlt, heroImageClassName, optixFlowConfig]);
|
|
34710
|
-
return /* @__PURE__ */ jsx(
|
|
34711
|
-
|
|
34712
|
-
/* @__PURE__ */ jsxs("div", { className: cn("mx-auto max-w-3xl", contentClassName), children: [
|
|
34713
|
-
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
|
|
34714
|
-
(authorName || publishDate || readTime) && /* @__PURE__ */ jsxs("div", { className: cn("mt-4 flex flex-wrap items-center gap-4 text-sm text-muted-foreground", metaClassName), children: [
|
|
34715
|
-
authorName && (authorHref ? /* @__PURE__ */ jsx(Pressable, { href: authorHref, className: "hover:underline", children: authorName }) : /* @__PURE__ */ jsx("span", { children: authorName })),
|
|
34716
|
-
authorName && publishDate && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
|
|
34717
|
-
publishDate && /* @__PURE__ */ jsx("span", { children: publishDate }),
|
|
34718
|
-
publishDate && readTime && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
|
|
34719
|
-
readTime && /* @__PURE__ */ jsx("span", { children: readTime })
|
|
34720
|
-
] }),
|
|
34721
|
-
shareContent,
|
|
34722
|
-
/* @__PURE__ */ jsx(Separator, { className: "my-8" }),
|
|
34723
|
-
tocContent,
|
|
34724
|
-
/* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
34725
|
-
heroMediaContent,
|
|
34726
|
-
children ?? defaultArticleContent5()
|
|
34727
|
-
] })
|
|
34728
|
-
] })
|
|
34729
|
-
] }) });
|
|
34730
|
-
}
|
|
34731
|
-
var defaultArticleContent6 = (optixFlowConfig) => /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
34732
|
-
/* @__PURE__ */ jsx(
|
|
34733
|
-
Img,
|
|
35071
|
+
return /* @__PURE__ */ jsx(
|
|
35072
|
+
Section,
|
|
34734
35073
|
{
|
|
34735
|
-
|
|
34736
|
-
|
|
34737
|
-
|
|
34738
|
-
|
|
35074
|
+
background,
|
|
35075
|
+
spacing,
|
|
35076
|
+
pattern,
|
|
35077
|
+
patternOpacity,
|
|
35078
|
+
className,
|
|
35079
|
+
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
35080
|
+
breadcrumbsContent,
|
|
35081
|
+
/* @__PURE__ */ jsxs("div", { className: cn("mx-auto max-w-3xl", contentClassName), children: [
|
|
35082
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
|
|
35083
|
+
(authorName || publishDate || readTime) && /* @__PURE__ */ jsxs("div", { className: cn("mt-4 flex flex-wrap items-center gap-4 text-sm text-muted-foreground", metaClassName), children: [
|
|
35084
|
+
authorName && (authorHref ? /* @__PURE__ */ jsx(Pressable, { href: authorHref, className: "hover:underline", children: authorName }) : /* @__PURE__ */ jsx("span", { children: authorName })),
|
|
35085
|
+
authorName && publishDate && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
|
|
35086
|
+
publishDate && /* @__PURE__ */ jsx("span", { children: publishDate }),
|
|
35087
|
+
publishDate && readTime && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
|
|
35088
|
+
readTime && /* @__PURE__ */ jsx("span", { children: readTime })
|
|
35089
|
+
] }),
|
|
35090
|
+
shareContent,
|
|
35091
|
+
/* @__PURE__ */ jsx(Separator, { className: "my-8" }),
|
|
35092
|
+
tocContent,
|
|
35093
|
+
children && /* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
35094
|
+
heroMediaContent,
|
|
35095
|
+
children
|
|
35096
|
+
] })
|
|
35097
|
+
] })
|
|
35098
|
+
] })
|
|
34739
35099
|
}
|
|
34740
|
-
)
|
|
34741
|
-
|
|
34742
|
-
/* @__PURE__ */ jsx("h2", { children: "Chapter 1: The Foundation" }),
|
|
34743
|
-
/* @__PURE__ */ jsx("p", { children: "Design patterns are reusable solutions to common problems in software design. They represent best practices evolved over time by experienced software developers." }),
|
|
34744
|
-
/* @__PURE__ */ jsx("p", { children: "Understanding the foundation of design patterns helps you recognize when and how to apply them effectively in your own projects." })
|
|
34745
|
-
] }),
|
|
34746
|
-
/* @__PURE__ */ jsxs("section", { id: "chapter-2", children: [
|
|
34747
|
-
/* @__PURE__ */ jsx("h2", { children: "Chapter 2: Building Blocks" }),
|
|
34748
|
-
/* @__PURE__ */ jsx("p", { children: "The building blocks of design patterns include creational, structural, and behavioral patterns. Each category addresses different aspects of software design." }),
|
|
34749
|
-
/* @__PURE__ */ jsx(
|
|
34750
|
-
Img,
|
|
34751
|
-
{
|
|
34752
|
-
src: imagePlaceholders[1],
|
|
34753
|
-
alt: "Pattern categories",
|
|
34754
|
-
className: "my-8 aspect-video w-full rounded-lg object-cover",
|
|
34755
|
-
optixFlowConfig
|
|
34756
|
-
}
|
|
34757
|
-
),
|
|
34758
|
-
/* @__PURE__ */ jsx("p", { children: "Creational patterns deal with object creation mechanisms, structural patterns focus on class composition, and behavioral patterns characterize object interaction." })
|
|
34759
|
-
] }),
|
|
34760
|
-
/* @__PURE__ */ jsxs("section", { id: "chapter-3", children: [
|
|
34761
|
-
/* @__PURE__ */ jsx("h2", { children: "Chapter 3: Advanced Patterns" }),
|
|
34762
|
-
/* @__PURE__ */ jsx("p", { children: "Advanced patterns build upon the fundamentals to address more complex scenarios. These include patterns for concurrency, distributed systems, and enterprise applications." }),
|
|
34763
|
-
/* @__PURE__ */ jsx("blockquote", { children: "\u201CPatterns are not invented, they are discovered.\u201D - Christopher Alexander" })
|
|
34764
|
-
] }),
|
|
34765
|
-
/* @__PURE__ */ jsxs("section", { id: "chapter-4", children: [
|
|
34766
|
-
/* @__PURE__ */ jsx("h2", { children: "Chapter 4: Real-World Applications" }),
|
|
34767
|
-
/* @__PURE__ */ jsx("p", { children: "Seeing patterns in action helps solidify understanding. This chapter explores how major frameworks and libraries implement design patterns." }),
|
|
34768
|
-
/* @__PURE__ */ jsxs("ul", { children: [
|
|
34769
|
-
/* @__PURE__ */ jsx("li", { children: "React's use of the Observer pattern" }),
|
|
34770
|
-
/* @__PURE__ */ jsx("li", { children: "Express.js middleware as Chain of Responsibility" }),
|
|
34771
|
-
/* @__PURE__ */ jsx("li", { children: "Redux implementing the Flux pattern" }),
|
|
34772
|
-
/* @__PURE__ */ jsx("li", { children: "Dependency injection in Angular" })
|
|
34773
|
-
] })
|
|
34774
|
-
] }),
|
|
34775
|
-
/* @__PURE__ */ jsxs("section", { id: "chapter-5", children: [
|
|
34776
|
-
/* @__PURE__ */ jsx("h2", { children: "Chapter 5: Future Directions" }),
|
|
34777
|
-
/* @__PURE__ */ jsx("p", { children: "As software development evolves, new patterns emerge while others become less relevant. Understanding the principles behind patterns helps you adapt to changing technologies." }),
|
|
34778
|
-
/* @__PURE__ */ jsx("p", { children: "The rise of functional programming, microservices, and serverless architectures has introduced new patterns and variations on classic ones." })
|
|
34779
|
-
] })
|
|
34780
|
-
] });
|
|
35100
|
+
);
|
|
35101
|
+
}
|
|
34781
35102
|
function ArticleChaptersAuthorComponent({
|
|
34782
35103
|
className,
|
|
34783
35104
|
containerClassName,
|
|
@@ -34812,7 +35133,11 @@ function ArticleChaptersAuthorComponent({
|
|
|
34812
35133
|
conclusionSlot,
|
|
34813
35134
|
children,
|
|
34814
35135
|
enableChapterTracking = true,
|
|
34815
|
-
optixFlowConfig
|
|
35136
|
+
optixFlowConfig,
|
|
35137
|
+
background,
|
|
35138
|
+
spacing,
|
|
35139
|
+
pattern,
|
|
35140
|
+
patternOpacity
|
|
34816
35141
|
}) {
|
|
34817
35142
|
const conclusionActions = conclusionActionsProp ?? (conclusionButtonText ? [{ label: conclusionButtonText, href: conclusionButtonHref || "#", variant: "default" }] : []);
|
|
34818
35143
|
const [activeChapter, setActiveChapter] = React52.useState(
|
|
@@ -34976,24 +35301,34 @@ function ArticleChaptersAuthorComponent({
|
|
|
34976
35301
|
}) })
|
|
34977
35302
|
] });
|
|
34978
35303
|
}, [conclusionSlot, conclusionTitle, conclusionDescription, conclusionActions, conclusionClassName]);
|
|
34979
|
-
return /* @__PURE__ */ jsx(
|
|
34980
|
-
|
|
34981
|
-
|
|
34982
|
-
|
|
34983
|
-
|
|
34984
|
-
|
|
34985
|
-
|
|
34986
|
-
|
|
34987
|
-
|
|
34988
|
-
|
|
34989
|
-
|
|
34990
|
-
|
|
34991
|
-
|
|
34992
|
-
|
|
34993
|
-
|
|
35304
|
+
return /* @__PURE__ */ jsx(
|
|
35305
|
+
Section,
|
|
35306
|
+
{
|
|
35307
|
+
background,
|
|
35308
|
+
spacing,
|
|
35309
|
+
pattern,
|
|
35310
|
+
patternOpacity,
|
|
35311
|
+
className,
|
|
35312
|
+
children: /* @__PURE__ */ jsxs("div", { className: cn("container", containerClassName), children: [
|
|
35313
|
+
breadcrumbsContent,
|
|
35314
|
+
/* @__PURE__ */ jsxs("div", { className: cn("mb-12 text-center", headerClassName), children: [
|
|
35315
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h1", { className: cn("text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: titleClassName, children: title })),
|
|
35316
|
+
subtitle && (typeof subtitle === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-lg text-muted-foreground md:text-xl", subtitleClassName), children: subtitle }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", subtitleClassName), children: subtitle }))
|
|
35317
|
+
] }),
|
|
35318
|
+
/* @__PURE__ */ jsxs("div", { className: "grid gap-10 lg:grid-cols-[280px_minmax(0,1fr)]", children: [
|
|
35319
|
+
/* @__PURE__ */ jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
35320
|
+
chaptersNavContent,
|
|
35321
|
+
authorCardContent
|
|
35322
|
+
] }) }),
|
|
35323
|
+
/* @__PURE__ */ jsxs("article", { className: cn("prose max-w-none dark:prose-invert", articleClassName), children: [
|
|
35324
|
+
heroMediaContent,
|
|
35325
|
+
children,
|
|
35326
|
+
conclusionContent
|
|
35327
|
+
] })
|
|
35328
|
+
] })
|
|
34994
35329
|
] })
|
|
34995
|
-
|
|
34996
|
-
|
|
35330
|
+
}
|
|
35331
|
+
);
|
|
34997
35332
|
}
|
|
34998
35333
|
function ArticleSplitAnimatedComponent({
|
|
34999
35334
|
className,
|
|
@@ -35026,7 +35361,11 @@ function ArticleSplitAnimatedComponent({
|
|
|
35026
35361
|
ctaHref,
|
|
35027
35362
|
ctaSlot,
|
|
35028
35363
|
enableAnimations = true,
|
|
35029
|
-
optixFlowConfig
|
|
35364
|
+
optixFlowConfig,
|
|
35365
|
+
background,
|
|
35366
|
+
spacing,
|
|
35367
|
+
pattern,
|
|
35368
|
+
patternOpacity
|
|
35030
35369
|
}) {
|
|
35031
35370
|
const ctaActions = ctaActionsProp ?? (ctaText ? [{ label: ctaText, href: ctaHref || "#", variant: "default", size: "lg" }] : []);
|
|
35032
35371
|
const MotionWrapper = enableAnimations ? motion.div : "div";
|
|
@@ -35105,41 +35444,51 @@ function ArticleSplitAnimatedComponent({
|
|
|
35105
35444
|
viewport: { once: true },
|
|
35106
35445
|
transition: { duration: 0.5, delay: 0.1 }
|
|
35107
35446
|
} : {};
|
|
35108
|
-
return /* @__PURE__ */ jsx(
|
|
35109
|
-
|
|
35110
|
-
|
|
35111
|
-
|
|
35112
|
-
|
|
35113
|
-
|
|
35114
|
-
|
|
35115
|
-
|
|
35447
|
+
return /* @__PURE__ */ jsx(
|
|
35448
|
+
Section,
|
|
35449
|
+
{
|
|
35450
|
+
background,
|
|
35451
|
+
spacing,
|
|
35452
|
+
pattern,
|
|
35453
|
+
patternOpacity,
|
|
35454
|
+
className,
|
|
35455
|
+
children: /* @__PURE__ */ jsx("div", { className: cn("container", containerClassName), children: /* @__PURE__ */ jsxs("div", { className: "grid gap-8 lg:grid-cols-2 lg:gap-12", children: [
|
|
35456
|
+
/* @__PURE__ */ jsxs(
|
|
35457
|
+
MotionWrapper,
|
|
35458
|
+
{
|
|
35459
|
+
...imageAnimationProps,
|
|
35460
|
+
className: cn(
|
|
35461
|
+
"relative aspect-4/3 overflow-hidden rounded-2xl lg:aspect-auto lg:h-full",
|
|
35462
|
+
imageContainerClassName
|
|
35463
|
+
),
|
|
35464
|
+
children: [
|
|
35465
|
+
heroMediaContent,
|
|
35466
|
+
/* @__PURE__ */ jsx("div", { className: "absolute inset-0 bg-linear-to-t from-black/60 via-transparent to-transparent" }),
|
|
35467
|
+
/* @__PURE__ */ jsx("div", { className: "absolute bottom-0 left-0 p-6", children: categoryContent })
|
|
35468
|
+
]
|
|
35469
|
+
}
|
|
35116
35470
|
),
|
|
35117
|
-
|
|
35118
|
-
|
|
35119
|
-
|
|
35120
|
-
|
|
35121
|
-
|
|
35122
|
-
|
|
35123
|
-
|
|
35124
|
-
|
|
35125
|
-
|
|
35126
|
-
|
|
35127
|
-
|
|
35128
|
-
|
|
35129
|
-
|
|
35130
|
-
|
|
35131
|
-
|
|
35132
|
-
|
|
35133
|
-
|
|
35134
|
-
|
|
35135
|
-
|
|
35136
|
-
|
|
35137
|
-
|
|
35138
|
-
ctaContent
|
|
35139
|
-
]
|
|
35140
|
-
}
|
|
35141
|
-
)
|
|
35142
|
-
] }) }) });
|
|
35471
|
+
/* @__PURE__ */ jsxs(
|
|
35472
|
+
MotionWrapper,
|
|
35473
|
+
{
|
|
35474
|
+
...contentAnimationProps,
|
|
35475
|
+
className: cn("flex flex-col justify-center", contentClassName),
|
|
35476
|
+
children: [
|
|
35477
|
+
(publishDate || readTime) && /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-4 text-sm text-muted-foreground", metaClassName), children: [
|
|
35478
|
+
publishDate && /* @__PURE__ */ jsx("span", { children: publishDate }),
|
|
35479
|
+
publishDate && readTime && /* @__PURE__ */ jsx(Separator, { orientation: "vertical", className: "h-4" }),
|
|
35480
|
+
readTime && /* @__PURE__ */ jsx("span", { children: readTime })
|
|
35481
|
+
] }),
|
|
35482
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsx("h2", { className: cn("mt-4 text-3xl font-bold tracking-tight md:text-4xl lg:text-5xl", titleClassName), children: title }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", titleClassName), children: title })),
|
|
35483
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mt-4 text-lg text-muted-foreground", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("mt-4", descriptionClassName), children: description })),
|
|
35484
|
+
authorContent,
|
|
35485
|
+
ctaContent
|
|
35486
|
+
]
|
|
35487
|
+
}
|
|
35488
|
+
)
|
|
35489
|
+
] }) })
|
|
35490
|
+
}
|
|
35491
|
+
);
|
|
35143
35492
|
}
|
|
35144
35493
|
function FaqSimpleAccordion({
|
|
35145
35494
|
heading,
|