@opensite/ui 0.7.2 → 0.7.4
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/carousel-animated-sections.cjs +32 -32
- package/dist/carousel-animated-sections.d.cts +4 -3
- package/dist/carousel-animated-sections.d.ts +4 -3
- package/dist/carousel-animated-sections.js +32 -32
- package/dist/carousel-feature-badge.cjs +59 -18
- package/dist/carousel-feature-badge.d.cts +10 -2
- package/dist/carousel-feature-badge.d.ts +10 -2
- package/dist/carousel-feature-badge.js +59 -18
- package/dist/carousel-fullscreen-scroll-fx.cjs +106 -33
- package/dist/carousel-fullscreen-scroll-fx.d.cts +10 -2
- package/dist/carousel-fullscreen-scroll-fx.d.ts +10 -2
- package/dist/carousel-fullscreen-scroll-fx.js +106 -33
- package/dist/registry.cjs +212 -98
- package/dist/registry.js +212 -98
- package/package.json +1 -1
package/dist/registry.cjs
CHANGED
|
@@ -17279,13 +17279,23 @@ function ContactHelpCenter({
|
|
|
17279
17279
|
}
|
|
17280
17280
|
);
|
|
17281
17281
|
}
|
|
17282
|
+
var BRIGHTNESS_CLASS_MAP = {
|
|
17283
|
+
"10": "brightness-[.1]",
|
|
17284
|
+
"20": "brightness-[.2]",
|
|
17285
|
+
"25": "brightness-[.25]",
|
|
17286
|
+
"30": "brightness-[.3]",
|
|
17287
|
+
"40": "brightness-[.4]",
|
|
17288
|
+
"50": "brightness-50",
|
|
17289
|
+
"75": "brightness-75",
|
|
17290
|
+
"100": "brightness-100"
|
|
17291
|
+
};
|
|
17282
17292
|
function CarouselAnimatedSections({
|
|
17283
17293
|
sections,
|
|
17284
17294
|
sectionsSlot,
|
|
17285
17295
|
actionsSlot,
|
|
17286
17296
|
actions,
|
|
17287
17297
|
className,
|
|
17288
|
-
containerClassName = "h-full",
|
|
17298
|
+
containerClassName = "h-full flex flex-col justify-center",
|
|
17289
17299
|
contentClassName,
|
|
17290
17300
|
subtitleClassName,
|
|
17291
17301
|
titleClassName,
|
|
@@ -17294,7 +17304,7 @@ function CarouselAnimatedSections({
|
|
|
17294
17304
|
navigationClassName,
|
|
17295
17305
|
arrowsClassName,
|
|
17296
17306
|
counterClassName,
|
|
17297
|
-
|
|
17307
|
+
slideMediaBrightness = "50",
|
|
17298
17308
|
optixFlowConfig,
|
|
17299
17309
|
background = "dark",
|
|
17300
17310
|
spacing = "py-0",
|
|
@@ -17349,7 +17359,7 @@ function CarouselAnimatedSections({
|
|
|
17349
17359
|
})
|
|
17350
17360
|
};
|
|
17351
17361
|
const currentSection = sections?.[currentIndex];
|
|
17352
|
-
const
|
|
17362
|
+
const actionElements = React52__namespace.useMemo(() => {
|
|
17353
17363
|
if (actionsSlot) return actionsSlot;
|
|
17354
17364
|
if (actions && actions.length > 0) {
|
|
17355
17365
|
return actions.map((action, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
@@ -17359,11 +17369,8 @@ function CarouselAnimatedSections({
|
|
|
17359
17369
|
onClick: action.onClick,
|
|
17360
17370
|
asButton: true,
|
|
17361
17371
|
variant: action.variant,
|
|
17362
|
-
size: action.size
|
|
17363
|
-
className: cn(
|
|
17364
|
-
"bg-white text-black hover:bg-white/90",
|
|
17365
|
-
action.className
|
|
17366
|
-
),
|
|
17372
|
+
size: action.size,
|
|
17373
|
+
className: cn(action.className),
|
|
17367
17374
|
children: [
|
|
17368
17375
|
action.label,
|
|
17369
17376
|
action.icon && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-2", children: action.icon }),
|
|
@@ -17374,7 +17381,7 @@ function CarouselAnimatedSections({
|
|
|
17374
17381
|
));
|
|
17375
17382
|
}
|
|
17376
17383
|
return null;
|
|
17377
|
-
};
|
|
17384
|
+
}, [actionsSlot, actions]);
|
|
17378
17385
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17379
17386
|
Section,
|
|
17380
17387
|
{
|
|
@@ -17386,7 +17393,7 @@ function CarouselAnimatedSections({
|
|
|
17386
17393
|
containerMaxWidth,
|
|
17387
17394
|
containerClassName,
|
|
17388
17395
|
children: [
|
|
17389
|
-
sectionsSlot ? sectionsSlot : currentSection ? /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { initial: false, custom: direction, mode: "wait", children: /* @__PURE__ */ jsxRuntime.
|
|
17396
|
+
sectionsSlot ? sectionsSlot : currentSection ? /* @__PURE__ */ jsxRuntime.jsx(framerMotion.AnimatePresence, { initial: false, custom: direction, mode: "wait", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
17390
17397
|
framerMotion.motion.div,
|
|
17391
17398
|
{
|
|
17392
17399
|
custom: direction,
|
|
@@ -17397,26 +17404,19 @@ function CarouselAnimatedSections({
|
|
|
17397
17404
|
transition: { duration: 0.6, ease: [0.4, 0, 0.2, 1] },
|
|
17398
17405
|
onAnimationComplete: () => setIsAnimating(false),
|
|
17399
17406
|
className: cn("absolute inset-0", currentSection?.className),
|
|
17400
|
-
children:
|
|
17401
|
-
|
|
17402
|
-
|
|
17403
|
-
|
|
17404
|
-
|
|
17405
|
-
|
|
17406
|
-
|
|
17407
|
-
|
|
17408
|
-
|
|
17409
|
-
|
|
17410
|
-
|
|
17411
|
-
|
|
17412
|
-
|
|
17413
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
17414
|
-
"div",
|
|
17415
|
-
{
|
|
17416
|
-
className: cn("absolute inset-0 bg-black/50", overlayClassName)
|
|
17417
|
-
}
|
|
17418
|
-
)
|
|
17419
|
-
]
|
|
17407
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
17408
|
+
img.Img,
|
|
17409
|
+
{
|
|
17410
|
+
src: currentSection?.image,
|
|
17411
|
+
alt: typeof currentSection?.title === "string" ? currentSection?.title : `Section ${currentSection?.id}`,
|
|
17412
|
+
className: cn(
|
|
17413
|
+
"h-full w-full object-cover",
|
|
17414
|
+
BRIGHTNESS_CLASS_MAP[slideMediaBrightness],
|
|
17415
|
+
currentSection?.imageClassName
|
|
17416
|
+
),
|
|
17417
|
+
optixFlowConfig
|
|
17418
|
+
}
|
|
17419
|
+
)
|
|
17420
17420
|
},
|
|
17421
17421
|
currentIndex
|
|
17422
17422
|
) }) : null,
|
|
@@ -17434,7 +17434,7 @@ function CarouselAnimatedSections({
|
|
|
17434
17434
|
animate: { opacity: 1, y: 0 },
|
|
17435
17435
|
exit: { opacity: 0, y: -40 },
|
|
17436
17436
|
transition: { duration: 0.4, delay: 0.2 },
|
|
17437
|
-
className: "max-w-2xl text-white",
|
|
17437
|
+
className: "max-w-2xl text-white text-shadow",
|
|
17438
17438
|
children: [
|
|
17439
17439
|
currentSection?.subtitle && (typeof currentSection?.subtitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
17440
17440
|
"p",
|
|
@@ -17466,7 +17466,7 @@ function CarouselAnimatedSections({
|
|
|
17466
17466
|
children: currentSection?.description
|
|
17467
17467
|
}
|
|
17468
17468
|
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mb-8", descriptionClassName), children: currentSection?.description })),
|
|
17469
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: actionsClassName, children:
|
|
17469
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: actionsClassName, children: actionElements || currentSection?.ctaText && /* @__PURE__ */ jsxRuntime.jsxs(
|
|
17470
17470
|
Pressable,
|
|
17471
17471
|
{
|
|
17472
17472
|
href: currentSection?.ctaHref,
|
|
@@ -18177,6 +18177,11 @@ function CarouselNext({
|
|
|
18177
18177
|
}
|
|
18178
18178
|
);
|
|
18179
18179
|
}
|
|
18180
|
+
var SLIDE_LAYOUT_ASPECT_MAP = {
|
|
18181
|
+
horizontal: "aspect-video",
|
|
18182
|
+
vertical: "aspect-[9/16]",
|
|
18183
|
+
square: "aspect-square"
|
|
18184
|
+
};
|
|
18180
18185
|
function CarouselFeatureBadge({
|
|
18181
18186
|
badge,
|
|
18182
18187
|
heading,
|
|
@@ -18192,23 +18197,34 @@ function CarouselFeatureBadge({
|
|
|
18192
18197
|
carouselClassName,
|
|
18193
18198
|
carouselItemClassName,
|
|
18194
18199
|
optixFlowConfig,
|
|
18195
|
-
background
|
|
18196
|
-
spacing
|
|
18200
|
+
background,
|
|
18201
|
+
spacing,
|
|
18197
18202
|
pattern,
|
|
18198
|
-
patternOpacity
|
|
18203
|
+
patternOpacity,
|
|
18204
|
+
slideLayoutVariant = "square",
|
|
18205
|
+
containerMaxWidth = "2xl"
|
|
18199
18206
|
}) {
|
|
18200
18207
|
const renderCarouselItems = () => {
|
|
18201
18208
|
if (itemsSlot) return itemsSlot;
|
|
18202
18209
|
if (!items || items.length === 0) return null;
|
|
18203
|
-
return items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(CarouselItem, { className: carouselItemClassName, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
18204
|
-
|
|
18210
|
+
return items.map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(CarouselItem, { className: carouselItemClassName, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
18211
|
+
"div",
|
|
18205
18212
|
{
|
|
18206
|
-
|
|
18207
|
-
|
|
18208
|
-
|
|
18209
|
-
|
|
18213
|
+
className: cn(
|
|
18214
|
+
"flex items-center justify-center overflow-hidden rounded-2xl",
|
|
18215
|
+
SLIDE_LAYOUT_ASPECT_MAP[slideLayoutVariant]
|
|
18216
|
+
),
|
|
18217
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
18218
|
+
img.Img,
|
|
18219
|
+
{
|
|
18220
|
+
src: item.src,
|
|
18221
|
+
alt: item.alt,
|
|
18222
|
+
className: cn("h-full w-full object-cover", item.className),
|
|
18223
|
+
optixFlowConfig
|
|
18224
|
+
}
|
|
18225
|
+
)
|
|
18210
18226
|
}
|
|
18211
|
-
) }
|
|
18227
|
+
) }, index));
|
|
18212
18228
|
};
|
|
18213
18229
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
18214
18230
|
Section,
|
|
@@ -18218,14 +18234,39 @@ function CarouselFeatureBadge({
|
|
|
18218
18234
|
className: cn(className),
|
|
18219
18235
|
pattern,
|
|
18220
18236
|
patternOpacity,
|
|
18221
|
-
|
|
18222
|
-
|
|
18223
|
-
|
|
18224
|
-
|
|
18225
|
-
|
|
18226
|
-
|
|
18227
|
-
|
|
18228
|
-
|
|
18237
|
+
containerMaxWidth,
|
|
18238
|
+
children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("mx-auto", containerClassName), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid grid-cols-1 items-end justify-end gap-6 md:gap-20 lg:grid-cols-2", children: [
|
|
18239
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
18240
|
+
"div",
|
|
18241
|
+
{
|
|
18242
|
+
className: cn("flex flex-col items-start gap-4", contentClassName),
|
|
18243
|
+
children: [
|
|
18244
|
+
badge && /* @__PURE__ */ jsxRuntime.jsx("div", { className: badgeClassName, children: typeof badge === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Badge, { children: badge }) : badge }),
|
|
18245
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
18246
|
+
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
18247
|
+
"h2",
|
|
18248
|
+
{
|
|
18249
|
+
className: cn(
|
|
18250
|
+
"text-left text-xl font-semibold md:text-3xl lg:max-w-xl lg:text-4xl",
|
|
18251
|
+
headingClassName
|
|
18252
|
+
),
|
|
18253
|
+
children: heading
|
|
18254
|
+
}
|
|
18255
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: heading })),
|
|
18256
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
18257
|
+
"p",
|
|
18258
|
+
{
|
|
18259
|
+
className: cn(
|
|
18260
|
+
"max-w-xl text-left text-lg leading-snug lg:max-w-sm",
|
|
18261
|
+
descriptionClassName
|
|
18262
|
+
),
|
|
18263
|
+
children: description
|
|
18264
|
+
}
|
|
18265
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
|
|
18266
|
+
] })
|
|
18267
|
+
]
|
|
18268
|
+
}
|
|
18269
|
+
),
|
|
18229
18270
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("w-full max-w-full px-6", carouselClassName), children: /* @__PURE__ */ jsxRuntime.jsxs(Carousel, { children: [
|
|
18230
18271
|
/* @__PURE__ */ jsxRuntime.jsx(CarouselContent, { children: renderCarouselItems() }),
|
|
18231
18272
|
/* @__PURE__ */ jsxRuntime.jsx(CarouselPrevious, {}),
|
|
@@ -18239,6 +18280,7 @@ function CarouselFullscreenScrollFx({
|
|
|
18239
18280
|
slides,
|
|
18240
18281
|
slidesSlot,
|
|
18241
18282
|
className,
|
|
18283
|
+
containerClassName = "h-full flex flex-col justify-center",
|
|
18242
18284
|
navigationClassName,
|
|
18243
18285
|
contentClassName,
|
|
18244
18286
|
subtitleClassName,
|
|
@@ -18247,10 +18289,11 @@ function CarouselFullscreenScrollFx({
|
|
|
18247
18289
|
scrollIndicatorClassName,
|
|
18248
18290
|
counterClassName,
|
|
18249
18291
|
optixFlowConfig,
|
|
18250
|
-
background = "
|
|
18251
|
-
spacing = "
|
|
18252
|
-
|
|
18253
|
-
|
|
18292
|
+
background = "dark",
|
|
18293
|
+
spacing = "py-0",
|
|
18294
|
+
containerMaxWidth = "full",
|
|
18295
|
+
pattern = "diagonalCrossBasic",
|
|
18296
|
+
patternOpacity = 0.033
|
|
18254
18297
|
}) {
|
|
18255
18298
|
const containerRef = React52__namespace.useRef(null);
|
|
18256
18299
|
const [activeIndex, setActiveIndex] = React52__namespace.useState(0);
|
|
@@ -18286,27 +18329,41 @@ function CarouselFullscreenScrollFx({
|
|
|
18286
18329
|
className: cn(className),
|
|
18287
18330
|
pattern,
|
|
18288
18331
|
patternOpacity,
|
|
18332
|
+
containerMaxWidth,
|
|
18333
|
+
containerClassName,
|
|
18289
18334
|
children: [
|
|
18290
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18291
|
-
"
|
|
18335
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
18336
|
+
"div",
|
|
18292
18337
|
{
|
|
18293
|
-
onClick: () => {
|
|
18294
|
-
const element = document.getElementById(`fullscreen-${slide.id}`);
|
|
18295
|
-
element?.scrollIntoView({ behavior: "smooth" });
|
|
18296
|
-
},
|
|
18297
18338
|
className: cn(
|
|
18298
|
-
"
|
|
18299
|
-
|
|
18339
|
+
"fixed right-6 top-1/2 z-50 hidden -translate-y-1/2 flex-col gap-3 lg:flex",
|
|
18340
|
+
navigationClassName
|
|
18300
18341
|
),
|
|
18301
|
-
|
|
18302
|
-
|
|
18303
|
-
|
|
18304
|
-
|
|
18342
|
+
children: slides?.map((slide, index) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
18343
|
+
"button",
|
|
18344
|
+
{
|
|
18345
|
+
onClick: () => {
|
|
18346
|
+
const element = document.getElementById(`fullscreen-${slide.id}`);
|
|
18347
|
+
element?.scrollIntoView({ behavior: "smooth" });
|
|
18348
|
+
},
|
|
18349
|
+
className: cn(
|
|
18350
|
+
"h-3 w-3 rounded-full border-2 transition-all",
|
|
18351
|
+
activeIndex === index ? "scale-125 border-white bg-white" : "border-white/50 bg-transparent hover:border-white"
|
|
18352
|
+
),
|
|
18353
|
+
"aria-label": `Go to ${typeof slide.title === "string" ? slide.title : `Slide ${index + 1}`}`
|
|
18354
|
+
},
|
|
18355
|
+
slide.id
|
|
18356
|
+
))
|
|
18357
|
+
}
|
|
18358
|
+
),
|
|
18305
18359
|
slidesSlot ? slidesSlot : slides?.map((slide, index) => /* @__PURE__ */ jsxRuntime.jsxs(
|
|
18306
18360
|
"div",
|
|
18307
18361
|
{
|
|
18308
18362
|
id: `fullscreen-${slide.id}`,
|
|
18309
|
-
className: cn(
|
|
18363
|
+
className: cn(
|
|
18364
|
+
"relative flex h-screen w-full items-center justify-center overflow-hidden",
|
|
18365
|
+
slide.className
|
|
18366
|
+
),
|
|
18310
18367
|
children: [
|
|
18311
18368
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "absolute inset-0", children: [
|
|
18312
18369
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -18314,7 +18371,10 @@ function CarouselFullscreenScrollFx({
|
|
|
18314
18371
|
{
|
|
18315
18372
|
src: slide.image,
|
|
18316
18373
|
alt: typeof slide.title === "string" ? slide.title : `Slide ${index + 1}`,
|
|
18317
|
-
className: cn(
|
|
18374
|
+
className: cn(
|
|
18375
|
+
"h-full w-full object-cover",
|
|
18376
|
+
slide.imageClassName
|
|
18377
|
+
),
|
|
18318
18378
|
optixFlowConfig
|
|
18319
18379
|
}
|
|
18320
18380
|
),
|
|
@@ -18328,21 +18388,75 @@ function CarouselFullscreenScrollFx({
|
|
|
18328
18388
|
}
|
|
18329
18389
|
)
|
|
18330
18390
|
] }),
|
|
18331
|
-
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
18332
|
-
|
|
18333
|
-
|
|
18334
|
-
|
|
18335
|
-
|
|
18336
|
-
|
|
18337
|
-
|
|
18338
|
-
|
|
18339
|
-
|
|
18340
|
-
|
|
18341
|
-
|
|
18342
|
-
|
|
18343
|
-
|
|
18344
|
-
|
|
18345
|
-
|
|
18391
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
18392
|
+
"div",
|
|
18393
|
+
{
|
|
18394
|
+
className: cn(
|
|
18395
|
+
"relative z-10 mx-auto max-w-4xl md:max-w-2xl px-6 text-center text-white text-shadow",
|
|
18396
|
+
contentClassName
|
|
18397
|
+
),
|
|
18398
|
+
children: [
|
|
18399
|
+
slide.subtitle && (typeof slide.subtitle === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
18400
|
+
"p",
|
|
18401
|
+
{
|
|
18402
|
+
className: cn(
|
|
18403
|
+
"mb-4 text-sm font-medium uppercase tracking-widest text-white/70",
|
|
18404
|
+
subtitleClassName
|
|
18405
|
+
),
|
|
18406
|
+
children: slide.subtitle
|
|
18407
|
+
}
|
|
18408
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: subtitleClassName, children: slide.subtitle })),
|
|
18409
|
+
slide.title && (typeof slide.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
18410
|
+
"h2",
|
|
18411
|
+
{
|
|
18412
|
+
className: cn(
|
|
18413
|
+
"mb-6 text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl",
|
|
18414
|
+
titleClassName
|
|
18415
|
+
),
|
|
18416
|
+
children: slide.title
|
|
18417
|
+
}
|
|
18418
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: titleClassName, children: slide.title })),
|
|
18419
|
+
slide.description && (typeof slide.description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
18420
|
+
"p",
|
|
18421
|
+
{
|
|
18422
|
+
className: cn(
|
|
18423
|
+
"mx-auto text-lg text-white/80 md:text-xl text-balance",
|
|
18424
|
+
descriptionClassName
|
|
18425
|
+
),
|
|
18426
|
+
children: slide.description
|
|
18427
|
+
}
|
|
18428
|
+
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: slide.description }))
|
|
18429
|
+
]
|
|
18430
|
+
}
|
|
18431
|
+
),
|
|
18432
|
+
index < (slides?.length ?? 0) - 1 && /* @__PURE__ */ jsxRuntime.jsx(
|
|
18433
|
+
"div",
|
|
18434
|
+
{
|
|
18435
|
+
className: cn(
|
|
18436
|
+
"absolute bottom-8 left-1/2 -translate-x-1/2",
|
|
18437
|
+
scrollIndicatorClassName
|
|
18438
|
+
),
|
|
18439
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-2", children: [
|
|
18440
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs uppercase tracking-widest text-white/50", children: "Scroll" }),
|
|
18441
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-12 w-px animate-pulse bg-linear-to-b from-white/50 to-transparent" })
|
|
18442
|
+
] })
|
|
18443
|
+
}
|
|
18444
|
+
),
|
|
18445
|
+
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
18446
|
+
"div",
|
|
18447
|
+
{
|
|
18448
|
+
className: cn(
|
|
18449
|
+
"absolute bottom-8 right-8 text-sm text-white/50",
|
|
18450
|
+
counterClassName
|
|
18451
|
+
),
|
|
18452
|
+
children: [
|
|
18453
|
+
String(index + 1).padStart(2, "0"),
|
|
18454
|
+
" /",
|
|
18455
|
+
" ",
|
|
18456
|
+
String(slides?.length ?? 0).padStart(2, "0")
|
|
18457
|
+
]
|
|
18458
|
+
}
|
|
18459
|
+
)
|
|
18346
18460
|
]
|
|
18347
18461
|
},
|
|
18348
18462
|
slide.id
|
|
@@ -76828,7 +76942,7 @@ function ListSearchableGrid({
|
|
|
76828
76942
|
}
|
|
76829
76943
|
);
|
|
76830
76944
|
}
|
|
76831
|
-
var { useMemo:
|
|
76945
|
+
var { useMemo: useMemo440 } = React52__namespace;
|
|
76832
76946
|
function OfferModalNewsletterDiscount({
|
|
76833
76947
|
title,
|
|
76834
76948
|
emailPlaceholder,
|
|
@@ -76895,7 +77009,7 @@ function OfferModalNewsletterDiscount({
|
|
|
76895
77009
|
});
|
|
76896
77010
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
76897
77011
|
const dialogProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
76898
|
-
const renderCloseButton =
|
|
77012
|
+
const renderCloseButton = useMemo440(() => {
|
|
76899
77013
|
if (closeButtonSlot) return closeButtonSlot;
|
|
76900
77014
|
if (!closeButtonText) return null;
|
|
76901
77015
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute end-1.5 top-1.5", children: /* @__PURE__ */ jsxRuntime.jsx(DialogClose, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -76909,12 +77023,12 @@ function OfferModalNewsletterDiscount({
|
|
|
76909
77023
|
}
|
|
76910
77024
|
) }) });
|
|
76911
77025
|
}, [closeButtonSlot, closeButtonText, closeClassName]);
|
|
76912
|
-
const renderHeader =
|
|
77026
|
+
const renderHeader = useMemo440(() => {
|
|
76913
77027
|
if (headerSlot) return headerSlot;
|
|
76914
77028
|
if (!title) return null;
|
|
76915
77029
|
return /* @__PURE__ */ jsxRuntime.jsx(DialogHeader, { className: headerClassName, children: typeof title === "string" ? /* @__PURE__ */ jsxRuntime.jsx(DialogTitle, { className: cn("text-start font-serif text-2xl font-normal leading-snug", titleClassName), children: title }) : /* @__PURE__ */ jsxRuntime.jsx(DialogTitle, { className: cn("text-start font-serif text-2xl font-normal leading-snug", titleClassName), children: title }) });
|
|
76916
77030
|
}, [headerSlot, title, headerClassName, titleClassName]);
|
|
76917
|
-
const renderForm =
|
|
77031
|
+
const renderForm = useMemo440(() => {
|
|
76918
77032
|
if (formSlot) return formSlot;
|
|
76919
77033
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
76920
77034
|
forms.Form,
|
|
@@ -76976,7 +77090,7 @@ function OfferModalNewsletterDiscount({
|
|
|
76976
77090
|
}
|
|
76977
77091
|
) });
|
|
76978
77092
|
}
|
|
76979
|
-
var { useMemo:
|
|
77093
|
+
var { useMemo: useMemo441 } = React52__namespace;
|
|
76980
77094
|
function OfferModalMembershipImage({
|
|
76981
77095
|
overline,
|
|
76982
77096
|
title,
|
|
@@ -77052,7 +77166,7 @@ function OfferModalMembershipImage({
|
|
|
77052
77166
|
});
|
|
77053
77167
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
77054
77168
|
const dialogProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
77055
|
-
const renderImage =
|
|
77169
|
+
const renderImage = useMemo441(() => {
|
|
77056
77170
|
if (imageSlot) return imageSlot;
|
|
77057
77171
|
if (!image) return null;
|
|
77058
77172
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("max-h-[290px] h-full overflow-hidden max-lg:hidden", imageWrapperClassName), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -77065,7 +77179,7 @@ function OfferModalMembershipImage({
|
|
|
77065
77179
|
}
|
|
77066
77180
|
) });
|
|
77067
77181
|
}, [imageSlot, image, imageWrapperClassName, imageClassName, optixFlowConfig]);
|
|
77068
|
-
const renderCloseButton =
|
|
77182
|
+
const renderCloseButton = useMemo441(() => {
|
|
77069
77183
|
if (closeButtonSlot) return closeButtonSlot;
|
|
77070
77184
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute -end-px -top-px z-10", children: /* @__PURE__ */ jsxRuntime.jsx(DialogClose, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
77071
77185
|
Pressable,
|
|
@@ -77081,7 +77195,7 @@ function OfferModalMembershipImage({
|
|
|
77081
77195
|
}
|
|
77082
77196
|
) }) });
|
|
77083
77197
|
}, [closeButtonSlot, closeClassName]);
|
|
77084
|
-
const renderForm =
|
|
77198
|
+
const renderForm = useMemo441(() => {
|
|
77085
77199
|
if (formSlot) return formSlot;
|
|
77086
77200
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
77087
77201
|
forms.Form,
|
|
@@ -77144,7 +77258,7 @@ function OfferModalMembershipImage({
|
|
|
77144
77258
|
}
|
|
77145
77259
|
);
|
|
77146
77260
|
}, [formSlot, form, formConfig, formMethod, emailPlaceholder, inputClassName, submitClassName, buttonText, formClassName]);
|
|
77147
|
-
const renderFooter =
|
|
77261
|
+
const renderFooter = useMemo441(() => {
|
|
77148
77262
|
if (footerSlot) return footerSlot;
|
|
77149
77263
|
if (!description) return null;
|
|
77150
77264
|
return /* @__PURE__ */ jsxRuntime.jsx(DialogFooter, { className: footerClassName, children: /* @__PURE__ */ jsxRuntime.jsx(DialogDescription, { className: cn("text-muted-foreground text-center text-xs leading-relaxed", descriptionClassName), children: description }) });
|
|
@@ -77172,7 +77286,7 @@ function OfferModalMembershipImage({
|
|
|
77172
77286
|
}
|
|
77173
77287
|
) });
|
|
77174
77288
|
}
|
|
77175
|
-
var { useMemo:
|
|
77289
|
+
var { useMemo: useMemo442 } = React52__namespace;
|
|
77176
77290
|
function OfferModalSheetNewsletter({
|
|
77177
77291
|
logo,
|
|
77178
77292
|
logoSlot,
|
|
@@ -77254,7 +77368,7 @@ function OfferModalSheetNewsletter({
|
|
|
77254
77368
|
});
|
|
77255
77369
|
const formMethod = formConfig?.method?.toLowerCase() === "get" ? "get" : "post";
|
|
77256
77370
|
const sheetProps = open !== void 0 ? { open, onOpenChange } : { defaultOpen };
|
|
77257
|
-
const renderLogo =
|
|
77371
|
+
const renderLogo = useMemo442(() => {
|
|
77258
77372
|
if (logoSlot) return logoSlot;
|
|
77259
77373
|
if (!logo) return null;
|
|
77260
77374
|
const logoSrc = typeof logo.src === "string" ? logo.src : logo.src.light;
|
|
@@ -77268,7 +77382,7 @@ function OfferModalSheetNewsletter({
|
|
|
77268
77382
|
}
|
|
77269
77383
|
);
|
|
77270
77384
|
}, [logoSlot, logo, logoClassName, optixFlowConfig]);
|
|
77271
|
-
const renderHeader =
|
|
77385
|
+
const renderHeader = useMemo442(() => {
|
|
77272
77386
|
if (headerSlot) return headerSlot;
|
|
77273
77387
|
return /* @__PURE__ */ jsxRuntime.jsxs(SheetHeader, { className: cn("gap-8 p-0", headerClassName), children: [
|
|
77274
77388
|
renderLogo,
|
|
@@ -77278,7 +77392,7 @@ function OfferModalSheetNewsletter({
|
|
|
77278
77392
|
] })
|
|
77279
77393
|
] });
|
|
77280
77394
|
}, [headerSlot, renderLogo, headerClassName, title, titleClassName, description, descriptionClassName]);
|
|
77281
|
-
const renderForm =
|
|
77395
|
+
const renderForm = useMemo442(() => {
|
|
77282
77396
|
if (formSlot) return formSlot;
|
|
77283
77397
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
77284
77398
|
forms.Form,
|
|
@@ -77326,7 +77440,7 @@ function OfferModalSheetNewsletter({
|
|
|
77326
77440
|
}
|
|
77327
77441
|
);
|
|
77328
77442
|
}, [formSlot, form, formConfig, formMethod, emailPlaceholder, inputClassName, submitClassName, buttonText, formClassName]);
|
|
77329
|
-
const renderLegal =
|
|
77443
|
+
const renderLegal = useMemo442(() => {
|
|
77330
77444
|
if (legalSlot) return legalSlot;
|
|
77331
77445
|
if (!termsUrl || !termsText || !privacyUrl || !privacyText) return null;
|
|
77332
77446
|
return /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn("text-muted-foreground text-xs", legalClassName), children: [
|
|
@@ -77340,7 +77454,7 @@ function OfferModalSheetNewsletter({
|
|
|
77340
77454
|
"."
|
|
77341
77455
|
] });
|
|
77342
77456
|
}, [legalSlot, termsUrl, termsText, privacyUrl, privacyText, legalClassName]);
|
|
77343
|
-
const renderImage =
|
|
77457
|
+
const renderImage = useMemo442(() => {
|
|
77344
77458
|
if (imageSlot) return imageSlot;
|
|
77345
77459
|
if (!image) return null;
|
|
77346
77460
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("h-1/2 basis-1/2", imageWrapperClassName), children: /* @__PURE__ */ jsxRuntime.jsx(AspectRatio, { ratio: 1, className: "overflow-hidden", children: /* @__PURE__ */ jsxRuntime.jsx(
|