oraculo-ui 0.1.1 → 0.1.2

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/index.mjs CHANGED
@@ -95,6 +95,30 @@ function OraculoSectionTitle({
95
95
  ] });
96
96
  }
97
97
 
98
+ // src/atoms/OraculoCarouselDots/OraculoCarouselDots.tsx
99
+ import { jsx as jsx3 } from "react/jsx-runtime";
100
+ var OraculoCarouselDots = ({
101
+ total,
102
+ active,
103
+ onSelect,
104
+ className = ""
105
+ }) => {
106
+ if (total <= 1) return null;
107
+ const rootClass = ["orc-dots", className].filter(Boolean).join(" ");
108
+ return /* @__PURE__ */ jsx3("div", { className: rootClass, role: "tablist", children: Array.from({ length: total }).map((_, i) => /* @__PURE__ */ jsx3("span", { className: "orc-dots__cell", children: /* @__PURE__ */ jsx3(
109
+ "button",
110
+ {
111
+ type: "button",
112
+ role: "tab",
113
+ "aria-selected": i === active,
114
+ "aria-label": `Ir al slide ${i + 1}`,
115
+ className: "orc-dots__dot" + (i === active ? " orc-dots__dot--active" : ""),
116
+ onClick: () => onSelect == null ? void 0 : onSelect(i)
117
+ }
118
+ ) }, i)) });
119
+ };
120
+ var OraculoCarouselDots_default = OraculoCarouselDots;
121
+
98
122
  // src/molecules/OraculoCarousel/OraculoCarousel.tsx
