@opensite/ui 2.6.1 → 2.6.3
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/article-hero-prose.cjs +7 -6
- package/dist/article-hero-prose.d.cts +1 -1
- package/dist/article-hero-prose.d.ts +1 -1
- package/dist/article-hero-prose.js +7 -6
- package/dist/article-toc-sidebar.cjs +77 -57
- package/dist/article-toc-sidebar.d.cts +5 -11
- package/dist/article-toc-sidebar.d.ts +5 -11
- package/dist/article-toc-sidebar.js +77 -57
- package/dist/blog-masonry-featured.cjs +13 -10
- package/dist/blog-masonry-featured.d.cts +5 -1
- package/dist/blog-masonry-featured.d.ts +5 -1
- package/dist/blog-masonry-featured.js +13 -10
- package/dist/carousel-portfolio-hero.cjs +79 -32
- package/dist/carousel-portfolio-hero.js +79 -32
- package/dist/feature-badge-grid-six.cjs +1 -38
- package/dist/feature-badge-grid-six.js +1 -38
- package/dist/feature-bento-image-grid.cjs +3 -12
- package/dist/feature-bento-image-grid.d.cts +1 -1
- package/dist/feature-bento-image-grid.d.ts +1 -1
- package/dist/feature-bento-image-grid.js +3 -12
- package/dist/feature-bento-utilities.cjs +5 -41
- package/dist/feature-bento-utilities.js +5 -41
- package/dist/registry.cjs +121 -114
- package/dist/registry.js +121 -114
- package/package.json +2 -2
|
@@ -167,6 +167,6 @@ interface FeatureBentoImageGridProps {
|
|
|
167
167
|
* />
|
|
168
168
|
* ```
|
|
169
169
|
*/
|
|
170
|
-
declare function FeatureBentoImageGrid({ title, description, items, itemsSlot, className,
|
|
170
|
+
declare function FeatureBentoImageGrid({ title, description, items, itemsSlot, className, titleClassName, descriptionClassName, gridClassName, largeCardClassName, smallCardClassName, optixFlowConfig, background, containerClassName, spacing, pattern, patternOpacity, patternClassName, }: FeatureBentoImageGridProps): React.JSX.Element;
|
|
171
171
|
|
|
172
172
|
export { FeatureBentoImageGrid, type FeatureBentoImageGridProps };
|
|
@@ -816,7 +816,6 @@ function FeatureBentoImageGrid({
|
|
|
816
816
|
items,
|
|
817
817
|
itemsSlot,
|
|
818
818
|
className,
|
|
819
|
-
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
820
819
|
titleClassName,
|
|
821
820
|
descriptionClassName,
|
|
822
821
|
gridClassName,
|
|
@@ -824,6 +823,7 @@ function FeatureBentoImageGrid({
|
|
|
824
823
|
smallCardClassName,
|
|
825
824
|
optixFlowConfig,
|
|
826
825
|
background,
|
|
826
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
827
827
|
spacing = "py-12 md:py-32",
|
|
828
828
|
pattern,
|
|
829
829
|
patternOpacity,
|
|
@@ -1069,17 +1069,8 @@ function FeatureBentoImageGrid({
|
|
|
1069
1069
|
),
|
|
1070
1070
|
children: title
|
|
1071
1071
|
}
|
|
1072
|
-
) :
|
|
1073
|
-
|
|
1074
|
-
{
|
|
1075
|
-
className: cn(
|
|
1076
|
-
"mb-4 text-center text-4xl font-semibold text-balance",
|
|
1077
|
-
titleClassName
|
|
1078
|
-
),
|
|
1079
|
-
children: title
|
|
1080
|
-
}
|
|
1081
|
-
)),
|
|
1082
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-center text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("text-center text-balance", descriptionClassName), children: description })),
|
|
1072
|
+
) : title),
|
|
1073
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-center text-balance", descriptionClassName), children: description }) : description),
|
|
1083
1074
|
/* @__PURE__ */ jsx(
|
|
1084
1075
|
"div",
|
|
1085
1076
|
{
|
|
@@ -36,32 +36,6 @@ var SeparatorPrimitive__namespace = /*#__PURE__*/_interopNamespace(SeparatorPrim
|
|
|
36
36
|
function cn(...inputs) {
|
|
37
37
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
38
38
|
}
|
|
39
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
40
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
41
|
-
if (isDark) {
|
|
42
|
-
switch (variant) {
|
|
43
|
-
case "default":
|
|
44
|
-
return "text-foreground";
|
|
45
|
-
case "muted":
|
|
46
|
-
return "text-foreground/80";
|
|
47
|
-
case "subtle":
|
|
48
|
-
return "text-foreground/60";
|
|
49
|
-
case "accent":
|
|
50
|
-
return "text-accent-foreground";
|
|
51
|
-
}
|
|
52
|
-
} else {
|
|
53
|
-
switch (variant) {
|
|
54
|
-
case "default":
|
|
55
|
-
return "text-foreground";
|
|
56
|
-
case "muted":
|
|
57
|
-
return "text-muted-foreground";
|
|
58
|
-
case "subtle":
|
|
59
|
-
return "text-muted-foreground/70";
|
|
60
|
-
case "accent":
|
|
61
|
-
return "text-primary";
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
39
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
66
40
|
function DynamicIcon({ apiKey, ...props }) {
|
|
67
41
|
return /* @__PURE__ */ jsxRuntime.jsx(icon.Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
@@ -1001,7 +975,7 @@ function FeatureBentoUtilities({
|
|
|
1001
975
|
}
|
|
1002
976
|
return /* @__PURE__ */ jsxRuntime.jsxs(Card, { className: cardClasses, children: [
|
|
1003
977
|
renderTitle(),
|
|
1004
|
-
card.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
978
|
+
card.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "relative", children: card.description })
|
|
1005
979
|
] }, index);
|
|
1006
980
|
},
|
|
1007
981
|
[optixFlowConfig]
|
|
@@ -1030,20 +1004,10 @@ function FeatureBentoUtilities({
|
|
|
1030
1004
|
className,
|
|
1031
1005
|
containerClassName: cn("max-w-7xl", containerClassName),
|
|
1032
1006
|
children: [
|
|
1033
|
-
(labelIconElement || label) && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1034
|
-
|
|
1035
|
-
{
|
|
1036
|
-
|
|
1037
|
-
"flex items-center gap-2",
|
|
1038
|
-
getTextColor(background, "muted"),
|
|
1039
|
-
labelClassName
|
|
1040
|
-
),
|
|
1041
|
-
children: [
|
|
1042
|
-
labelIconElement,
|
|
1043
|
-
label && (typeof label === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm", children: label }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: label }))
|
|
1044
|
-
]
|
|
1045
|
-
}
|
|
1046
|
-
),
|
|
1007
|
+
(labelIconElement || label) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-2", labelClassName), children: [
|
|
1008
|
+
labelIconElement,
|
|
1009
|
+
label && (typeof label === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm", children: label }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: label }))
|
|
1010
|
+
] }),
|
|
1047
1011
|
/* @__PURE__ */ jsxRuntime.jsx(Separator, { className: "mt-3 mb-8" }),
|
|
1048
1012
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
1049
1013
|
"div",
|
|
@@ -14,32 +14,6 @@ import { Img } from '@page-speed/img';
|
|
|
14
14
|
function cn(...inputs) {
|
|
15
15
|
return twMerge(clsx(inputs));
|
|
16
16
|
}
|
|
17
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
18
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
19
|
-
if (isDark) {
|
|
20
|
-
switch (variant) {
|
|
21
|
-
case "default":
|
|
22
|
-
return "text-foreground";
|
|
23
|
-
case "muted":
|
|
24
|
-
return "text-foreground/80";
|
|
25
|
-
case "subtle":
|
|
26
|
-
return "text-foreground/60";
|
|
27
|
-
case "accent":
|
|
28
|
-
return "text-accent-foreground";
|
|
29
|
-
}
|
|
30
|
-
} else {
|
|
31
|
-
switch (variant) {
|
|
32
|
-
case "default":
|
|
33
|
-
return "text-foreground";
|
|
34
|
-
case "muted":
|
|
35
|
-
return "text-muted-foreground";
|
|
36
|
-
case "subtle":
|
|
37
|
-
return "text-muted-foreground/70";
|
|
38
|
-
case "accent":
|
|
39
|
-
return "text-primary";
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
17
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
44
18
|
function DynamicIcon({ apiKey, ...props }) {
|
|
45
19
|
return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
@@ -979,7 +953,7 @@ function FeatureBentoUtilities({
|
|
|
979
953
|
}
|
|
980
954
|
return /* @__PURE__ */ jsxs(Card, { className: cardClasses, children: [
|
|
981
955
|
renderTitle(),
|
|
982
|
-
card.description && /* @__PURE__ */ jsx("p", { className:
|
|
956
|
+
card.description && /* @__PURE__ */ jsx("p", { className: "relative", children: card.description })
|
|
983
957
|
] }, index);
|
|
984
958
|
},
|
|
985
959
|
[optixFlowConfig]
|
|
@@ -1008,20 +982,10 @@ function FeatureBentoUtilities({
|
|
|
1008
982
|
className,
|
|
1009
983
|
containerClassName: cn("max-w-7xl", containerClassName),
|
|
1010
984
|
children: [
|
|
1011
|
-
(labelIconElement || label) && /* @__PURE__ */ jsxs(
|
|
1012
|
-
|
|
1013
|
-
{
|
|
1014
|
-
|
|
1015
|
-
"flex items-center gap-2",
|
|
1016
|
-
getTextColor(background, "muted"),
|
|
1017
|
-
labelClassName
|
|
1018
|
-
),
|
|
1019
|
-
children: [
|
|
1020
|
-
labelIconElement,
|
|
1021
|
-
label && (typeof label === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm", children: label }) : /* @__PURE__ */ jsx("div", { className: "text-sm", children: label }))
|
|
1022
|
-
]
|
|
1023
|
-
}
|
|
1024
|
-
),
|
|
985
|
+
(labelIconElement || label) && /* @__PURE__ */ jsxs("div", { className: cn("flex items-center gap-2", labelClassName), children: [
|
|
986
|
+
labelIconElement,
|
|
987
|
+
label && (typeof label === "string" ? /* @__PURE__ */ jsx("p", { className: "text-sm", children: label }) : /* @__PURE__ */ jsx("div", { className: "text-sm", children: label }))
|
|
988
|
+
] }),
|
|
1025
989
|
/* @__PURE__ */ jsx(Separator, { className: "mt-3 mb-8" }),
|
|
1026
990
|
/* @__PURE__ */ jsxs(
|
|
1027
991
|
"div",
|
package/dist/registry.cjs
CHANGED
|
@@ -21120,7 +21120,7 @@ function CarouselPortfolioHero({
|
|
|
21120
21120
|
navigationClassName,
|
|
21121
21121
|
counterClassName,
|
|
21122
21122
|
optixFlowConfig,
|
|
21123
|
-
background
|
|
21123
|
+
background,
|
|
21124
21124
|
spacing = "none",
|
|
21125
21125
|
pattern,
|
|
21126
21126
|
patternOpacity,
|
|
@@ -21154,34 +21154,6 @@ function CarouselPortfolioHero({
|
|
|
21154
21154
|
}
|
|
21155
21155
|
};
|
|
21156
21156
|
}, [resetInterval]);
|
|
21157
|
-
const renderActions = () => {
|
|
21158
|
-
if (actionsSlot) return actionsSlot;
|
|
21159
|
-
if (!actions || actions.length === 0) return null;
|
|
21160
|
-
return actions.map((action, index) => {
|
|
21161
|
-
const {
|
|
21162
|
-
label,
|
|
21163
|
-
icon,
|
|
21164
|
-
iconAfter,
|
|
21165
|
-
children,
|
|
21166
|
-
className: actionClassName,
|
|
21167
|
-
...pressableProps
|
|
21168
|
-
} = action;
|
|
21169
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
21170
|
-
Pressable,
|
|
21171
|
-
{
|
|
21172
|
-
asButton: true,
|
|
21173
|
-
className: actionClassName,
|
|
21174
|
-
...pressableProps,
|
|
21175
|
-
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
21176
|
-
icon,
|
|
21177
|
-
label,
|
|
21178
|
-
iconAfter
|
|
21179
|
-
] })
|
|
21180
|
-
},
|
|
21181
|
-
index
|
|
21182
|
-
);
|
|
21183
|
-
});
|
|
21184
|
-
};
|
|
21185
21157
|
const currentSlide = slides?.[currentIndex];
|
|
21186
21158
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
21187
21159
|
Section,
|
|
@@ -21223,7 +21195,7 @@ function CarouselPortfolioHero({
|
|
|
21223
21195
|
className: cn(
|
|
21224
21196
|
"relative z-10 flex h-full w-full flex-col justify-end px-6 pb-16 md:px-8 lg:px-12"
|
|
21225
21197
|
),
|
|
21226
|
-
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("
|
|
21198
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("w-full", contentClassName), children: [
|
|
21227
21199
|
currentSlide?.tag && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4", children: typeof currentSlide.tag === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
21228
21200
|
"span",
|
|
21229
21201
|
{
|
|
@@ -21259,7 +21231,14 @@ function CarouselPortfolioHero({
|
|
|
21259
21231
|
{
|
|
21260
21232
|
className: cn("mt-8 flex items-center gap-4", actionsClassName),
|
|
21261
21233
|
children: [
|
|
21262
|
-
|
|
21234
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
21235
|
+
BlockActions,
|
|
21236
|
+
{
|
|
21237
|
+
actions,
|
|
21238
|
+
actionsSlot,
|
|
21239
|
+
actionsClassName
|
|
21240
|
+
}
|
|
21241
|
+
),
|
|
21263
21242
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
21264
21243
|
"div",
|
|
21265
21244
|
{
|
|
@@ -21273,7 +21252,11 @@ function CarouselPortfolioHero({
|
|
|
21273
21252
|
{
|
|
21274
21253
|
variant: "outline",
|
|
21275
21254
|
size: "icon",
|
|
21276
|
-
className: cn(
|
|
21255
|
+
className: cn(
|
|
21256
|
+
"rounded-full border-foreground/40",
|
|
21257
|
+
getNestedCardBg(background),
|
|
21258
|
+
getNestedCardTextColor(background)
|
|
21259
|
+
),
|
|
21277
21260
|
onClick: goToPrev,
|
|
21278
21261
|
asButton: true,
|
|
21279
21262
|
children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/chevron-left", size: 20 })
|
|
@@ -23889,7 +23872,6 @@ function FeatureBadgeGridSix({
|
|
|
23889
23872
|
{
|
|
23890
23873
|
className: cn(
|
|
23891
23874
|
"text-sm md:text-base",
|
|
23892
|
-
getTextColor(background, "muted"),
|
|
23893
23875
|
feature.descriptionClassName
|
|
23894
23876
|
),
|
|
23895
23877
|
children: feature.description
|
|
@@ -23899,7 +23881,6 @@ function FeatureBadgeGridSix({
|
|
|
23899
23881
|
{
|
|
23900
23882
|
className: cn(
|
|
23901
23883
|
"text-sm md:text-base",
|
|
23902
|
-
getTextColor(background, "muted"),
|
|
23903
23884
|
feature.descriptionClassName
|
|
23904
23885
|
),
|
|
23905
23886
|
children: feature.description
|
|
@@ -23970,16 +23951,7 @@ function FeatureBadgeGridSix({
|
|
|
23970
23951
|
),
|
|
23971
23952
|
children: title
|
|
23972
23953
|
}
|
|
23973
|
-
) :
|
|
23974
|
-
"div",
|
|
23975
|
-
{
|
|
23976
|
-
className: cn(
|
|
23977
|
-
"text-2xl font-bold md:text-3xl lg:text-4xl",
|
|
23978
|
-
titleClassName
|
|
23979
|
-
),
|
|
23980
|
-
children: title
|
|
23981
|
-
}
|
|
23982
|
-
))
|
|
23954
|
+
) : title)
|
|
23983
23955
|
] }),
|
|
23984
23956
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
23985
23957
|
"div",
|
|
@@ -24739,7 +24711,7 @@ function FeatureBentoUtilities({
|
|
|
24739
24711
|
}
|
|
24740
24712
|
return /* @__PURE__ */ jsxRuntime.jsxs(Card, { className: cardClasses, children: [
|
|
24741
24713
|
renderTitle(),
|
|
24742
|
-
card.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className:
|
|
24714
|
+
card.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "relative", children: card.description })
|
|
24743
24715
|
] }, index);
|
|
24744
24716
|
},
|
|
24745
24717
|
[optixFlowConfig]
|
|
@@ -24768,20 +24740,10 @@ function FeatureBentoUtilities({
|
|
|
24768
24740
|
className,
|
|
24769
24741
|
containerClassName: cn("max-w-7xl", containerClassName),
|
|
24770
24742
|
children: [
|
|
24771
|
-
(labelIconElement || label) && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
24772
|
-
|
|
24773
|
-
{
|
|
24774
|
-
|
|
24775
|
-
"flex items-center gap-2",
|
|
24776
|
-
getTextColor(background, "muted"),
|
|
24777
|
-
labelClassName
|
|
24778
|
-
),
|
|
24779
|
-
children: [
|
|
24780
|
-
labelIconElement,
|
|
24781
|
-
label && (typeof label === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm", children: label }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: label }))
|
|
24782
|
-
]
|
|
24783
|
-
}
|
|
24784
|
-
),
|
|
24743
|
+
(labelIconElement || label) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("flex items-center gap-2", labelClassName), children: [
|
|
24744
|
+
labelIconElement,
|
|
24745
|
+
label && (typeof label === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm", children: label }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm", children: label }))
|
|
24746
|
+
] }),
|
|
24785
24747
|
/* @__PURE__ */ jsxRuntime.jsx(Separator, { className: "mt-3 mb-8" }),
|
|
24786
24748
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
24787
24749
|
"div",
|
|
@@ -25977,7 +25939,6 @@ function FeatureBentoImageGrid({
|
|
|
25977
25939
|
items,
|
|
25978
25940
|
itemsSlot,
|
|
25979
25941
|
className,
|
|
25980
|
-
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
25981
25942
|
titleClassName,
|
|
25982
25943
|
descriptionClassName,
|
|
25983
25944
|
gridClassName,
|
|
@@ -25985,6 +25946,7 @@ function FeatureBentoImageGrid({
|
|
|
25985
25946
|
smallCardClassName,
|
|
25986
25947
|
optixFlowConfig,
|
|
25987
25948
|
background,
|
|
25949
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
25988
25950
|
spacing = "py-12 md:py-32",
|
|
25989
25951
|
pattern,
|
|
25990
25952
|
patternOpacity,
|
|
@@ -26230,17 +26192,8 @@ function FeatureBentoImageGrid({
|
|
|
26230
26192
|
),
|
|
26231
26193
|
children: title
|
|
26232
26194
|
}
|
|
26233
|
-
) :
|
|
26234
|
-
|
|
26235
|
-
{
|
|
26236
|
-
className: cn(
|
|
26237
|
-
"mb-4 text-center text-4xl font-semibold text-balance",
|
|
26238
|
-
titleClassName
|
|
26239
|
-
),
|
|
26240
|
-
children: title
|
|
26241
|
-
}
|
|
26242
|
-
)),
|
|
26243
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-center text-balance", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("text-center text-balance", descriptionClassName), children: description })),
|
|
26195
|
+
) : title),
|
|
26196
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-center text-balance", descriptionClassName), children: description }) : description),
|
|
26244
26197
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26245
26198
|
"div",
|
|
26246
26199
|
{
|
|
@@ -36963,11 +36916,11 @@ function BlogFilteredResultsComponent({
|
|
|
36963
36916
|
}
|
|
36964
36917
|
function BlogMasonryFeaturedComponent({
|
|
36965
36918
|
heading,
|
|
36919
|
+
description,
|
|
36966
36920
|
posts,
|
|
36967
36921
|
featuredSlot,
|
|
36968
36922
|
postsSlot,
|
|
36969
36923
|
className,
|
|
36970
|
-
containerClassName,
|
|
36971
36924
|
headingClassName,
|
|
36972
36925
|
postsClassName,
|
|
36973
36926
|
featuredClassName,
|
|
@@ -36975,7 +36928,8 @@ function BlogMasonryFeaturedComponent({
|
|
|
36975
36928
|
postCardClassName,
|
|
36976
36929
|
optixFlowConfig,
|
|
36977
36930
|
background,
|
|
36978
|
-
|
|
36931
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
36932
|
+
spacing = "py-12 md:py-32",
|
|
36979
36933
|
pattern,
|
|
36980
36934
|
patternOpacity
|
|
36981
36935
|
}) {
|
|
@@ -36984,7 +36938,7 @@ function BlogMasonryFeaturedComponent({
|
|
|
36984
36938
|
const featuredPostContent = React30__namespace.useMemo(() => {
|
|
36985
36939
|
if (featuredSlot) return featuredSlot;
|
|
36986
36940
|
if (!featuredPost) return null;
|
|
36987
|
-
const postHref = featuredPost.href || featuredPost.url || featuredPost.link
|
|
36941
|
+
const postHref = featuredPost.href || featuredPost.url || featuredPost.link;
|
|
36988
36942
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
36989
36943
|
"div",
|
|
36990
36944
|
{
|
|
@@ -37011,13 +36965,13 @@ function BlogMasonryFeaturedComponent({
|
|
|
37011
36965
|
}
|
|
37012
36966
|
),
|
|
37013
36967
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-5", children: [
|
|
37014
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2.5 flex items-center gap-1 text-sm
|
|
36968
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-2.5 flex items-center gap-1 text-sm", children: [
|
|
37015
36969
|
(featuredPost.date || featuredPost.published) && /* @__PURE__ */ jsxRuntime.jsx("time", { children: featuredPost.date || featuredPost.published }),
|
|
37016
36970
|
(featuredPost.date || featuredPost.published) && featuredPost.author && "\xB7",
|
|
37017
36971
|
featuredPost.author && /* @__PURE__ */ jsxRuntime.jsx("span", { children: featuredPost.author })
|
|
37018
36972
|
] }),
|
|
37019
|
-
featuredPost.title && (typeof featuredPost.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg
|
|
37020
|
-
(featuredPost.description || featuredPost.summary) && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-4
|
|
36973
|
+
featuredPost.title && (typeof featuredPost.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-lg", children: featuredPost.title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-lg", children: featuredPost.title })),
|
|
36974
|
+
(featuredPost.description || featuredPost.summary) && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-4", children: featuredPost.description || featuredPost.summary })
|
|
37021
36975
|
] })
|
|
37022
36976
|
]
|
|
37023
36977
|
}
|
|
@@ -37074,22 +37028,24 @@ function BlogMasonryFeaturedComponent({
|
|
|
37074
37028
|
className: cn(className),
|
|
37075
37029
|
pattern,
|
|
37076
37030
|
patternOpacity,
|
|
37077
|
-
|
|
37031
|
+
containerClassName,
|
|
37032
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
|
|
37078
37033
|
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
37079
37034
|
"h1",
|
|
37080
37035
|
{
|
|
37081
37036
|
className: cn(
|
|
37082
|
-
"mb-6 md:mb-12 text-center text-
|
|
37037
|
+
"mb-6 md:mb-12 text-center text-2xl font-medium md:text-4xl text-balance",
|
|
37083
37038
|
headingClassName
|
|
37084
37039
|
),
|
|
37085
37040
|
children: heading
|
|
37086
37041
|
}
|
|
37087
|
-
) :
|
|
37042
|
+
) : heading),
|
|
37043
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-balance", children: description }) : description),
|
|
37088
37044
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
37089
37045
|
"div",
|
|
37090
37046
|
{
|
|
37091
37047
|
className: cn(
|
|
37092
|
-
"
|
|
37048
|
+
"grid-cols-1 mt-6 md:mt-16 grid gap-4 sm:grid-cols-2 lg:grid-cols-4",
|
|
37093
37049
|
postsClassName
|
|
37094
37050
|
),
|
|
37095
37051
|
children: [
|
|
@@ -37678,7 +37634,6 @@ function BlogCarouselAppleComponent({
|
|
|
37678
37634
|
function ArticleHeroProseComponent({
|
|
37679
37635
|
post,
|
|
37680
37636
|
className,
|
|
37681
|
-
containerClassName,
|
|
37682
37637
|
headerClassName,
|
|
37683
37638
|
titleClassName,
|
|
37684
37639
|
descriptionClassName,
|
|
@@ -37691,7 +37646,8 @@ function ArticleHeroProseComponent({
|
|
|
37691
37646
|
dateFormat = "MMMM d, yyyy",
|
|
37692
37647
|
optixFlowConfig,
|
|
37693
37648
|
background,
|
|
37694
|
-
|
|
37649
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
37650
|
+
spacing = "hero",
|
|
37695
37651
|
pattern,
|
|
37696
37652
|
patternOpacity
|
|
37697
37653
|
}) {
|
|
@@ -37762,8 +37718,9 @@ function ArticleHeroProseComponent({
|
|
|
37762
37718
|
pattern,
|
|
37763
37719
|
patternOpacity,
|
|
37764
37720
|
className,
|
|
37721
|
+
containerClassName,
|
|
37765
37722
|
children: [
|
|
37766
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className:
|
|
37723
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsxs(
|
|
37767
37724
|
"div",
|
|
37768
37725
|
{
|
|
37769
37726
|
className: cn(
|
|
@@ -37775,7 +37732,7 @@ function ArticleHeroProseComponent({
|
|
|
37775
37732
|
"h1",
|
|
37776
37733
|
{
|
|
37777
37734
|
className: cn(
|
|
37778
|
-
"max-w-3xl text-
|
|
37735
|
+
"max-w-full md:max-w-3xl text-2xl font-semibold text-pretty md:text-5xl",
|
|
37779
37736
|
titleClassName
|
|
37780
37737
|
),
|
|
37781
37738
|
children: title
|
|
@@ -37785,7 +37742,7 @@ function ArticleHeroProseComponent({
|
|
|
37785
37742
|
"h3",
|
|
37786
37743
|
{
|
|
37787
37744
|
className: cn(
|
|
37788
|
-
"max-w-3xl text-lg text-muted-foreground md:text-xl text-balance",
|
|
37745
|
+
"max-w-full md:max-w-3xl text-lg text-muted-foreground md:text-xl text-balance",
|
|
37789
37746
|
descriptionClassName
|
|
37790
37747
|
),
|
|
37791
37748
|
children: description
|
|
@@ -37796,7 +37753,7 @@ function ArticleHeroProseComponent({
|
|
|
37796
37753
|
]
|
|
37797
37754
|
}
|
|
37798
37755
|
) }),
|
|
37799
|
-
children && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("
|
|
37756
|
+
children && /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("relative", containerClassName), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
37800
37757
|
"div",
|
|
37801
37758
|
{
|
|
37802
37759
|
className: cn(
|
|
@@ -37964,7 +37921,6 @@ function ArticleSidebarStickyComponent({
|
|
|
37964
37921
|
}
|
|
37965
37922
|
function ArticleTocSidebarComponent({
|
|
37966
37923
|
className,
|
|
37967
|
-
containerClassName,
|
|
37968
37924
|
articleClassName,
|
|
37969
37925
|
sidebarClassName,
|
|
37970
37926
|
headerClassName,
|
|
@@ -37992,19 +37948,18 @@ function ArticleTocSidebarComponent({
|
|
|
37992
37948
|
heroMediaSlot,
|
|
37993
37949
|
ctaTitle,
|
|
37994
37950
|
ctaDescription,
|
|
37995
|
-
ctaActions
|
|
37996
|
-
ctaButtonText,
|
|
37997
|
-
ctaButtonHref,
|
|
37951
|
+
ctaActions,
|
|
37998
37952
|
ctaSlot,
|
|
37999
37953
|
children,
|
|
38000
37954
|
enableTocTracking = true,
|
|
38001
37955
|
optixFlowConfig,
|
|
38002
37956
|
background,
|
|
38003
|
-
|
|
37957
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8",
|
|
37958
|
+
spacing = "hero",
|
|
38004
37959
|
pattern,
|
|
38005
|
-
patternOpacity
|
|
37960
|
+
patternOpacity,
|
|
37961
|
+
patternClassName
|
|
38006
37962
|
}) {
|
|
38007
|
-
const ctaActions = ctaActionsProp ?? (ctaButtonText ? [{ label: ctaButtonText, href: ctaButtonHref || "#", variant: "default", className: "w-full" }] : []);
|
|
38008
37963
|
const [activeSection, setActiveSection] = React30__namespace.useState(
|
|
38009
37964
|
sections?.[0]?.id || ""
|
|
38010
37965
|
);
|
|
@@ -38040,7 +37995,14 @@ function ArticleTocSidebarComponent({
|
|
|
38040
37995
|
/* @__PURE__ */ jsxRuntime.jsx(AvatarFallback, { children: authorName.charAt(0) })
|
|
38041
37996
|
] }),
|
|
38042
37997
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
38043
|
-
authorHref ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
37998
|
+
authorHref ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
37999
|
+
Pressable,
|
|
38000
|
+
{
|
|
38001
|
+
href: authorHref,
|
|
38002
|
+
className: "text-sm font-medium hover:underline",
|
|
38003
|
+
children: authorName
|
|
38004
|
+
}
|
|
38005
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm font-medium", children: authorName }),
|
|
38044
38006
|
/* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-xs text-muted-foreground", children: [
|
|
38045
38007
|
publishDate,
|
|
38046
38008
|
readTime && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
@@ -38050,7 +38012,15 @@ function ArticleTocSidebarComponent({
|
|
|
38050
38012
|
] })
|
|
38051
38013
|
] })
|
|
38052
38014
|
] });
|
|
38053
|
-
}, [
|
|
38015
|
+
}, [
|
|
38016
|
+
authorSlot,
|
|
38017
|
+
authorName,
|
|
38018
|
+
authorImage,
|
|
38019
|
+
authorHref,
|
|
38020
|
+
publishDate,
|
|
38021
|
+
readTime,
|
|
38022
|
+
authorClassName
|
|
38023
|
+
]);
|
|
38054
38024
|
const heroMediaContent = React30__namespace.useMemo(() => {
|
|
38055
38025
|
if (heroMediaSlot) return heroMediaSlot;
|
|
38056
38026
|
if (!heroImageSrc) return null;
|
|
@@ -38059,11 +38029,20 @@ function ArticleTocSidebarComponent({
|
|
|
38059
38029
|
{
|
|
38060
38030
|
src: heroImageSrc,
|
|
38061
38031
|
alt: heroImageAlt,
|
|
38062
|
-
className: cn(
|
|
38032
|
+
className: cn(
|
|
38033
|
+
"my-8 aspect-video w-full rounded-lg object-cover",
|
|
38034
|
+
heroImageClassName
|
|
38035
|
+
),
|
|
38063
38036
|
optixFlowConfig
|
|
38064
38037
|
}
|
|
38065
38038
|
);
|
|
38066
|
-
}, [
|
|
38039
|
+
}, [
|
|
38040
|
+
heroMediaSlot,
|
|
38041
|
+
heroImageSrc,
|
|
38042
|
+
heroImageAlt,
|
|
38043
|
+
heroImageClassName,
|
|
38044
|
+
optixFlowConfig
|
|
38045
|
+
]);
|
|
38067
38046
|
const tocContent = React30__namespace.useMemo(() => {
|
|
38068
38047
|
if (tocSlot) return tocSlot;
|
|
38069
38048
|
if (!sections || sections.length === 0) return null;
|
|
@@ -38091,12 +38070,20 @@ function ArticleTocSidebarComponent({
|
|
|
38091
38070
|
}, [tocSlot, sections, activeSection, renderSectionLink, tocClassName]);
|
|
38092
38071
|
const ctaContent = React30__namespace.useMemo(() => {
|
|
38093
38072
|
if (ctaSlot) return ctaSlot;
|
|
38094
|
-
if (!ctaTitle && !ctaDescription && (!ctaActions || ctaActions.length === 0))
|
|
38095
|
-
|
|
38073
|
+
if (!ctaTitle && !ctaDescription && (!ctaActions || ctaActions.length === 0))
|
|
38074
|
+
return null;
|
|
38075
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("rounded-lg border p-4", ctaClassName), children: [
|
|
38096
38076
|
ctaTitle && (typeof ctaTitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-2 text-sm font-semibold", children: ctaTitle }) : ctaTitle),
|
|
38097
|
-
ctaDescription && (typeof ctaDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-4 text-sm
|
|
38077
|
+
ctaDescription && (typeof ctaDescription === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mb-4 text-sm", children: ctaDescription }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-4", children: ctaDescription })),
|
|
38098
38078
|
ctaActions && ctaActions.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-col gap-2", children: ctaActions.map((action, index) => {
|
|
38099
|
-
const {
|
|
38079
|
+
const {
|
|
38080
|
+
label,
|
|
38081
|
+
icon,
|
|
38082
|
+
iconAfter,
|
|
38083
|
+
children: actionChildren,
|
|
38084
|
+
className: actionClassName,
|
|
38085
|
+
...pressableProps
|
|
38086
|
+
} = action;
|
|
38100
38087
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
38101
38088
|
Pressable,
|
|
38102
38089
|
{
|
|
@@ -38121,18 +38108,38 @@ function ArticleTocSidebarComponent({
|
|
|
38121
38108
|
spacing,
|
|
38122
38109
|
pattern,
|
|
38123
38110
|
patternOpacity,
|
|
38124
|
-
|
|
38125
|
-
|
|
38126
|
-
|
|
38127
|
-
|
|
38128
|
-
|
|
38129
|
-
|
|
38130
|
-
|
|
38131
|
-
|
|
38132
|
-
|
|
38133
|
-
|
|
38134
|
-
|
|
38135
|
-
|
|
38111
|
+
patternClassName,
|
|
38112
|
+
className: cn(pattern && "overflow-visible", className),
|
|
38113
|
+
containerClassName,
|
|
38114
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-10 lg:grid-cols-[minmax(0,1fr)_300px]", children: [
|
|
38115
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
38116
|
+
"article",
|
|
38117
|
+
{
|
|
38118
|
+
className: cn(
|
|
38119
|
+
"prose max-w-none dark:prose-invert",
|
|
38120
|
+
articleClassName
|
|
38121
|
+
),
|
|
38122
|
+
children: [
|
|
38123
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mb-8 not-prose", headerClassName), children: [
|
|
38124
|
+
categoryContent,
|
|
38125
|
+
title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
38126
|
+
"h1",
|
|
38127
|
+
{
|
|
38128
|
+
className: cn(
|
|
38129
|
+
"mt-4 text-2xl font-bold tracking-tight md:text-4xl",
|
|
38130
|
+
titleClassName
|
|
38131
|
+
),
|
|
38132
|
+
children: title
|
|
38133
|
+
}
|
|
38134
|
+
) : title),
|
|
38135
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("mt-4 text-lg", descriptionClassName), children: description }) : description),
|
|
38136
|
+
authorContent
|
|
38137
|
+
] }),
|
|
38138
|
+
heroMediaContent,
|
|
38139
|
+
children
|
|
38140
|
+
]
|
|
38141
|
+
}
|
|
38142
|
+
),
|
|
38136
38143
|
/* @__PURE__ */ jsxRuntime.jsx("aside", { className: cn("hidden lg:block", sidebarClassName), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "sticky top-8 space-y-6", children: [
|
|
38137
38144
|
tocContent,
|
|
38138
38145
|
ctaContent
|