@opensite/ui 3.4.3 → 3.4.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.
@@ -401,6 +401,12 @@ var Section = React__default.forwardRef(
401
401
  }
402
402
  );
403
403
  Section.displayName = "Section";
404
+ function isRenderableNode(value) {
405
+ return value !== null && value !== void 0 && typeof value !== "boolean" && !(typeof value === "string" && value.trim().length === 0);
406
+ }
407
+ function firstRenderableNode(...values) {
408
+ return values.find(isRenderableNode);
409
+ }
404
410
  function FeatureChecklistImage({
405
411
  sectionId = "feature-checklist-image",
406
412
  title,
@@ -413,9 +419,10 @@ function FeatureChecklistImage({
413
419
  actions,
414
420
  actionsSlot,
415
421
  checklistItems,
422
+ benefits,
416
423
  checklistSlot,
417
424
  className,
418
- containerClassName = "px-6 sm:px-6 md:px-6 lg:px-8",
425
+ containerClassName = "max-w-screen-2xl px-6 sm:px-6 md:px-6 lg:px-8",
419
426
  contentWrapperClassName,
420
427
  imageClassName,
421
428
  contentClassName,
@@ -472,33 +479,69 @@ function FeatureChecklistImage({
472
479
  if (imageSlot) return imageSlot;
473
480
  if (!imageSrc) return null;
474
481
  return /* @__PURE__ */ jsx(
475
- Img,
482
+ "div",
476
483
  {
477
- src: imageSrc,
478
- alt: imageAlt || "Feature illustration",
479
484
  className: cn(
480
- "max-h-96 w-full rounded-lg object-cover md:max-h-[500px] md:w-1/2 shadow-xl",
485
+ "relative aspect-[3/2] w-full overflow-hidden rounded-lg shadow-xl",
481
486
  imageClassName
482
487
  ),
483
- loading: "lazy",
484
- optixFlowConfig
488
+ children: /* @__PURE__ */ jsx(
489
+ Img,
490
+ {
491
+ src: imageSrc,
492
+ alt: imageAlt || "Feature illustration",
493
+ className: cn(
494
+ "block h-full w-full object-cover object-center",
495
+ imageClassName
496
+ ),
497
+ loading: "lazy",
498
+ optixFlowConfig
499
+ }
500
+ )
485
501
  }
486
502
  );
487
503
  }, [imageSlot, imageSrc, imageAlt, imageClassName, optixFlowConfig]);
488
504
  const checklistContent = useMemo(() => {
489
505
  if (checklistSlot) return checklistSlot;
490
- if (!checklistItems || checklistItems.length === 0) return null;
491
- return checklistItems.map((item, index) => {
506
+ const items = checklistItems ?? benefits;
507
+ if (!items || items.length === 0) return null;
508
+ const renderedItems = [];
509
+ items.forEach((item, index) => {
492
510
  const isString = typeof item === "string";
493
- const content = isString ? item : item.content;
494
- const iconElement = isString ? /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-check-big", size: 16 }) : item.icon ?? (item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 16 }) : /* @__PURE__ */ jsx(DynamicIcon, { name: "lucide/circle-check-big", size: 16 }));
511
+ const content = isString ? item : firstRenderableNode(item.content, item.text, item.label);
512
+ const title2 = isString ? void 0 : item.title;
513
+ const description2 = isString ? void 0 : item.description;
514
+ if (!isRenderableNode(content) && !isRenderableNode(title2) && !isRenderableNode(description2)) {
515
+ return;
516
+ }
517
+ const iconElement = isString ? /* @__PURE__ */ jsx(
518
+ DynamicIcon,
519
+ {
520
+ name: "lucide/circle-check-big",
521
+ size: 20,
522
+ className: "h-5 w-5"
523
+ }
524
+ ) : item.icon ?? (item.iconName ? /* @__PURE__ */ jsx(DynamicIcon, { name: item.iconName, size: 20, className: "h-5 w-5" }) : /* @__PURE__ */ jsx(
525
+ DynamicIcon,
526
+ {
527
+ name: "lucide/circle-check-big",
528
+ size: 20,
529
+ className: "h-5 w-5"
530
+ }
531
+ ));
495
532
  const itemClassName = isString ? void 0 : item.className;
496
- return /* @__PURE__ */ jsxs("li", { className: cn("flex items-start gap-3", itemClassName), children: [
497
- /* @__PURE__ */ jsx("div", { className: "mt-1", children: iconElement }),
498
- content
499
- ] }, index);
533
+ renderedItems.push(
534
+ /* @__PURE__ */ jsxs("li", { className: cn("flex items-start gap-3", itemClassName), children: [
535
+ /* @__PURE__ */ jsx("div", { className: "mt-1 flex h-5 w-5 shrink-0 items-center justify-center", children: iconElement }),
536
+ isRenderableNode(content) ? typeof content === "string" ? /* @__PURE__ */ jsx("span", { className: "text-base font-medium leading-relaxed md:text-lg", children: content }) : /* @__PURE__ */ jsx("div", { className: "min-w-0 text-base font-medium leading-relaxed md:text-lg", children: content }) : /* @__PURE__ */ jsxs("div", { className: "min-w-0", children: [
537
+ isRenderableNode(title2) && (typeof title2 === "string" ? /* @__PURE__ */ jsx("h3", { className: "text-base font-semibold leading-snug md:text-lg", children: title2 }) : /* @__PURE__ */ jsx("div", { className: "text-base font-semibold leading-snug md:text-lg", children: title2 })),
538
+ isRenderableNode(description2) && (typeof description2 === "string" ? /* @__PURE__ */ jsx("p", { className: "mt-1 text-sm leading-relaxed text-current/75 md:text-base", children: description2 }) : /* @__PURE__ */ jsx("div", { className: "mt-1 text-sm leading-relaxed text-current/75 md:text-base", children: description2 }))
539
+ ] })
540
+ ] }, index)
541
+ );
500
542
  });
501
- }, [checklistSlot, checklistItems]);
543
+ return renderedItems.length > 0 ? renderedItems : null;
544
+ }, [checklistSlot, checklistItems, benefits]);
502
545
  return /* @__PURE__ */ jsx(
503
546
  Section,
504
547
  {
@@ -514,7 +557,8 @@ function FeatureChecklistImage({
514
557
  "div",
515
558
  {
516
559
  className: cn(
517
- "flex flex-col gap-6 md:gap-12 md:flex-row",
560
+ "grid gap-8 md:gap-12 lg:items-center",
561
+ imageContent ? "lg:grid-cols-2" : "lg:grid-cols-1",
518
562
  contentWrapperClassName
519
563
  ),
520
564
  children: [
@@ -523,7 +567,8 @@ function FeatureChecklistImage({
523
567
  "div",
524
568
  {
525
569
  className: cn(
526
- "px-0 md:px-6 lg:px-10 py-4 md:py-0 flex flex-col gap-6 md:gap-10",
570
+ "flex min-w-0 flex-col gap-6 py-2 md:gap-8 md:py-0 lg:gap-10",
571
+ imageContent && "lg:pl-8",
527
572
  contentClassName
528
573
  ),
529
574
  children: [
@@ -531,7 +576,7 @@ function FeatureChecklistImage({
531
576
  "h2",
532
577
  {
533
578
  className: cn(
534
- "text-xl font-semibold text-balance md:text-2xl lg:text-3xl",
579
+ "text-2xl font-semibold text-balance sm:text-3xl lg:text-4xl",
535
580
  titleClassName
536
581
  ),
537
582
  children: title
@@ -540,18 +585,36 @@ function FeatureChecklistImage({
540
585
  "div",
541
586
  {
542
587
  className: cn(
543
- "text-xl font-semibold text-balance md:text-2xl lg:text-3xl",
588
+ "text-2xl font-semibold text-balance sm:text-3xl lg:text-4xl",
544
589
  titleClassName
545
590
  ),
546
591
  children: title
547
592
  }
548
593
  )),
549
- description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("relative", descriptionClassName), children: description }) : /* @__PURE__ */ jsx("div", { className: cn("relative", descriptionClassName), children: description })),
594
+ description && (typeof description === "string" ? /* @__PURE__ */ jsx(
595
+ "p",
596
+ {
597
+ className: cn(
598
+ "relative text-base leading-relaxed md:text-lg",
599
+ descriptionClassName
600
+ ),
601
+ children: description
602
+ }
603
+ ) : /* @__PURE__ */ jsx(
604
+ "div",
605
+ {
606
+ className: cn(
607
+ "relative text-base leading-relaxed md:text-lg",
608
+ descriptionClassName
609
+ ),
610
+ children: description
611
+ }
612
+ )),
550
613
  actionsContent && /* @__PURE__ */ jsx(
551
614
  "div",
552
615
  {
553
616
  className: cn(
554
- "flex flex-wrap items-center gap-4",
617
+ "flex flex-col items-start gap-4 sm:flex-row sm:flex-wrap sm:items-center",
555
618
  actionsClassName
556
619
  ),
557
620
  children: actionsContent
@@ -561,7 +624,7 @@ function FeatureChecklistImage({
561
624
  "ul",
562
625
  {
563
626
  className: cn(
564
- "flex-wrap items-center space-y-2 md:flex",
627
+ "flex flex-col space-y-3 md:space-y-4",
565
628
  checklistClassName
566
629
  ),
567
630
  children: checklistContent
@@ -440,25 +440,6 @@ var slideVariants = {
440
440
  }
441
441
  }
442
442
  };
443
- var fadeVariants = {
444
- initial: {
445
- opacity: 0
446
- },
447
- visible: {
448
- opacity: 1,
449
- transition: {
450
- duration: 0.8,
451
- ease: [0.4, 0, 0.2, 1]
452
- }
453
- },
454
- fadeExit: {
455
- opacity: 0,
456
- transition: {
457
- duration: 0.8,
458
- ease: [0.4, 0, 0.2, 1]
459
- }
460
- }
461
- };
462
443
  var normalizeIndex = (index, length) => {
463
444
  if (!length) return 0;
464
445
  const safeIndex = index % length;
@@ -546,38 +527,55 @@ var ImageSlider = ({
546
527
  perspective: "1000px"
547
528
  },
548
529
  children: [
549
- /* @__PURE__ */ jsxRuntime.jsx(
550
- react.AnimatePresence,
530
+ transition === "fade" ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0", children: images.map((image, index) => /* @__PURE__ */ jsxRuntime.jsx(
531
+ "div",
551
532
  {
552
- mode: transition === "fade" ? "sync" : "wait",
553
- initial: false,
554
- children: activeImage ? /* @__PURE__ */ jsxRuntime.jsx(
555
- react.motion.div,
533
+ "aria-hidden": index !== currentIndex,
534
+ className: cn(
535
+ "absolute inset-0 opacity-0 transition-opacity duration-1000 ease-in-out motion-reduce:transition-none",
536
+ index === currentIndex && "opacity-100"
537
+ ),
538
+ children: /* @__PURE__ */ jsxRuntime.jsx(
539
+ img.Img,
556
540
  {
557
- initial: "initial",
558
- animate: "visible",
559
- exit: transition === "fade" ? "fadeExit" : direction === "up" ? "upExit" : "downExit",
560
- variants: transition === "fade" ? fadeVariants : slideVariants,
561
- className: "absolute inset-0",
562
- children: /* @__PURE__ */ jsxRuntime.jsx(
563
- img.Img,
564
- {
565
- src: activeImage.src,
566
- alt: activeImage.alt,
567
- className: cn(
568
- "h-full w-full object-cover object-center",
569
- imageClassName,
570
- activeImage.className
571
- ),
572
- optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
573
- loading: "eager"
574
- }
575
- )
576
- },
577
- `${currentIndex}-${activeImage.src ?? "image"}`
578
- ) : null
579
- }
580
- ),
541
+ src: image.src,
542
+ alt: image.alt,
543
+ className: cn(
544
+ "h-full w-full object-cover object-center",
545
+ imageClassName,
546
+ image.className
547
+ ),
548
+ optixFlowConfig: image.optixFlowConfig ?? optixFlowConfig,
549
+ loading: "eager"
550
+ }
551
+ )
552
+ },
553
+ `${image.src ?? "image"}-${index}`
554
+ )) }) : /* @__PURE__ */ jsxRuntime.jsx(react.AnimatePresence, { mode: "wait", initial: false, children: activeImage ? /* @__PURE__ */ jsxRuntime.jsx(
555
+ react.motion.div,
556
+ {
557
+ initial: "initial",
558
+ animate: "visible",
559
+ exit: direction === "up" ? "upExit" : "downExit",
560
+ variants: slideVariants,
561
+ className: "absolute inset-0",
562
+ children: /* @__PURE__ */ jsxRuntime.jsx(
563
+ img.Img,
564
+ {
565
+ src: activeImage.src,
566
+ alt: activeImage.alt,
567
+ className: cn(
568
+ "h-full w-full object-cover object-center",
569
+ imageClassName,
570
+ activeImage.className
571
+ ),
572
+ optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
573
+ loading: "eager"
574
+ }
575
+ )
576
+ },
577
+ `${currentIndex}-${activeImage.src ?? "image"}`
578
+ ) : null }),
581
579
  overlayContent,
582
580
  children ? /* @__PURE__ */ jsxRuntime.jsx(
583
581
  "div",
@@ -419,25 +419,6 @@ var slideVariants = {
419
419
  }
420
420
  }
421
421
  };
422
- var fadeVariants = {
423
- initial: {
424
- opacity: 0
425
- },
426
- visible: {
427
- opacity: 1,
428
- transition: {
429
- duration: 0.8,
430
- ease: [0.4, 0, 0.2, 1]
431
- }
432
- },
433
- fadeExit: {
434
- opacity: 0,
435
- transition: {
436
- duration: 0.8,
437
- ease: [0.4, 0, 0.2, 1]
438
- }
439
- }
440
- };
441
422
  var normalizeIndex = (index, length) => {
442
423
  if (!length) return 0;
443
424
  const safeIndex = index % length;
@@ -525,38 +506,55 @@ var ImageSlider = ({
525
506
  perspective: "1000px"
526
507
  },
527
508
  children: [
528
- /* @__PURE__ */ jsx(
529
- AnimatePresence,
509
+ transition === "fade" ? /* @__PURE__ */ jsx("div", { className: "absolute inset-0", children: images.map((image, index) => /* @__PURE__ */ jsx(
510
+ "div",
530
511
  {
531
- mode: transition === "fade" ? "sync" : "wait",
532
- initial: false,
533
- children: activeImage ? /* @__PURE__ */ jsx(
534
- motion.div,
512
+ "aria-hidden": index !== currentIndex,
513
+ className: cn(
514
+ "absolute inset-0 opacity-0 transition-opacity duration-1000 ease-in-out motion-reduce:transition-none",
515
+ index === currentIndex && "opacity-100"
516
+ ),
517
+ children: /* @__PURE__ */ jsx(
518
+ Img,
535
519
  {
536
- initial: "initial",
537
- animate: "visible",
538
- exit: transition === "fade" ? "fadeExit" : direction === "up" ? "upExit" : "downExit",
539
- variants: transition === "fade" ? fadeVariants : slideVariants,
540
- className: "absolute inset-0",
541
- children: /* @__PURE__ */ jsx(
542
- Img,
543
- {
544
- src: activeImage.src,
545
- alt: activeImage.alt,
546
- className: cn(
547
- "h-full w-full object-cover object-center",
548
- imageClassName,
549
- activeImage.className
550
- ),
551
- optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
552
- loading: "eager"
553
- }
554
- )
555
- },
556
- `${currentIndex}-${activeImage.src ?? "image"}`
557
- ) : null
558
- }
559
- ),
520
+ src: image.src,
521
+ alt: image.alt,
522
+ className: cn(
523
+ "h-full w-full object-cover object-center",
524
+ imageClassName,
525
+ image.className
526
+ ),
527
+ optixFlowConfig: image.optixFlowConfig ?? optixFlowConfig,
528
+ loading: "eager"
529
+ }
530
+ )
531
+ },
532
+ `${image.src ?? "image"}-${index}`
533
+ )) }) : /* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", initial: false, children: activeImage ? /* @__PURE__ */ jsx(
534
+ motion.div,
535
+ {
536
+ initial: "initial",
537
+ animate: "visible",
538
+ exit: direction === "up" ? "upExit" : "downExit",
539
+ variants: slideVariants,
540
+ className: "absolute inset-0",
541
+ children: /* @__PURE__ */ jsx(
542
+ Img,
543
+ {
544
+ src: activeImage.src,
545
+ alt: activeImage.alt,
546
+ className: cn(
547
+ "h-full w-full object-cover object-center",
548
+ imageClassName,
549
+ activeImage.className
550
+ ),
551
+ optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
552
+ loading: "eager"
553
+ }
554
+ )
555
+ },
556
+ `${currentIndex}-${activeImage.src ?? "image"}`
557
+ ) : null }),
560
558
  overlayContent,
561
559
  children ? /* @__PURE__ */ jsx(
562
560
  "div",
@@ -61,25 +61,6 @@ var slideVariants = {
61
61
  }
62
62
  }
63
63
  };
64
- var fadeVariants = {
65
- initial: {
66
- opacity: 0
67
- },
68
- visible: {
69
- opacity: 1,
70
- transition: {
71
- duration: 0.8,
72
- ease: [0.4, 0, 0.2, 1]
73
- }
74
- },
75
- fadeExit: {
76
- opacity: 0,
77
- transition: {
78
- duration: 0.8,
79
- ease: [0.4, 0, 0.2, 1]
80
- }
81
- }
82
- };
83
64
  var normalizeIndex = (index, length) => {
84
65
  if (!length) return 0;
85
66
  const safeIndex = index % length;
@@ -167,38 +148,55 @@ var ImageSlider = ({
167
148
  perspective: "1000px"
168
149
  },
169
150
  children: [
170
- /* @__PURE__ */ jsxRuntime.jsx(
171
- react.AnimatePresence,
151
+ transition === "fade" ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "absolute inset-0", children: images.map((image, index) => /* @__PURE__ */ jsxRuntime.jsx(
152
+ "div",
172
153
  {
173
- mode: transition === "fade" ? "sync" : "wait",
174
- initial: false,
175
- children: activeImage ? /* @__PURE__ */ jsxRuntime.jsx(
176
- react.motion.div,
154
+ "aria-hidden": index !== currentIndex,
155
+ className: cn(
156
+ "absolute inset-0 opacity-0 transition-opacity duration-1000 ease-in-out motion-reduce:transition-none",
157
+ index === currentIndex && "opacity-100"
158
+ ),
159
+ children: /* @__PURE__ */ jsxRuntime.jsx(
160
+ img.Img,
177
161
  {
178
- initial: "initial",
179
- animate: "visible",
180
- exit: transition === "fade" ? "fadeExit" : direction === "up" ? "upExit" : "downExit",
181
- variants: transition === "fade" ? fadeVariants : slideVariants,
182
- className: "absolute inset-0",
183
- children: /* @__PURE__ */ jsxRuntime.jsx(
184
- img.Img,
185
- {
186
- src: activeImage.src,
187
- alt: activeImage.alt,
188
- className: cn(
189
- "h-full w-full object-cover object-center",
190
- imageClassName,
191
- activeImage.className
192
- ),
193
- optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
194
- loading: "eager"
195
- }
196
- )
197
- },
198
- `${currentIndex}-${activeImage.src ?? "image"}`
199
- ) : null
200
- }
201
- ),
162
+ src: image.src,
163
+ alt: image.alt,
164
+ className: cn(
165
+ "h-full w-full object-cover object-center",
166
+ imageClassName,
167
+ image.className
168
+ ),
169
+ optixFlowConfig: image.optixFlowConfig ?? optixFlowConfig,
170
+ loading: "eager"
171
+ }
172
+ )
173
+ },
174
+ `${image.src ?? "image"}-${index}`
175
+ )) }) : /* @__PURE__ */ jsxRuntime.jsx(react.AnimatePresence, { mode: "wait", initial: false, children: activeImage ? /* @__PURE__ */ jsxRuntime.jsx(
176
+ react.motion.div,
177
+ {
178
+ initial: "initial",
179
+ animate: "visible",
180
+ exit: direction === "up" ? "upExit" : "downExit",
181
+ variants: slideVariants,
182
+ className: "absolute inset-0",
183
+ children: /* @__PURE__ */ jsxRuntime.jsx(
184
+ img.Img,
185
+ {
186
+ src: activeImage.src,
187
+ alt: activeImage.alt,
188
+ className: cn(
189
+ "h-full w-full object-cover object-center",
190
+ imageClassName,
191
+ activeImage.className
192
+ ),
193
+ optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
194
+ loading: "eager"
195
+ }
196
+ )
197
+ },
198
+ `${currentIndex}-${activeImage.src ?? "image"}`
199
+ ) : null }),
202
200
  overlayContent,
203
201
  children ? /* @__PURE__ */ jsxRuntime.jsx(
204
202
  "div",
@@ -39,25 +39,6 @@ var slideVariants = {
39
39
  }
40
40
  }
41
41
  };
42
- var fadeVariants = {
43
- initial: {
44
- opacity: 0
45
- },
46
- visible: {
47
- opacity: 1,
48
- transition: {
49
- duration: 0.8,
50
- ease: [0.4, 0, 0.2, 1]
51
- }
52
- },
53
- fadeExit: {
54
- opacity: 0,
55
- transition: {
56
- duration: 0.8,
57
- ease: [0.4, 0, 0.2, 1]
58
- }
59
- }
60
- };
61
42
  var normalizeIndex = (index, length) => {
62
43
  if (!length) return 0;
63
44
  const safeIndex = index % length;
@@ -145,38 +126,55 @@ var ImageSlider = ({
145
126
  perspective: "1000px"
146
127
  },
147
128
  children: [
148
- /* @__PURE__ */ jsx(
149
- AnimatePresence,
129
+ transition === "fade" ? /* @__PURE__ */ jsx("div", { className: "absolute inset-0", children: images.map((image, index) => /* @__PURE__ */ jsx(
130
+ "div",
150
131
  {
151
- mode: transition === "fade" ? "sync" : "wait",
152
- initial: false,
153
- children: activeImage ? /* @__PURE__ */ jsx(
154
- motion.div,
132
+ "aria-hidden": index !== currentIndex,
133
+ className: cn(
134
+ "absolute inset-0 opacity-0 transition-opacity duration-1000 ease-in-out motion-reduce:transition-none",
135
+ index === currentIndex && "opacity-100"
136
+ ),
137
+ children: /* @__PURE__ */ jsx(
138
+ Img,
155
139
  {
156
- initial: "initial",
157
- animate: "visible",
158
- exit: transition === "fade" ? "fadeExit" : direction === "up" ? "upExit" : "downExit",
159
- variants: transition === "fade" ? fadeVariants : slideVariants,
160
- className: "absolute inset-0",
161
- children: /* @__PURE__ */ jsx(
162
- Img,
163
- {
164
- src: activeImage.src,
165
- alt: activeImage.alt,
166
- className: cn(
167
- "h-full w-full object-cover object-center",
168
- imageClassName,
169
- activeImage.className
170
- ),
171
- optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
172
- loading: "eager"
173
- }
174
- )
175
- },
176
- `${currentIndex}-${activeImage.src ?? "image"}`
177
- ) : null
178
- }
179
- ),
140
+ src: image.src,
141
+ alt: image.alt,
142
+ className: cn(
143
+ "h-full w-full object-cover object-center",
144
+ imageClassName,
145
+ image.className
146
+ ),
147
+ optixFlowConfig: image.optixFlowConfig ?? optixFlowConfig,
148
+ loading: "eager"
149
+ }
150
+ )
151
+ },
152
+ `${image.src ?? "image"}-${index}`
153
+ )) }) : /* @__PURE__ */ jsx(AnimatePresence, { mode: "wait", initial: false, children: activeImage ? /* @__PURE__ */ jsx(
154
+ motion.div,
155
+ {
156
+ initial: "initial",
157
+ animate: "visible",
158
+ exit: direction === "up" ? "upExit" : "downExit",
159
+ variants: slideVariants,
160
+ className: "absolute inset-0",
161
+ children: /* @__PURE__ */ jsx(
162
+ Img,
163
+ {
164
+ src: activeImage.src,
165
+ alt: activeImage.alt,
166
+ className: cn(
167
+ "h-full w-full object-cover object-center",
168
+ imageClassName,
169
+ activeImage.className
170
+ ),
171
+ optixFlowConfig: activeImage.optixFlowConfig ?? optixFlowConfig,
172
+ loading: "eager"
173
+ }
174
+ )
175
+ },
176
+ `${currentIndex}-${activeImage.src ?? "image"}`
177
+ ) : null }),
180
178
  overlayContent,
181
179
  children ? /* @__PURE__ */ jsx(
182
180
  "div",