99
123
  import {
100
124
  useRef,
@@ -106,7 +130,7 @@ import {
106
130
  Splide as SplideRaw,
107
131
  SplideSlide as SplideSlideRaw
108
132
  } from "@splidejs/react-splide";
109
- import { jsx as jsx3 } from "react/jsx-runtime";
133
+ import { jsx as jsx4 } from "react/jsx-runtime";
110
134
  var Splide = SplideRaw;
111
135
  var SplideSlide = SplideSlideRaw;
112
136
  var OraculoCarousel = forwardRef(
@@ -155,7 +179,7 @@ var OraculoCarousel = forwardRef(
155
179
  },
156
180
  [handleMove]
157
181
  );
158
- return /* @__PURE__ */ jsx3("div", { className, style: { width: "100%" }, children: /* @__PURE__ */ jsx3(
182
+ return /* @__PURE__ */ jsx4("div", { className, style: { width: "100%" }, children: /* @__PURE__ */ jsx4(
159
183
  Splide,
160
184
  {
161
185
  ref: splideRef,
@@ -177,7 +201,7 @@ var OraculoCarousel = forwardRef(
177
201
  onMounted: handleMounted,
178
202
  children: items.map((item, index) => {
179
203
  var _a;
180
- return /* @__PURE__ */ jsx3(SplideSlide, { children: renderItem(item, index) }, (_a = item.id) != null ? _a : index);
204
+ return /* @__PURE__ */ jsx4(SplideSlide, { children: renderItem(item, index) }, (_a = item.id) != null ? _a : index);
181
205
  })
182
206
  }
183
207
  ) });
@@ -187,7 +211,7 @@ var OraculoCarousel_default = OraculoCarousel;
187
211
 
188
212
  // src/molecules/OraculoGameRankCard/OraculoGameRankCard.tsx
189
213
  import Box from "@mui/material/Box";
190
- import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
214
+ import { jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
191
215
  function OraculoGameRankCard({
192
216
  imageUrl,
193
217
  orden = 1,
@@ -245,7 +269,7 @@ function OraculoGameRankCard({
245
269
  overflow: "hidden"
246
270
  },
247
271
  children: [
248
- /* @__PURE__ */ jsx4(
272
+ /* @__PURE__ */ jsx5(
249
273
  "img",
250
274
  {
251
275
  src: imageUrl,
@@ -259,7 +283,7 @@ function OraculoGameRankCard({
259
283
  }
260
284
  }
261
285
  ),
262
- /* @__PURE__ */ jsx4(
286
+ /* @__PURE__ */ jsx5(
263
287
  Box,
264
288
  {
265
289
  sx: {
@@ -273,7 +297,7 @@ function OraculoGameRankCard({
273
297
  ]
274
298
  }
275
299
  ),
276
- /* @__PURE__ */ jsx4(
300
+ /* @__PURE__ */ jsx5(
277
301
  Box,
278
302
  {
279
303
  component: "span",
@@ -306,7 +330,7 @@ function OraculoGameRankCard({
306
330
  // src/molecules/OraculoLiveCasinoCard/OraculoLiveCasinoCard.tsx
307
331
  import Box2 from "@mui/material/Box";
308
332
  import Typography from "@mui/material/Typography";
309
- import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
333
+ import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
310
334
  var OraculoLiveCasinoCard = ({
311
335
  logo,
312
336
  provider,
@@ -339,7 +363,7 @@ var OraculoLiveCasinoCard = ({
339
363
  }
340
364
  },
341
365
  children: [
342
- /* @__PURE__ */ jsx5(
366
+ /* @__PURE__ */ jsx6(
343
367
  Box2,
344
368
  {
345
369
  component: "img",
@@ -355,7 +379,7 @@ var OraculoLiveCasinoCard = ({
355
379
  }
356
380
  }
357
381
  ),
358
- /* @__PURE__ */ jsx5(
382
+ /* @__PURE__ */ jsx6(
359
383
  Box2,
360
384
  {
361
385
  className: "orc-live-provider-label",
@@ -369,7 +393,7 @@ var OraculoLiveCasinoCard = ({
369
393
  transition: "opacity .25s ease",
370
394
  pointerEvents: "none"
371
395
  },
372
- children: /* @__PURE__ */ jsx5(
396
+ children: /* @__PURE__ */ jsx6(
373
397
  Typography,
374
398
  {
375
399
  sx: {
@@ -391,14 +415,14 @@ var OraculoLiveCasinoCard_default = OraculoLiveCasinoCard;
391
415
 
392
416
  // src/molecules/OraculoGameCard/OraculoGameCard.tsx
393
417
  import Box3 from "@mui/material/Box";
394
- import { jsx as jsx6 } from "react/jsx-runtime";
418
+ import { jsx as jsx7 } from "react/jsx-runtime";
395
419
  var OraculoGameCard = ({
396
420
  imageUrl,
397
421
  onClick,
398
422
  size = "sm"
399
423
  }) => {
400
424
  const dim = size === "lg" ? { w: 280, h: 352 } : { w: 152, h: 168 };
401
- return /* @__PURE__ */ jsx6(
425
+ return /* @__PURE__ */ jsx7(
402
426
  Box3,
403
427
  {
404
428
  onClick,
@@ -418,7 +442,7 @@ var OraculoGameCard = ({
418
442
  },
419
443
  opacity: 1
420
444
  },
421
- children: /* @__PURE__ */ jsx6(
445
+ children: /* @__PURE__ */ jsx7(
422
446
  "img",
423
447
  {
424
448
  src: imageUrl,
@@ -440,7 +464,7 @@ var OraculoGameCard_default = OraculoGameCard;
440
464
 
441
465
  // src/molecules/OraculoGameSlide/OraculoGameSlide.tsx
442
466
  import Box4 from "@mui/material/Box";
443
- import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
467
+ import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
444
468
  var GAP = 12;
445
469
  var OraculoGameSlide = ({
446
470
  items,
@@ -474,7 +498,7 @@ var OraculoGameSlide = ({
474
498
  justifyItems: "stretch"
475
499
  },
476
500
  children: [
477
- big && /* @__PURE__ */ jsx7(
501
+ big && /* @__PURE__ */ jsx8(
478
502
  Box4,
479
503
  {
480
504
  sx: {
@@ -485,7 +509,7 @@ var OraculoGameSlide = ({
485
509
  borderRadius: 2,
486
510
  "& > *": { width: "100%", height: "100%" }
487
511
  },
488
- children: /* @__PURE__ */ jsx7(
512
+ children: /* @__PURE__ */ jsx8(
489
513
  OraculoGameCard_default,
490
514
  {
491
515
  imageUrl: big.imageUrl,
@@ -495,7 +519,7 @@ var OraculoGameSlide = ({
495
519
  )
496
520
  }
497
521
  ),
498
- smalls.map((it) => /* @__PURE__ */ jsx7(
522
+ smalls.map((it) => /* @__PURE__ */ jsx8(
499
523
  Box4,
500
524
  {
501
525
  sx: {
@@ -505,7 +529,7 @@ var OraculoGameSlide = ({
505
529
  borderRadius: 2,
506
530
  "& > *": { width: "100%", height: "100%" }
507
531
  },
508
- children: /* @__PURE__ */ jsx7(
532
+ children: /* @__PURE__ */ jsx8(
509
533
  OraculoGameCard_default,
510
534
  {
511
535
  imageUrl: it.imageUrl,
@@ -520,7 +544,7 @@ var OraculoGameSlide = ({
520
544
  }
521
545
  );
522
546
  }
523
- return /* @__PURE__ */ jsx7(
547
+ return /* @__PURE__ */ jsx8(
524
548
  Box4,
525
549
  {
526
550
  sx: {
@@ -540,7 +564,7 @@ var OraculoGameSlide = ({
540
564
  "& > *": { width: "100%", height: "100%" }
541
565
  }
542
566
  },
543
- children: items.map((it) => /* @__PURE__ */ jsx7(Box4, { children: /* @__PURE__ */ jsx7(
567
+ children: items.map((it) => /* @__PURE__ */ jsx8(Box4, { children: /* @__PURE__ */ jsx8(
544
568
  OraculoGameCard_default,
545
569
  {
546
570
  imageUrl: it.imageUrl,
@@ -553,6 +577,216 @@ var OraculoGameSlide = ({
553
577
  };
554
578
  var OraculoGameSlide_default = OraculoGameSlide;
555
579
 
580
+ // src/molecules/OraculoWelcomeBanner/OraculoWelcomeBanner.tsx
581
+ import Box5 from "@mui/material/Box";
582
+ import Typography2 from "@mui/material/Typography";
583
+ import { jsx as jsx9, jsxs as jsxs6 } from "react/jsx-runtime";
584
+ var OraculoWelcomeBanner = ({
585
+ title,
586
+ amount,
587
+ subtitle,
588
+ buttonText,
589
+ onButtonClick,
590
+ backgroundImage,
591
+ alt,
592
+ className = "",
593
+ variant = "small"
594
+ }) => {
595
+ const symbol = amount ? amount.slice(0, 2) : "";
596
+ const value = amount ? amount.slice(2) : "";
597
+ const isLarge = variant === "large";
598
+ return /* @__PURE__ */ jsxs6(
599
+ Box5,
600
+ {
601
+ className,
602
+ sx: {
603
+ position: "relative",
604
+ width: "100%",
605
+ maxWidth: {
606
+ xs: 328,
607
+ lg: isLarge ? 618 : 456
608
+ },
609
+ mx: "auto"
610
+ },
611
+ children: [
612
+ backgroundImage && /* @__PURE__ */ jsx9(
613
+ Box5,
614
+ {
615
+ sx: {
616
+ position: "relative",
617
+ width: "100%",
618
+ aspectRatio: {
619
+ xs: "328 / 188",
620
+ lg: isLarge ? "618 / 346" : "456 / 272"
621
+ },
622
+ borderRadius: "14px",
623
+ overflow: "hidden"
624
+ },
625
+ children: /* @__PURE__ */ jsx9(
626
+ Box5,
627
+ {
628
+ component: "img",
629
+ src: backgroundImage,
630
+ alt: alt != null ? alt : "Fondo promocional",
631
+ sx: {
632
+ width: "100%",
633
+ height: "100%",
634
+ objectFit: "cover",
635
+ objectPosition: {
636
+ xs: "50% 0%",
637
+ lg: "45% 0%"
638
+ },
639
+ display: "block"
640
+ }
641
+ }
642
+ )
643
+ }
644
+ ),
645
+ /* @__PURE__ */ jsx9(
646
+ Box5,
647
+ {
648
+ sx: {
649
+ position: "absolute",
650
+ inset: 0,
651
+ display: "flex",
652
+ alignItems: "center",
653
+ justifyContent: "flex-end",
654
+ color: "#e7f8ff",
655
+ textAlign: "center",
656
+ pl: "14%",
657
+ pr: { xs: "14%", lg: "15%" }
658
+ },
659
+ children: /* @__PURE__ */ jsxs6(
660
+ Box5,
661
+ {
662
+ sx: {
663
+ maxWidth: "60%",
664
+ display: "flex",
665
+ flexDirection: "column",
666
+ alignItems: "center"
667
+ },
668
+ children: [
669
+ title && /* @__PURE__ */ jsx9(
670
+ Typography2,
671
+ {
672
+ sx: {
673
+ fontSize: { xs: 12, lg: 20 },
674
+ fontWeight: 400,
675
+ color: "#e7f8ff"
676
+ },
677
+ children: title
678
+ }
679
+ ),
680
+ amount && /* @__PURE__ */ jsxs6(
681
+ Box5,
682
+ {
683
+ component: "p",
684
+ sx: {
685
+ lineHeight: { xs: 0.9, lg: 0.87 },
686
+ m: "4px 0",
687
+ background: "linear-gradient(175deg, #EDC421 -12.56%, #FFFABF 17.99%, #EDC421 49.74%)",
688
+ WebkitBackgroundClip: "text",
689
+ WebkitTextFillColor: "transparent",
690
+ WebkitTextStroke: "0.5px #fff8c1",
691
+ filter: "drop-shadow(0px 4px 0px #8D4406) drop-shadow(0px 4px 4px rgba(28, 28, 28, 0.4))",
692
+ display: "flex",
693
+ alignItems: "baseline",
694
+ justifyContent: "center"
695
+ },
696
+ children: [
697
+ /* @__PURE__ */ jsx9(
698
+ Box5,
699
+ {
700
+ component: "span",
701
+ sx: { fontSize: { xs: 35, lg: 48 }, mr: 0.5 },
702
+ children: symbol
703
+ }
704
+ ),
705
+ /* @__PURE__ */ jsx9(
706
+ Box5,
707
+ {
708
+ component: "span",
709
+ sx: { fontSize: { xs: 52, lg: 77 } },
710
+ children: value
711
+ }
712
+ )
713
+ ]
714
+ }
715
+ ),
716
+ subtitle && /* @__PURE__ */ jsx9(
717
+ Typography2,
718
+ {
719
+ sx: {
720
+ pb: "20px",
721
+ fontSize: 14,
722
+ fontWeight: 600,
723
+ color: "#e7f8ff"
724
+ },
725
+ children: subtitle
726
+ }
727
+ ),
728
+ buttonText && /* @__PURE__ */ jsx9(OraculoButton, { onClick: onButtonClick, children: buttonText })
729
+ ]
730
+ }
731
+ )
732
+ }
733
+ )
734
+ ]
735
+ }
736
+ );
737
+ };
738
+ var OraculoWelcomeBanner_default = OraculoWelcomeBanner;
739
+
740
+ // src/molecules/OraculoClubOlimpoVisual/OraculoClubOlimpoVisual.tsx
741
+ import { Fragment as Fragment2, jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
742
+ var OraculoClubOlimpoVisual = ({
743
+ text,
744
+ buttonLabel = "Conoce m\xE1s",
745
+ onClick,
746
+ imgAlt = "Club Olimpo",
747
+ imgSrcMobile,
748
+ imgSrcDesktopBg,
749
+ imgSrcDesktopLogo
750
+ }) => {
751
+ return /* @__PURE__ */ jsxs7(Fragment2, { children: [
752
+ /* @__PURE__ */ jsx10("div", { className: "orc-co-bgMobile", children: /* @__PURE__ */ jsx10(
753
+ "img",
754
+ {
755
+ src: imgSrcMobile,
756
+ alt: imgAlt,
757
+ className: "orc-co-bgMobileImg"
758
+ }
759
+ ) }),
760
+ /* @__PURE__ */ jsxs7("div", { className: "orc-co-bgDesktop", children: [
761
+ imgSrcDesktopBg && /* @__PURE__ */ jsx10("div", { className: "orc-co-fillHost", children: /* @__PURE__ */ jsx10(
762
+ "img",
763
+ {
764
+ src: imgSrcDesktopBg,
765
+ alt: `${imgAlt} fondo`,
766
+ className: "orc-co-bgDesktopImg"
767
+ }
768
+ ) }),
769
+ imgSrcDesktopLogo && /* @__PURE__ */ jsx10("div", { className: "orc-co-logo", children: /* @__PURE__ */ jsx10(
770
+ "img",
771
+ {
772
+ src: imgSrcDesktopLogo,
773
+ alt: `${imgAlt} logo`,
774
+ className: "orc-co-logoImg"
775
+ }
776
+ ) }),
777
+ /* @__PURE__ */ jsxs7("div", { className: "orc-co-desktopContent", children: [
778
+ /* @__PURE__ */ jsx10("p", { className: "orc-co-captionDesktop", children: text }),
779
+ /* @__PURE__ */ jsx10(OraculoButton, { onClick, variant: "primary", size: "md", children: buttonLabel })
780
+ ] })
781
+ ] }),
782
+ /* @__PURE__ */ jsxs7("div", { className: "orc-co-bottom", children: [
783
+ /* @__PURE__ */ jsx10("p", { className: "orc-co-caption", children: text }),
784
+ /* @__PURE__ */ jsx10(OraculoButton, { onClick, variant: "primary", size: "md", children: buttonLabel })
785
+ ] })
786
+ ] });
787
+ };
788
+ var OraculoClubOlimpoVisual_default = OraculoClubOlimpoVisual;
789
+
556
790
  // src/organisms/OraculoSeccionDestacados/OraculoSeccionDestacados.tsx
557
791
  import { useRef as useRef2, useState } from "react";
558
792
 
@@ -572,7 +806,7 @@ var ChevronRightRounded_default = createSvgIcon(/* @__PURE__ */ _jsx2("path", {
572
806
  }), "ChevronRightRounded");
573
807
 
574
808
  // src/organisms/OraculoSeccionDestacados/OraculoSeccionDestacados.tsx
575
- import { jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
809
+ import { jsx as jsx11, jsxs as jsxs8 } from "react/jsx-runtime";
576
810
  function OraculoSeccionDestacados({
577
811
  items,
578
812
  title = "Destacados",
@@ -594,8 +828,8 @@ function OraculoSeccionDestacados({
594
828
  onViewMore == null ? void 0 : onViewMore();
595
829
  };
596
830
  const sectionClassName = className || void 0;
597
- return /* @__PURE__ */ jsxs6("section", { className: sectionClassName, style: { width: "100%" }, children: [
598
- /* @__PURE__ */ jsxs6(
831
+ return /* @__PURE__ */ jsxs8("section", { className: sectionClassName, style: { width: "100%" }, children: [
832
+ /* @__PURE__ */ jsxs8(
599
833
  "header",
600
834
  {
601
835
  style: {
@@ -607,7 +841,7 @@ function OraculoSeccionDestacados({
607
841
  marginBottom: 16
608
842
  },
609
843
  children: [
610
- /* @__PURE__ */ jsx8(
844
+ /* @__PURE__ */ jsx11(
611
845
  OraculoSectionTitle,
612
846
  {
613
847
  title,
@@ -615,7 +849,7 @@ function OraculoSeccionDestacados({
615
849
  size: "md"
616
850
  }
617
851
  ),
618
- /* @__PURE__ */ jsxs6(
852
+ /* @__PURE__ */ jsxs8(
619
853
  "div",
620
854
  {
621
855
  style: {
@@ -623,24 +857,24 @@ function OraculoSeccionDestacados({
623
857
  gap: 8
624
858
  },
625
859
  children: [
626
- /* @__PURE__ */ jsx8(
860
+ /* @__PURE__ */ jsx11(
627
861
  OraculoButton,
628
862
  {
629
863
  ariaLabel: "Anterior",
630
864
  variant: "secondary",
631
865
  iconOnly: true,
632
- leftIcon: /* @__PURE__ */ jsx8(ChevronLeftRounded_default, {}),
866
+ leftIcon: /* @__PURE__ */ jsx11(ChevronLeftRounded_default, {}),
633
867
  onClick: handlePrev,
634
868
  disabled: navState.isStart
635
869
  }
636
870
  ),
637
- /* @__PURE__ */ jsx8(
871
+ /* @__PURE__ */ jsx11(
638
872
  OraculoButton,
639
873
  {
640
874
  ariaLabel: "Siguiente",
641
875
  variant: "secondary",
642
876
  iconOnly: true,
643
- rightIcon: /* @__PURE__ */ jsx8(ChevronRightRounded_default, {}),
877
+ rightIcon: /* @__PURE__ */ jsx11(ChevronRightRounded_default, {}),
644
878
  onClick: handleNext,
645
879
  disabled: navState.isEnd
646
880
  }
@@ -648,11 +882,11 @@ function OraculoSeccionDestacados({
648
882
  ]
649
883
  }
650
884
  ),
651
- /* @__PURE__ */ jsx8(OraculoButton, { variant: "secondary", onClick: handleViewMore, children: "Ver m\xE1s" })
885
+ /* @__PURE__ */ jsx11(OraculoButton, { variant: "secondary", onClick: handleViewMore, children: "Ver m\xE1s" })
652
886
  ]
653
887
  }
654
888
  ),
655
- /* @__PURE__ */ jsx8(
889
+ /* @__PURE__ */ jsx11(
656
890
  OraculoCarousel_default,
657
891
  {
658
892
  ref: carouselRef,
@@ -666,14 +900,14 @@ function OraculoSeccionDestacados({
666
900
  },
667
901
  renderItem: (item) => {
668
902
  var _a;
669
- return /* @__PURE__ */ jsx8(
903
+ return /* @__PURE__ */ jsx11(
670
904
  "div",
671
905
  {
672
906
  style: {
673
907
  textAlign: "center",
674
908
  marginTop: 16
675
909
  },
676
- children: /* @__PURE__ */ jsx8(
910
+ children: /* @__PURE__ */ jsx11(
677
911
  "img",
678
912
  {
679
913
  src: item.src,
@@ -698,8 +932,8 @@ function OraculoSeccionDestacados({
698
932
 
699
933
  // src/organisms/OraculoSeccionTopJuegos/OraculoSeccionTopJuegos.tsx
700
934
  import Stack from "@mui/material/Stack";
701
- import Box5 from "@mui/material/Box";
702
- import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
935
+ import Box6 from "@mui/material/Box";
936
+ import { jsx as jsx12, jsxs as jsxs9 } from "react/jsx-runtime";
703
937
  function OraculoSeccionTopJuegos({
704
938
  items,
705
939
  title = "Top Juegos",
@@ -707,10 +941,10 @@ function OraculoSeccionTopJuegos({
707
941
  onCardClick,
708
942
  className
709
943
  }) {
710
- return /* @__PURE__ */ jsx9("section", { className, style: { width: "100%" }, children: /* @__PURE__ */ jsxs7(Stack, { direction: "column", spacing: 2, useFlexGap: true, children: [
711
- /* @__PURE__ */ jsx9(OraculoSectionTitle, { title, iconUrl, size: "md" }),
712
- /* @__PURE__ */ jsx9(
713
- Box5,
944
+ return /* @__PURE__ */ jsx12("section", { className, style: { width: "100%" }, children: /* @__PURE__ */ jsxs9(Stack, { direction: "column", spacing: 2, useFlexGap: true, children: [
945
+ /* @__PURE__ */ jsx12(OraculoSectionTitle, { title, iconUrl, size: "md" }),
946
+ /* @__PURE__ */ jsx12(
947
+ Box6,
714
948
  {
715
949
  sx: {
716
950
  display: "grid",
@@ -722,7 +956,7 @@ function OraculoSeccionTopJuegos({
722
956
  justifyItems: "center",
723
957
  width: "100%"
724
958
  },
725
- children: items.slice(0, 6).map((juego, idx) => /* @__PURE__ */ jsx9(
959
+ children: items.slice(0, 6).map((juego, idx) => /* @__PURE__ */ jsx12(
726
960
  OraculoGameRankCard,
727
961
  {
728
962
  imageUrl: juego.logo || "",
@@ -737,10 +971,10 @@ function OraculoSeccionTopJuegos({
737
971
  }
738
972
 
739
973
  // src/organisms/OraculoSeccionCasinoEnVivo/OraculoSeccionCasinoEnVivo.tsx
740
- import Box6 from "@mui/material/Box";
974
+ import Box7 from "@mui/material/Box";
741
975
  import Stack2 from "@mui/material/Stack";
742
- import Typography2 from "@mui/material/Typography";
743
- import { jsx as jsx10, jsxs as jsxs8 } from "react/jsx-runtime";
976
+ import Typography3 from "@mui/material/Typography";
977
+ import { jsx as jsx13, jsxs as jsxs10 } from "react/jsx-runtime";
744
978
  var OraculoSeccionCasinoEnVivo = ({
745
979
  items,
746
980
  title = "Casino en vivo",
@@ -751,8 +985,8 @@ var OraculoSeccionCasinoEnVivo = ({
751
985
  onViewMore,
752
986
  className
753
987
  }) => {
754
- return /* @__PURE__ */ jsxs8(
755
- Box6,
988
+ return /* @__PURE__ */ jsxs10(
989
+ Box7,
756
990
  {
757
991
  className,
758
992
  sx: {
@@ -765,8 +999,8 @@ var OraculoSeccionCasinoEnVivo = ({
765
999
  overflow: "hidden"
766
1000
  },
767
1001
  children: [
768
- /* @__PURE__ */ jsx10(
769
- Box6,
1002
+ /* @__PURE__ */ jsx13(
1003
+ Box7,
770
1004
  {
771
1005
  sx: {
772
1006
  position: "absolute",
@@ -790,8 +1024,8 @@ var OraculoSeccionCasinoEnVivo = ({
790
1024
  }
791
1025
  }
792
1026
  ),
793
- /* @__PURE__ */ jsxs8(
794
- Box6,
1027
+ /* @__PURE__ */ jsxs10(
1028
+ Box7,
795
1029
  {
796
1030
  sx: {
797
1031
  position: "relative",
@@ -808,9 +1042,9 @@ var OraculoSeccionCasinoEnVivo = ({
808
1042
  textAlign: { xs: "center", md: "left" }
809
1043
  },
810
1044
  children: [
811
- /* @__PURE__ */ jsxs8(Stack2, { spacing: 3, sx: { maxWidth: { md: 280 } }, children: [
812
- /* @__PURE__ */ jsx10(
813
- Typography2,
1045
+ /* @__PURE__ */ jsxs10(Stack2, { spacing: 3, sx: { maxWidth: { md: 280 } }, children: [
1046
+ /* @__PURE__ */ jsx13(
1047
+ Typography3,
814
1048
  {
815
1049
  variant: "h4",
816
1050
  sx: {
@@ -822,8 +1056,8 @@ var OraculoSeccionCasinoEnVivo = ({
822
1056
  children: title
823
1057
  }
824
1058
  ),
825
- /* @__PURE__ */ jsx10(
826
- Typography2,
1059
+ /* @__PURE__ */ jsx13(
1060
+ Typography3,
827
1061
  {
828
1062
  sx: {
829
1063
  fontSize: { xs: 14, md: 18 },
@@ -834,7 +1068,7 @@ var OraculoSeccionCasinoEnVivo = ({
834
1068
  children: subtitle
835
1069
  }
836
1070
  ),
837
- /* @__PURE__ */ jsx10(Box6, { sx: { display: { xs: "none", md: "block" } }, children: /* @__PURE__ */ jsx10(
1071
+ /* @__PURE__ */ jsx13(Box7, { sx: { display: { xs: "none", md: "block" } }, children: /* @__PURE__ */ jsx13(
838
1072
  OraculoButton,
839
1073
  {
840
1074
  variant: "primary",
@@ -844,8 +1078,8 @@ var OraculoSeccionCasinoEnVivo = ({
844
1078
  }
845
1079
  ) })
846
1080
  ] }),
847
- /* @__PURE__ */ jsx10(
848
- Box6,
1081
+ /* @__PURE__ */ jsx13(
1082
+ Box7,
849
1083
  {
850
1084
  sx: {
851
1085
  display: "flex",
@@ -857,7 +1091,7 @@ var OraculoSeccionCasinoEnVivo = ({
857
1091
  },
858
1092
  children: items.map((juego, idx) => {
859
1093
  var _a, _b;
860
- return /* @__PURE__ */ jsx10(
1094
+ return /* @__PURE__ */ jsx13(
861
1095
  OraculoLiveCasinoCard_default,
862
1096
  {
863
1097
  logo: (_b = juego.logo) != null ? _b : "",
@@ -871,7 +1105,7 @@ var OraculoSeccionCasinoEnVivo = ({
871
1105
  })
872
1106
  }
873
1107
  ),
874
- /* @__PURE__ */ jsx10(Box6, { sx: { display: { xs: "block", md: "none" } }, children: /* @__PURE__ */ jsx10(
1108
+ /* @__PURE__ */ jsx13(Box7, { sx: { display: { xs: "block", md: "none" } }, children: /* @__PURE__ */ jsx13(
875
1109
  OraculoButton,
876
1110
  {
877
1111
  variant: "primary",
@@ -892,8 +1126,8 @@ var OraculoSeccionCasinoEnVivo_default = OraculoSeccionCasinoEnVivo;
892
1126
  // src/organisms/OraculoSeccionCasino/OraculoSeccionCasino.tsx
893
1127
  import { useRef as useRef3, useState as useState2 } from "react";
894
1128
  import Stack3 from "@mui/material/Stack";
895
- import Box7 from "@mui/material/Box";
896
- import { jsx as jsx11, jsxs as jsxs9 } from "react/jsx-runtime";
1129
+ import Box8 from "@mui/material/Box";
1130
+ import { jsx as jsx14, jsxs as jsxs11 } from "react/jsx-runtime";
897
1131
  var buildCasinoSlides = (games, mosaicFirst = true, gridSize = 4) => {
898
1132
  const baseItems = games.map((g, idx) => {
899
1133
  var _a, _b, _c, _d;
@@ -949,9 +1183,9 @@ var OraculoSeccionCasino = ({
949
1183
  const handleViewMore = () => {
950
1184
  onViewMore == null ? void 0 : onViewMore();
951
1185
  };
952
- return /* @__PURE__ */ jsx11("section", { className, children: /* @__PURE__ */ jsxs9(Stack3, { direction: "column", spacing: 2, useFlexGap: true, children: [
953
- /* @__PURE__ */ jsxs9(
954
- Box7,
1186
+ return /* @__PURE__ */ jsx14("section", { className, children: /* @__PURE__ */ jsxs11(Stack3, { direction: "column", spacing: 2, useFlexGap: true, children: [
1187
+ /* @__PURE__ */ jsxs11(
1188
+ Box8,
955
1189
  {
956
1190
  sx: {
957
1191
  display: "grid",
@@ -961,7 +1195,7 @@ var OraculoSeccionCasino = ({
961
1195
  rowGap: 1
962
1196
  },
963
1197
  children: [
964
- /* @__PURE__ */ jsx11(
1198
+ /* @__PURE__ */ jsx14(
965
1199
  OraculoSectionTitle,
966
1200
  {
967
1201
  title,
@@ -969,8 +1203,8 @@ var OraculoSeccionCasino = ({
969
1203
  size: "md"
970
1204
  }
971
1205
  ),
972
- /* @__PURE__ */ jsxs9(
973
- Box7,
1206
+ /* @__PURE__ */ jsxs11(
1207
+ Box8,
974
1208
  {
975
1209
  sx: {
976
1210
  display: "flex",
@@ -978,24 +1212,24 @@ var OraculoSeccionCasino = ({
978
1212
  justifyContent: "flex-end"
979
1213
  },
980
1214
  children: [
981
- /* @__PURE__ */ jsx11(
1215
+ /* @__PURE__ */ jsx14(
982
1216
  OraculoButton,
983
1217
  {
984
1218
  ariaLabel: "Anterior",
985
1219
  variant: "secondary",
986
1220
  iconOnly: true,
987
- leftIcon: /* @__PURE__ */ jsx11(ChevronLeftRounded_default, {}),
1221
+ leftIcon: /* @__PURE__ */ jsx14(ChevronLeftRounded_default, {}),
988
1222
  onClick: handlePrev,
989
1223
  disabled: navState.isStart
990
1224
  }
991
1225
  ),
992
- /* @__PURE__ */ jsx11(
1226
+ /* @__PURE__ */ jsx14(
993
1227
  OraculoButton,
994
1228
  {
995
1229
  ariaLabel: "Siguiente",
996
1230
  variant: "secondary",
997
1231
  iconOnly: true,
998
- rightIcon: /* @__PURE__ */ jsx11(ChevronRightRounded_default, {}),
1232
+ rightIcon: /* @__PURE__ */ jsx14(ChevronRightRounded_default, {}),
999
1233
  onClick: handleNext,
1000
1234
  disabled: navState.isEnd
1001
1235
  }
@@ -1003,11 +1237,11 @@ var OraculoSeccionCasino = ({
1003
1237
  ]
1004
1238
  }
1005
1239
  ),
1006
- /* @__PURE__ */ jsx11(Box7, { sx: { justifySelf: "end" }, children: /* @__PURE__ */ jsx11(OraculoButton, { variant: "secondary", onClick: handleViewMore, children: "Ver m\xE1s" }) })
1240
+ /* @__PURE__ */ jsx14(Box8, { sx: { justifySelf: "end" }, children: /* @__PURE__ */ jsx14(OraculoButton, { variant: "secondary", onClick: handleViewMore, children: "Ver m\xE1s" }) })
1007
1241
  ]
1008
1242
  }
1009
1243
  ),
1010
- /* @__PURE__ */ jsx11(
1244
+ /* @__PURE__ */ jsx14(
1011
1245
  OraculoCarousel_default,
1012
1246
  {
1013
1247
  ref: carouselRef,
@@ -1023,7 +1257,7 @@ var OraculoSeccionCasino = ({
1023
1257
  drag: true,
1024
1258
  focus: "start"
1025
1259
  },
1026
- renderItem: (slide) => /* @__PURE__ */ jsx11("div", { style: { alignSelf: "start" }, children: /* @__PURE__ */ jsx11(
1260
+ renderItem: (slide) => /* @__PURE__ */ jsx14("div", { style: { alignSelf: "start" }, children: /* @__PURE__ */ jsx14(
1027
1261
  OraculoGameSlide_default,
1028
1262
  {
1029
1263
  items: slide.items,
@@ -1049,8 +1283,8 @@ var OraculoSeccionCasino_default = OraculoSeccionCasino;
1049
1283
  // src/organisms/OraculoSeccionVirtuales/OraculoSeccionVirtuales.tsx
1050
1284
  import { useRef as useRef4, useState as useState3 } from "react";
1051
1285
  import Stack4 from "@mui/material/Stack";
1052
- import Box8 from "@mui/material/Box";
1053
- import { jsx as jsx12, jsxs as jsxs10 } from "react/jsx-runtime";
1286
+ import Box9 from "@mui/material/Box";
1287
+ import { jsx as jsx15, jsxs as jsxs12 } from "react/jsx-runtime";
1054
1288
  var buildVirtualSlides = (games, mosaicFirst = true, gridSize = 4) => {
1055
1289
  const baseItems = games.map((g, idx) => {
1056
1290
  var _a, _b, _c, _d;
@@ -1106,9 +1340,9 @@ var OraculoSeccionVirtuales = ({
1106
1340
  const handleViewMore = () => {
1107
1341
  onViewMore == null ? void 0 : onViewMore();
1108
1342
  };
1109
- return /* @__PURE__ */ jsx12("section", { className, children: /* @__PURE__ */ jsxs10(Stack4, { direction: "column", spacing: 2, useFlexGap: true, children: [
1110
- /* @__PURE__ */ jsxs10(
1111
- Box8,
1343
+ return /* @__PURE__ */ jsx15("section", { className, children: /* @__PURE__ */ jsxs12(Stack4, { direction: "column", spacing: 2, useFlexGap: true, children: [
1344
+ /* @__PURE__ */ jsxs12(
1345
+ Box9,
1112
1346
  {
1113
1347
  sx: {
1114
1348
  display: "grid",
@@ -1118,7 +1352,7 @@ var OraculoSeccionVirtuales = ({
1118
1352
  rowGap: 1
1119
1353
  },
1120
1354
  children: [
1121
- /* @__PURE__ */ jsx12(
1355
+ /* @__PURE__ */ jsx15(
1122
1356
  OraculoSectionTitle,
1123
1357
  {
1124
1358
  title,
@@ -1126,8 +1360,8 @@ var OraculoSeccionVirtuales = ({
1126
1360
  size: "md"
1127
1361
  }
1128
1362
  ),
1129
- /* @__PURE__ */ jsxs10(
1130
- Box8,
1363
+ /* @__PURE__ */ jsxs12(
1364
+ Box9,
1131
1365
  {
1132
1366
  sx: {
1133
1367
  display: "flex",
@@ -1135,24 +1369,24 @@ var OraculoSeccionVirtuales = ({
1135
1369
  justifyContent: "flex-end"
1136
1370
  },
1137
1371
  children: [
1138
- /* @__PURE__ */ jsx12(
1372
+ /* @__PURE__ */ jsx15(
1139
1373
  OraculoButton,
1140
1374
  {
1141
1375
  ariaLabel: "Anterior",
1142
1376
  variant: "secondary",
1143
1377
  iconOnly: true,
1144
- leftIcon: /* @__PURE__ */ jsx12(ChevronLeftRounded_default, {}),
1378
+ leftIcon: /* @__PURE__ */ jsx15(ChevronLeftRounded_default, {}),
1145
1379
  onClick: handlePrev,
1146
1380
  disabled: navState.isStart
1147
1381
  }
1148
1382
  ),
1149
- /* @__PURE__ */ jsx12(
1383
+ /* @__PURE__ */ jsx15(
1150
1384
  OraculoButton,
1151
1385
  {
1152
1386
  ariaLabel: "Siguiente",
1153
1387
  variant: "secondary",
1154
1388
  iconOnly: true,
1155
- rightIcon: /* @__PURE__ */ jsx12(ChevronRightRounded_default, {}),
1389
+ rightIcon: /* @__PURE__ */ jsx15(ChevronRightRounded_default, {}),
1156
1390
  onClick: handleNext,
1157
1391
  disabled: navState.isEnd
1158
1392
  }
@@ -1160,11 +1394,11 @@ var OraculoSeccionVirtuales = ({
1160
1394
  ]
1161
1395
  }
1162
1396
  ),
1163
- /* @__PURE__ */ jsx12(Box8, { sx: { justifySelf: "end" }, children: /* @__PURE__ */ jsx12(OraculoButton, { variant: "secondary", onClick: handleViewMore, children: "Ver m\xE1s" }) })
1397
+ /* @__PURE__ */ jsx15(Box9, { sx: { justifySelf: "end" }, children: /* @__PURE__ */ jsx15(OraculoButton, { variant: "secondary", onClick: handleViewMore, children: "Ver m\xE1s" }) })
1164
1398
  ]
1165
1399
  }
1166
1400
  ),
1167
- /* @__PURE__ */ jsx12(
1401
+ /* @__PURE__ */ jsx15(
1168
1402
  OraculoCarousel_default,
1169
1403
  {
1170
1404
  ref: carouselRef,
@@ -1181,7 +1415,7 @@ var OraculoSeccionVirtuales = ({
1181
1415
  focus: "start",
1182
1416
  perMove: 1
1183
1417
  },
1184
- renderItem: (slide) => /* @__PURE__ */ jsx12("div", { style: { alignSelf: "start" }, children: /* @__PURE__ */ jsx12(
1418
+ renderItem: (slide) => /* @__PURE__ */ jsx15("div", { style: { alignSelf: "start" }, children: /* @__PURE__ */ jsx15(
1185
1419
  OraculoGameSlide_default,
1186
1420
  {
1187
1421
  items: slide.items,
@@ -1203,17 +1437,270 @@ var OraculoSeccionVirtuales = ({
1203
1437
  ] }) });
1204
1438
  };
1205
1439
  var OraculoSeccionVirtuales_default = OraculoSeccionVirtuales;
1440
+
1441
+ // src/organisms/OraculoSeccionBonoBienvenida/OraculoSeccionBonoBienvenida.tsx
1442
+ import { useRef as useRef5, useState as useState4 } from "react";
1443
+ import Box10 from "@mui/material/Box";
1444
+ import Typography4 from "@mui/material/Typography";
1445
+ import useMediaQuery from "@mui/material/useMediaQuery";
1446
+ import { Fragment as Fragment3, jsx as jsx16, jsxs as jsxs13 } from "react/jsx-runtime";
1447
+ var buildSectionSx = (bgUrl) => ({
1448
+ width: "100vw",
1449
+ position: "relative",
1450
+ left: "50%",
1451
+ right: "50%",
1452
+ marginLeft: "-50vw",
1453
+ marginRight: "-50vw",
1454
+ py: 8,
1455
+ color: "#fff",
1456
+ backgroundImage: `
1457
+ linear-gradient(to bottom,#121212 0%, rgba(18,18,18,0) 10%),
1458
+ linear-gradient(to top, #121212 0%, rgba(18,18,18,0) 10%),
1459
+ linear-gradient(to left, #121212 0%, rgba(18,18,18,0) 10%),
1460
+ linear-gradient(to right, #121212 0%, rgba(18,18,18,0) 10%),
1461
+ url("${bgUrl}")
1462
+ `,
1463
+ backgroundRepeat: "no-repeat",
1464
+ backgroundPosition: "center",
1465
+ backgroundSize: "cover"
1466
+ });
1467
+ var headlineBaseSx = {
1468
+ textAlign: "center",
1469
+ lineHeight: 1.1,
1470
+ mb: 1.5
1471
+ };
1472
+ var hlTopSx = {
1473
+ display: "inline-block",
1474
+ fontWeight: 600,
1475
+ fontSize: 24
1476
+ };
1477
+ var hlBottomSx = {
1478
+ display: "inline-block",
1479
+ fontSize: 24,
1480
+ lineHeight: 1.1,
1481
+ WebkitTextStroke: "0.3px rgba(255, 255, 255, .5)",
1482
+ textShadow: `
1483
+ 0 0 2px rgba(255, 255, 255, .95),
1484
+ 0 0 6px rgba(255, 255, 255, .6),
1485
+ 0 1px 0 rgba(137, 137, 137, .85)
1486
+ `
1487
+ };
1488
+ var OraculoSeccionBonoBienvenida = ({
1489
+ headline,
1490
+ items,
1491
+ backgroundImageUrl
1492
+ }) => {
1493
+ const [hl1 = "", hl2 = ""] = (headline || "").split("\n");
1494
+ const isMobile = useMediaQuery("(max-width: 767px)");
1495
+ const showDots = items.length > 1;
1496
+ const bgUrl = backgroundImageUrl != null ? backgroundImageUrl : "/assets/img/home/BonoBienvenida/Fondobg.png";
1497
+ const sectionSx = buildSectionSx(bgUrl);
1498
+ const carouselRef = useRef5(null);
1499
+ const [navState, setNavState] = useState4({ isStart: true, isEnd: false });
1500
+ const [activeIndex, setActiveIndex] = useState4(0);
1501
+ if (isMobile) {
1502
+ return /* @__PURE__ */ jsxs13(
1503
+ Box10,
1504
+ {
1505
+ component: "section",
1506
+ sx: {
1507
+ ...sectionSx,
1508
+ textAlign: "center"
1509
+ },
1510
+ children: [
1511
+ (hl1 || hl2) && /* @__PURE__ */ jsxs13(Box10, { sx: headlineBaseSx, children: [
1512
+ hl1 && /* @__PURE__ */ jsx16(Typography4, { component: "span", sx: hlTopSx, children: hl1 }),
1513
+ hl2 && /* @__PURE__ */ jsxs13(Fragment3, { children: [
1514
+ /* @__PURE__ */ jsx16("br", {}),
1515
+ /* @__PURE__ */ jsx16(Typography4, { component: "span", sx: hlBottomSx, children: hl2 })
1516
+ ] })
1517
+ ] }),
1518
+ /* @__PURE__ */ jsxs13(Box10, { children: [
1519
+ /* @__PURE__ */ jsx16(
1520
+ OraculoCarousel_default,
1521
+ {
1522
+ ref: carouselRef,
1523
+ items,
1524
+ perPage: 1,
1525
+ gap: "12px",
1526
+ breakpoints: {
1527
+ 480: {
1528
+ perPage: 1,
1529
+ gap: "8px",
1530
+ padding: { left: "8px", right: "8px" }
1531
+ },
1532
+ 768: {
1533
+ perPage: 1,
1534
+ gap: "12px",
1535
+ padding: { left: "8px", right: "8px" }
1536
+ }
1537
+ },
1538
+ options: {
1539
+ autoWidth: false
1540
+ },
1541
+ renderItem: (it) => /* @__PURE__ */ jsx16(OraculoWelcomeBanner_default, { ...it }),
1542
+ onMove: ({ index, isStart, isEnd }) => {
1543
+ setNavState({ isStart, isEnd });
1544
+ setActiveIndex(index);
1545
+ }
1546
+ }
1547
+ ),
1548
+ showDots && /* @__PURE__ */ jsx16(
1549
+ OraculoCarouselDots_default,
1550
+ {
1551
+ total: items.length,
1552
+ active: activeIndex,
1553
+ onSelect: (i) => {
1554
+ var _a;
1555
+ setActiveIndex(i);
1556
+ (_a = carouselRef.current) == null ? void 0 : _a.go(i);
1557
+ }
1558
+ }
1559
+ )
1560
+ ] })
1561
+ ]
1562
+ }
1563
+ );
1564
+ }
1565
+ return /* @__PURE__ */ jsx16(Box10, { component: "section", sx: sectionSx, children: /* @__PURE__ */ jsxs13(
1566
+ Box10,
1567
+ {
1568
+ sx: {
1569
+ maxWidth: 1200,
1570
+ mx: 5,
1571
+ px: 2,
1572
+ display: "grid",
1573
+ gridTemplateColumns: "200px auto",
1574
+ alignItems: "center"
1575
+ },
1576
+ children: [
1577
+ (hl1 || hl2) && /* @__PURE__ */ jsx16(
1578
+ Box10,
1579
+ {
1580
+ sx: {
1581
+ display: "flex",
1582
+ alignItems: "center",
1583
+ justifyContent: "flex-start",
1584
+ minHeight: "100%"
1585
+ },
1586
+ children: /* @__PURE__ */ jsxs13(
1587
+ Box10,
1588
+ {
1589
+ sx: {
1590
+ ...headlineBaseSx,
1591
+ textAlign: "left",
1592
+ mb: 0
1593
+ },
1594
+ children: [
1595
+ hl1 && /* @__PURE__ */ jsx16(Typography4, { component: "span", sx: hlTopSx, children: hl1 }),
1596
+ hl2 && /* @__PURE__ */ jsxs13(Fragment3, { children: [
1597
+ /* @__PURE__ */ jsx16("br", {}),
1598
+ /* @__PURE__ */ jsx16(Typography4, { component: "span", sx: hlBottomSx, children: hl2 })
1599
+ ] })
1600
+ ]
1601
+ }
1602
+ )
1603
+ }
1604
+ ),
1605
+ /* @__PURE__ */ jsx16(
1606
+ Box10,
1607
+ {
1608
+ sx: {
1609
+ display: "flex",
1610
+ justifyContent: "center",
1611
+ alignItems: "center",
1612
+ flexWrap: "nowrap",
1613
+ gap: 4
1614
+ },
1615
+ children: items.map((it, idx) => /* @__PURE__ */ jsx16(
1616
+ OraculoWelcomeBanner_default,
1617
+ {
1618
+ ...it
1619
+ },
1620
+ idx
1621
+ ))
1622
+ }
1623
+ )
1624
+ ]
1625
+ }
1626
+ ) });
1627
+ };
1628
+ var OraculoSeccionBonoBienvenida_default = OraculoSeccionBonoBienvenida;
1629
+
1630
+ // src/organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.tsx
1631
+ import { useLayoutEffect, useRef as useRef6 } from "react";
1632
+ import { jsx as jsx17 } from "react/jsx-runtime";
1633
+ var OraculoSeccionClubOlimpo = ({
1634
+ className = "",
1635
+ fullBleed = true,
1636
+ items,
1637
+ selectedIndex = 0,
1638
+ ariaLabel
1639
+ }) => {
1640
+ const rootRef = useRef6(null);
1641
+ const bottomRef = useRef6(null);
1642
+ if (!items || items.length === 0) return null;
1643
+ const safeIndex = Math.min(Math.max(selectedIndex, 0), items.length - 1);
1644
+ const item = items[safeIndex];
1645
+ useLayoutEffect(() => {
1646
+ if (!rootRef.current || !bottomRef.current) return;
1647
+ if (typeof ResizeObserver === "undefined") return;
1648
+ const root = rootRef.current;
1649
+ const bottom = bottomRef.current;
1650
+ const update = () => {
1651
+ root.style.setProperty(
1652
+ "--orc-co-bottomH",
1653
+ `${bottom.offsetHeight + 16}px`
1654
+ );
1655
+ };
1656
+ const ro = new ResizeObserver(update);
1657
+ ro.observe(bottom);
1658
+ update();
1659
+ return () => ro.disconnect();
1660
+ }, []);
1661
+ const rootClass = [
1662
+ "orc-co-wrap",
1663
+ fullBleed ? "orc-co-fullBleed" : "",
1664
+ className
1665
+ ].filter(Boolean).join(" ");
1666
+ return /* @__PURE__ */ jsx17(
1667
+ "section",
1668
+ {
1669
+ ref: rootRef,
1670
+ className: rootClass,
1671
+ "aria-label": ariaLabel || item.imgAlt || "Club Olimpo",
1672
+ children: /* @__PURE__ */ jsx17("div", { ref: bottomRef, children: /* @__PURE__ */ jsx17(
1673
+ OraculoClubOlimpoVisual_default,
1674
+ {
1675
+ text: item.text,
1676
+ onClick: item.onClick,
1677
+ imgAlt: item.imgAlt,
1678
+ imgSrcMobile: item.images.mobile,
1679
+ imgSrcDesktopBg: item.images.desktopBg,
1680
+ imgSrcDesktopLogo: item.images.desktopLogo,
1681
+ priority: item.priority
1682
+ }
1683
+ ) })
1684
+ }
1685
+ );
1686
+ };
1687
+ var OraculoSeccionClubOlimpo_default = OraculoSeccionClubOlimpo;
1206
1688
  export {
1207
1689
  OraculoButton,
1208
1690
  OraculoCarousel_default as OraculoCarousel,
1691
+ OraculoCarouselDots_default as OraculoCarouselDots,
1692
+ OraculoClubOlimpoVisual_default as OraculoClubOlimpoVisual,
1209
1693
  OraculoGameCard_default as OraculoGameCard,
1210
1694
  OraculoGameRankCard,
1211
1695
  OraculoGameSlide_default as OraculoGameSlide,
1212
1696
  OraculoLiveCasinoCard_default as OraculoLiveCasinoCard,
1697
+ OraculoSeccionBonoBienvenida_default as OraculoSeccionBonoBienvenida,
1213
1698
  OraculoSeccionCasino_default as OraculoSeccionCasino,
1214
1699
  OraculoSeccionCasinoEnVivo_default as OraculoSeccionCasinoEnVivo,
1700
+ OraculoSeccionClubOlimpo_default as OraculoSeccionClubOlimpo,
1215
1701
  OraculoSeccionDestacados,
1216
1702
  OraculoSeccionTopJuegos,
1217
1703
  OraculoSeccionVirtuales_default as OraculoSeccionVirtuales,
1218
- OraculoSectionTitle
1704
+ OraculoSectionTitle,
1705
+ OraculoWelcomeBanner_default as OraculoWelcomeBanner
1219
1706
  };