@opensite/ui 2.3.9 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/about-mission-dual-image.cjs +2 -2
- package/dist/about-mission-dual-image.js +2 -2
- package/dist/about-streamline-team.cjs +3 -2
- package/dist/about-streamline-team.js +3 -2
- package/dist/feature-animated-carousel.cjs +94 -55
- package/dist/feature-animated-carousel.js +88 -49
- package/dist/feature-image-cards-three-column.cjs +172 -80
- package/dist/feature-image-cards-three-column.d.cts +17 -28
- package/dist/feature-image-cards-three-column.d.ts +17 -28
- package/dist/feature-image-cards-three-column.js +172 -80
- package/dist/registry.cjs +185 -117
- package/dist/registry.js +185 -117
- package/package.json +1 -1
package/dist/registry.cjs
CHANGED
|
@@ -7927,7 +7927,7 @@ function AboutStreamlineTeam({
|
|
|
7927
7927
|
}
|
|
7928
7928
|
)
|
|
7929
7929
|
] }),
|
|
7930
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "pl-0 md:pl-8", children: [
|
|
7930
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "pl-0 md:pl-8 lg:pl-16", children: [
|
|
7931
7931
|
title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
7932
7932
|
"h1",
|
|
7933
7933
|
{
|
|
@@ -7978,7 +7978,8 @@ function AboutStreamlineTeam({
|
|
|
7978
7978
|
{
|
|
7979
7979
|
actions,
|
|
7980
7980
|
actionsSlot,
|
|
7981
|
-
actionsClassName
|
|
7981
|
+
actionsClassName,
|
|
7982
|
+
verticalSpacing: "mt-4 md:mt-0"
|
|
7982
7983
|
}
|
|
7983
7984
|
)
|
|
7984
7985
|
]
|
|
@@ -8820,7 +8821,7 @@ function AboutMissionDualImage({
|
|
|
8820
8821
|
if (!primaryHeading || !secondaryContent) {
|
|
8821
8822
|
return null;
|
|
8822
8823
|
}
|
|
8823
|
-
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-start gap-
|
|
8824
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-start gap-2 md:gap-4", children: [
|
|
8824
8825
|
primaryHeading && (typeof primaryHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
8825
8826
|
"h2",
|
|
8826
8827
|
{
|
|
@@ -8831,7 +8832,7 @@ function AboutMissionDualImage({
|
|
|
8831
8832
|
children: primaryHeading
|
|
8832
8833
|
}
|
|
8833
8834
|
) : primaryHeading),
|
|
8834
|
-
secondaryContent && (typeof secondaryContent === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("
|
|
8835
|
+
secondaryContent && (typeof secondaryContent === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-base md:text-lg", secondaryClassname), children: secondaryContent }) : secondaryContent)
|
|
8835
8836
|
] });
|
|
8836
8837
|
},
|
|
8837
8838
|
[]
|
|
@@ -26191,6 +26192,11 @@ function FeatureBentoImageGrid({
|
|
|
26191
26192
|
}
|
|
26192
26193
|
);
|
|
26193
26194
|
}
|
|
26195
|
+
var ASPECT_RATIO_CLASSES = {
|
|
26196
|
+
square: "aspect-square",
|
|
26197
|
+
horizontal: "aspect-video",
|
|
26198
|
+
vertical: "aspect-[3/4]"
|
|
26199
|
+
};
|
|
26194
26200
|
function FeatureImageCardsThreeColumn({
|
|
26195
26201
|
title,
|
|
26196
26202
|
description,
|
|
@@ -26208,7 +26214,8 @@ function FeatureImageCardsThreeColumn({
|
|
|
26208
26214
|
background,
|
|
26209
26215
|
pattern,
|
|
26210
26216
|
patternOpacity,
|
|
26211
|
-
patternClassName
|
|
26217
|
+
patternClassName,
|
|
26218
|
+
cardAspectRatios = { desktop: "vertical", mobile: "square" }
|
|
26212
26219
|
}) {
|
|
26213
26220
|
const renderImage = React27.useCallback(
|
|
26214
26221
|
(card, imageAlt) => {
|
|
@@ -26219,7 +26226,7 @@ function FeatureImageCardsThreeColumn({
|
|
|
26219
26226
|
{
|
|
26220
26227
|
src: card.imageSrc,
|
|
26221
26228
|
alt: imageAlt,
|
|
26222
|
-
className: "
|
|
26229
|
+
className: "absolute inset-0 h-full w-full rounded-xl object-cover object-center",
|
|
26223
26230
|
loading: "lazy",
|
|
26224
26231
|
optixFlowConfig
|
|
26225
26232
|
}
|
|
@@ -26238,77 +26245,149 @@ function FeatureImageCardsThreeColumn({
|
|
|
26238
26245
|
},
|
|
26239
26246
|
[]
|
|
26240
26247
|
);
|
|
26248
|
+
const renderCardBadge = React27.useCallback(
|
|
26249
|
+
(card) => {
|
|
26250
|
+
return card.badgeText || card.avatarSrc || card.icon || card.iconName ? /* @__PURE__ */ jsxRuntime.jsxs(
|
|
26251
|
+
Badge,
|
|
26252
|
+
{
|
|
26253
|
+
variant: "default",
|
|
26254
|
+
className: cn("py-1 px-3 gap-2", card.badgeClassName),
|
|
26255
|
+
children: [
|
|
26256
|
+
renderBadgeIcon(card),
|
|
26257
|
+
card.badgeText
|
|
26258
|
+
]
|
|
26259
|
+
}
|
|
26260
|
+
) : null;
|
|
26261
|
+
},
|
|
26262
|
+
[renderBadgeIcon]
|
|
26263
|
+
);
|
|
26264
|
+
const cardHasTextContent = React27.useCallback(
|
|
26265
|
+
(card) => {
|
|
26266
|
+
const hasBadge = !!(card.badgeText || card.avatarSrc || card.icon || card.iconName);
|
|
26267
|
+
return hasBadge || !!card.title || !!card.subtitle || !!card.linkText;
|
|
26268
|
+
},
|
|
26269
|
+
[]
|
|
26270
|
+
);
|
|
26271
|
+
const renderCardText = React27.useCallback(
|
|
26272
|
+
(card) => {
|
|
26273
|
+
if (!cardHasTextContent(card)) {
|
|
26274
|
+
return null;
|
|
26275
|
+
}
|
|
26276
|
+
const cardBadge = renderCardBadge(card);
|
|
26277
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute top-0 flex h-full w-full flex-col justify-between p-4 md:p-6", children: [
|
|
26278
|
+
cardBadge || /* @__PURE__ */ jsxRuntime.jsx("div", {}),
|
|
26279
|
+
card.title || card.subtitle || card.linkText ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-start gap-4 md:gap-6 text-white", children: [
|
|
26280
|
+
card.title || card.subtitle ? /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-start gap-2 md:gap-4", children: [
|
|
26281
|
+
card.title && (typeof card.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
26282
|
+
"h3",
|
|
26283
|
+
{
|
|
26284
|
+
className: cn(
|
|
26285
|
+
"text-lg md:text-xl font-semibold",
|
|
26286
|
+
card.titleClassName
|
|
26287
|
+
),
|
|
26288
|
+
children: card.title
|
|
26289
|
+
}
|
|
26290
|
+
) : card.title),
|
|
26291
|
+
card.subtitle && (typeof card.subtitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
26292
|
+
"p",
|
|
26293
|
+
{
|
|
26294
|
+
className: cn(
|
|
26295
|
+
"text-base font-normal",
|
|
26296
|
+
card.subtitleClassName
|
|
26297
|
+
),
|
|
26298
|
+
children: card.subtitle
|
|
26299
|
+
}
|
|
26300
|
+
) : card.subtitle)
|
|
26301
|
+
] }) : null,
|
|
26302
|
+
card.linkText && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
26303
|
+
"div",
|
|
26304
|
+
{
|
|
26305
|
+
className: cn(
|
|
26306
|
+
"font-bold text-xs uppercase flex items-center gap-2",
|
|
26307
|
+
card.linkClassName
|
|
26308
|
+
),
|
|
26309
|
+
children: [
|
|
26310
|
+
card.linkText,
|
|
26311
|
+
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-up-right", size: 18 })
|
|
26312
|
+
]
|
|
26313
|
+
}
|
|
26314
|
+
)
|
|
26315
|
+
] }) : null
|
|
26316
|
+
] });
|
|
26317
|
+
},
|
|
26318
|
+
[cardHasTextContent, renderCardBadge]
|
|
26319
|
+
);
|
|
26241
26320
|
const cardsContent = React27.useMemo(() => {
|
|
26242
26321
|
if (cardsSlot) return cardsSlot;
|
|
26243
26322
|
if (!cards || cards.length === 0) return null;
|
|
26244
26323
|
return cards.map((card, index) => {
|
|
26245
26324
|
const imageAlt = card.imageAlt || (typeof card.title === "string" ? card.title : "Card image");
|
|
26325
|
+
const mobileAspectClass = ASPECT_RATIO_CLASSES[cardAspectRatios.mobile];
|
|
26326
|
+
const desktopAspectClass = `md:${ASPECT_RATIO_CLASSES[cardAspectRatios.desktop]}`;
|
|
26246
26327
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
26247
26328
|
Pressable,
|
|
26248
26329
|
{
|
|
26249
26330
|
href: card.link,
|
|
26250
26331
|
onClick: card.onClick,
|
|
26251
26332
|
className: cn(
|
|
26252
|
-
"group relative overflow-hidden rounded-xl",
|
|
26333
|
+
"group relative overflow-hidden rounded-2xl shadow-xl",
|
|
26334
|
+
mobileAspectClass,
|
|
26335
|
+
desktopAspectClass,
|
|
26253
26336
|
cardClassName,
|
|
26254
26337
|
card.className
|
|
26255
26338
|
),
|
|
26256
26339
|
children: [
|
|
26257
26340
|
renderImage(card, imageAlt),
|
|
26258
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-0 right-0 bottom-0 left-0 translate-y-10 md:translate-y-20 rounded-xl bg-linear-to-t from-black to-transparent transition-transform duration-300 group-hover:translate-y-0" }),
|
|
26259
|
-
|
|
26260
|
-
(card.badgeText || card.avatarSrc || card.icon || card.iconName) && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
26261
|
-
Badge,
|
|
26262
|
-
{
|
|
26263
|
-
variant: "default",
|
|
26264
|
-
className: cn("py-1 px-4", card.badgeClassName),
|
|
26265
|
-
children: [
|
|
26266
|
-
renderBadgeIcon(card),
|
|
26267
|
-
card.badgeText
|
|
26268
|
-
]
|
|
26269
|
-
}
|
|
26270
|
-
),
|
|
26271
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2 md:gap-4", children: [
|
|
26272
|
-
card.title && (typeof card.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
26273
|
-
"h3",
|
|
26274
|
-
{
|
|
26275
|
-
className: cn(
|
|
26276
|
-
"text-lg md:text-xl font-semibold",
|
|
26277
|
-
card.titleClassName
|
|
26278
|
-
),
|
|
26279
|
-
children: card.title
|
|
26280
|
-
}
|
|
26281
|
-
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
26282
|
-
"div",
|
|
26283
|
-
{
|
|
26284
|
-
className: cn(
|
|
26285
|
-
"text-lg md:text-xl font-semibold",
|
|
26286
|
-
card.titleClassName
|
|
26287
|
-
),
|
|
26288
|
-
children: card.title
|
|
26289
|
-
}
|
|
26290
|
-
)),
|
|
26291
|
-
card.linkText && card.link && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
26292
|
-
"div",
|
|
26293
|
-
{
|
|
26294
|
-
className: cn(
|
|
26295
|
-
"font-bold text-xs uppercase flex items-center gap-2",
|
|
26296
|
-
card.linkClassName
|
|
26297
|
-
),
|
|
26298
|
-
children: [
|
|
26299
|
-
card.linkText,
|
|
26300
|
-
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/arrow-up-right", size: 18 })
|
|
26301
|
-
]
|
|
26302
|
-
}
|
|
26303
|
-
)
|
|
26304
|
-
] })
|
|
26305
|
-
] })
|
|
26341
|
+
cardHasTextContent(card) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute top-0 right-0 bottom-0 left-0 translate-y-10 md:translate-y-20 rounded-xl bg-linear-to-t from-black to-transparent transition-transform duration-300 group-hover:translate-y-0" }),
|
|
26342
|
+
renderCardText(card)
|
|
26306
26343
|
]
|
|
26307
26344
|
},
|
|
26308
26345
|
index
|
|
26309
26346
|
);
|
|
26310
26347
|
});
|
|
26311
|
-
}, [
|
|
26348
|
+
}, [
|
|
26349
|
+
cardsSlot,
|
|
26350
|
+
cards,
|
|
26351
|
+
cardClassName,
|
|
26352
|
+
cardAspectRatios,
|
|
26353
|
+
renderImage,
|
|
26354
|
+
cardHasTextContent,
|
|
26355
|
+
renderCardText
|
|
26356
|
+
]);
|
|
26357
|
+
const contentItems = React27.useMemo(() => {
|
|
26358
|
+
const items = [];
|
|
26359
|
+
if (title) {
|
|
26360
|
+
if (typeof title === "string") {
|
|
26361
|
+
items.push({
|
|
26362
|
+
_type: "text",
|
|
26363
|
+
as: "h2",
|
|
26364
|
+
className: cn(
|
|
26365
|
+
"text-3xl font-semibold text-balance md:text-4xl lg:text-5xl max-w-full md:max-w-md",
|
|
26366
|
+
title
|
|
26367
|
+
),
|
|
26368
|
+
children: title
|
|
26369
|
+
});
|
|
26370
|
+
} else {
|
|
26371
|
+
items.push(title);
|
|
26372
|
+
}
|
|
26373
|
+
}
|
|
26374
|
+
if (description) {
|
|
26375
|
+
if (typeof description === "string") {
|
|
26376
|
+
items.push({
|
|
26377
|
+
_type: "text",
|
|
26378
|
+
as: "p",
|
|
26379
|
+
className: cn(
|
|
26380
|
+
"text-xl max-w-full md:max-w-md text-balance",
|
|
26381
|
+
descriptionClassName
|
|
26382
|
+
),
|
|
26383
|
+
children: description
|
|
26384
|
+
});
|
|
26385
|
+
} else {
|
|
26386
|
+
items.push(description);
|
|
26387
|
+
}
|
|
26388
|
+
}
|
|
26389
|
+
return items;
|
|
26390
|
+
}, [title, titleClassName, description, descriptionClassName]);
|
|
26312
26391
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
26313
26392
|
Section,
|
|
26314
26393
|
{
|
|
@@ -26320,34 +26399,16 @@ function FeatureImageCardsThreeColumn({
|
|
|
26320
26399
|
className,
|
|
26321
26400
|
containerClassName,
|
|
26322
26401
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col space-y-6 md:space-y-16", children: [
|
|
26323
|
-
|
|
26324
|
-
|
|
26325
|
-
|
|
26326
|
-
|
|
26327
|
-
|
|
26328
|
-
|
|
26329
|
-
|
|
26330
|
-
|
|
26331
|
-
|
|
26332
|
-
|
|
26333
|
-
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
26334
|
-
"div",
|
|
26335
|
-
{
|
|
26336
|
-
className: cn(
|
|
26337
|
-
"text-2xl font-semibold text-balance md:text-3xl lg:text-4xl max-w-lg md:max-w-md",
|
|
26338
|
-
titleClassName
|
|
26339
|
-
),
|
|
26340
|
-
children: title
|
|
26341
|
-
}
|
|
26342
|
-
)),
|
|
26343
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("max-w-lg md:max-w-md", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
26344
|
-
"div",
|
|
26345
|
-
{
|
|
26346
|
-
className: cn("max-w-lg md:max-w-md", descriptionClassName),
|
|
26347
|
-
children: description
|
|
26348
|
-
}
|
|
26349
|
-
))
|
|
26350
|
-
] }) : null,
|
|
26402
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26403
|
+
ContentGroup,
|
|
26404
|
+
{
|
|
26405
|
+
items: contentItems,
|
|
26406
|
+
className: cn(
|
|
26407
|
+
"flex flex-col gap-2 text-left items-start",
|
|
26408
|
+
headerClassName
|
|
26409
|
+
)
|
|
26410
|
+
}
|
|
26411
|
+
),
|
|
26351
26412
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
26352
26413
|
"div",
|
|
26353
26414
|
{
|
|
@@ -41497,6 +41558,40 @@ function FeatureAnimatedCarousel({
|
|
|
41497
41558
|
);
|
|
41498
41559
|
}
|
|
41499
41560
|
const currentFeature = features[activeIndex];
|
|
41561
|
+
const contentItems = React27.useMemo(() => {
|
|
41562
|
+
const items = [];
|
|
41563
|
+
if (title) {
|
|
41564
|
+
if (typeof title === "string") {
|
|
41565
|
+
items.push({
|
|
41566
|
+
_type: "text",
|
|
41567
|
+
as: "h2",
|
|
41568
|
+
className: cn(
|
|
41569
|
+
"text-3xl font-semibold text-balance md:text-4xl lg:text-5xl max-w-full md:max-w-md",
|
|
41570
|
+
title
|
|
41571
|
+
),
|
|
41572
|
+
children: title
|
|
41573
|
+
});
|
|
41574
|
+
} else {
|
|
41575
|
+
items.push(title);
|
|
41576
|
+
}
|
|
41577
|
+
}
|
|
41578
|
+
if (description) {
|
|
41579
|
+
if (typeof description === "string") {
|
|
41580
|
+
items.push({
|
|
41581
|
+
_type: "text",
|
|
41582
|
+
as: "p",
|
|
41583
|
+
className: cn(
|
|
41584
|
+
"text-xl max-w-full md:max-w-md text-balance",
|
|
41585
|
+
descriptionClassName
|
|
41586
|
+
),
|
|
41587
|
+
children: description
|
|
41588
|
+
});
|
|
41589
|
+
} else {
|
|
41590
|
+
items.push(description);
|
|
41591
|
+
}
|
|
41592
|
+
}
|
|
41593
|
+
return items;
|
|
41594
|
+
}, [title, titleClassName, description, descriptionClassName]);
|
|
41500
41595
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
41501
41596
|
Section,
|
|
41502
41597
|
{
|
|
@@ -41508,43 +41603,16 @@ function FeatureAnimatedCarousel({
|
|
|
41508
41603
|
className,
|
|
41509
41604
|
containerClassName,
|
|
41510
41605
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col space-y-6 md:space-y-16", children: [
|
|
41511
|
-
|
|
41512
|
-
|
|
41606
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
41607
|
+
ContentGroup,
|
|
41513
41608
|
{
|
|
41609
|
+
items: contentItems,
|
|
41514
41610
|
className: cn(
|
|
41515
|
-
"flex flex-col gap-
|
|
41611
|
+
"flex flex-col gap-2 text-left items-start",
|
|
41516
41612
|
headerClassName
|
|
41517
|
-
)
|
|
41518
|
-
children: [
|
|
41519
|
-
title && (typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
41520
|
-
"h2",
|
|
41521
|
-
{
|
|
41522
|
-
className: cn(
|
|
41523
|
-
"text-xl font-semibold text-balance md:text-2xl lg:text-3xl max-w-lg md:max-w-md",
|
|
41524
|
-
titleClassName
|
|
41525
|
-
),
|
|
41526
|
-
children: title
|
|
41527
|
-
}
|
|
41528
|
-
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
41529
|
-
"div",
|
|
41530
|
-
{
|
|
41531
|
-
className: cn(
|
|
41532
|
-
"text-xl font-semibold text-balance md:text-2xl lg:text-3xl max-w-lg md:max-w-md",
|
|
41533
|
-
titleClassName
|
|
41534
|
-
),
|
|
41535
|
-
children: title
|
|
41536
|
-
}
|
|
41537
|
-
)),
|
|
41538
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("max-w-lg md:max-w-md", descriptionClassName), children: description }) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
41539
|
-
"div",
|
|
41540
|
-
{
|
|
41541
|
-
className: cn("max-w-lg md:max-w-md", descriptionClassName),
|
|
41542
|
-
children: description
|
|
41543
|
-
}
|
|
41544
|
-
))
|
|
41545
|
-
]
|
|
41613
|
+
)
|
|
41546
41614
|
}
|
|
41547
|
-
)
|
|
41615
|
+
),
|
|
41548
41616
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
41549
41617
|
"div",
|
|
41550
41618
|
{
|