oraculo-ui 0.1.13 → 0.1.15

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.
Files changed (83) hide show
  1. package/dist/index.css +2 -397
  2. package/dist/index.css.map +1 -1
  3. package/dist/index.d.mts +6 -20
  4. package/dist/index.d.ts +6 -20
  5. package/dist/index.js +11 -39763
  6. package/dist/index.js.map +1 -1
  7. package/dist/index.mjs +22 -55
  8. package/dist/index.mjs.map +1 -1
  9. package/package.json +2 -2
  10. package/dist/OraculoSeccionBonoBienvenida-2APXZQQA.mjs +0 -8
  11. package/dist/OraculoSeccionBonoBienvenida-4ZHLRFV2.css +0 -221
  12. package/dist/OraculoSeccionBonoBienvenida-4ZHLRFV2.css.map +0 -1
  13. package/dist/OraculoSeccionBonoBienvenida-6L54EBL3.mjs +0 -9
  14. package/dist/OraculoSeccionBonoBienvenida-6L54EBL3.mjs.map +0 -1
  15. package/dist/OraculoSeccionBonoBienvenida-MGMLDCRG.css +0 -220
  16. package/dist/OraculoSeccionCasino-CPSKAAFH.css +0 -398
  17. package/dist/OraculoSeccionCasino-CPSKAAFH.css.map +0 -1
  18. package/dist/OraculoSeccionCasino-FHD2WBDU.mjs +0 -13
  19. package/dist/OraculoSeccionCasino-FHD2WBDU.mjs.map +0 -1
  20. package/dist/OraculoSeccionCasino-LRZCQVLY.mjs +0 -12
  21. package/dist/OraculoSeccionCasino-ORWFZCMV.mjs +0 -12
  22. package/dist/OraculoSeccionCasino-RFXPS2MW.css +0 -397
  23. package/dist/OraculoSeccionCasinoEnVivo-7W64K4YQ.css +0 -157
  24. package/dist/OraculoSeccionCasinoEnVivo-7W64K4YQ.css.map +0 -1
  25. package/dist/OraculoSeccionCasinoEnVivo-EPVIACRV.mjs +0 -9
  26. package/dist/OraculoSeccionCasinoEnVivo-EPVIACRV.mjs.map +0 -1
  27. package/dist/OraculoSeccionCasinoEnVivo-ISYMJSUN.mjs +0 -8
  28. package/dist/OraculoSeccionCasinoEnVivo-MMXETHJA.css +0 -156
  29. package/dist/OraculoSeccionClubOlimpo-63QCT4A2.mjs +0 -10
  30. package/dist/OraculoSeccionClubOlimpo-63QCT4A2.mjs.map +0 -1
  31. package/dist/OraculoSeccionClubOlimpo-APZYPQ5V.css +0 -116
  32. package/dist/OraculoSeccionClubOlimpo-BLUJXLUC.mjs +0 -8
  33. package/dist/OraculoSeccionClubOlimpo-BLUJXLUC.mjs.map +0 -1
  34. package/dist/OraculoSeccionClubOlimpo-F2AFK4G3.css +0 -274
  35. package/dist/OraculoSeccionClubOlimpo-F2AFK4G3.css.map +0 -1
  36. package/dist/OraculoSeccionClubOlimpo-MYTRV5IN.css +0 -273
  37. package/dist/OraculoSeccionClubOlimpo-TV3LABJ5.mjs +0 -9
  38. package/dist/OraculoSeccionClubOlimpo-XGB4KUKX.mjs +0 -7
  39. package/dist/OraculoSeccionClubOlimpo-ZCBMTUL3.css +0 -117
  40. package/dist/OraculoSeccionClubOlimpo-ZCBMTUL3.css.map +0 -1
  41. package/dist/OraculoSeccionDestacados-2KCEN6PZ.mjs +0 -12
  42. package/dist/OraculoSeccionDestacados-5RFVEBFL.mjs +0 -13
  43. package/dist/OraculoSeccionDestacados-5RFVEBFL.mjs.map +0 -1
  44. package/dist/OraculoSeccionDestacados-6D4LKX4H.mjs +0 -12
  45. package/dist/OraculoSeccionDestacados-AMMYUK67.css +0 -398
  46. package/dist/OraculoSeccionDestacados-AMMYUK67.css.map +0 -1
  47. package/dist/OraculoSeccionDestacados-WQX2GQNY.css +0 -397
  48. package/dist/OraculoSeccionTopJuegos-FMFAEVQK.css +0 -397
  49. package/dist/OraculoSeccionTopJuegos-K6CHEKEP.mjs +0 -13
  50. package/dist/OraculoSeccionTopJuegos-K6CHEKEP.mjs.map +0 -1
  51. package/dist/OraculoSeccionTopJuegos-LEFQWP7T.mjs +0 -12
  52. package/dist/OraculoSeccionTopJuegos-RBVOHPDV.mjs +0 -12
  53. package/dist/OraculoSeccionTopJuegos-XBGNNR6G.css +0 -398
  54. package/dist/OraculoSeccionTopJuegos-XBGNNR6G.css.map +0 -1
  55. package/dist/OraculoSeccionVirtuales-6RBECPDW.css +0 -397
  56. package/dist/OraculoSeccionVirtuales-FKHGLEVT.mjs +0 -12
  57. package/dist/OraculoSeccionVirtuales-N6FY52CM.mjs +0 -12
  58. package/dist/OraculoSeccionVirtuales-NEIWD2BT.mjs +0 -13
  59. package/dist/OraculoSeccionVirtuales-NEIWD2BT.mjs.map +0 -1
  60. package/dist/OraculoSeccionVirtuales-SSM6EDST.css +0 -398
  61. package/dist/OraculoSeccionVirtuales-SSM6EDST.css.map +0 -1
  62. package/dist/chunk-2D7ZJMJV.mjs +0 -118
  63. package/dist/chunk-4LBAYKDQ.mjs +0 -475
  64. package/dist/chunk-7IWMEE6R.mjs +0 -39100
  65. package/dist/chunk-FIOWVLJP.mjs +0 -7
  66. package/dist/chunk-FIOWVLJP.mjs.map +0 -1
  67. package/dist/chunk-FROEVP3X.mjs +0 -39097
  68. package/dist/chunk-IGAIIVJZ.mjs +0 -74
  69. package/dist/chunk-IGAIIVJZ.mjs.map +0 -1
  70. package/dist/chunk-IJQLK4NO.mjs +0 -73
  71. package/dist/chunk-MC4XEBI3.mjs +0 -1277
  72. package/dist/chunk-MC4XEBI3.mjs.map +0 -1
  73. package/dist/chunk-PVY5Z3JS.mjs +0 -249
  74. package/dist/chunk-PYHDJZX3.mjs +0 -476
  75. package/dist/chunk-PYHDJZX3.mjs.map +0 -1
  76. package/dist/chunk-PZJSZNXJ.mjs +0 -6
  77. package/dist/chunk-THUJNRMX.mjs +0 -119
  78. package/dist/chunk-THUJNRMX.mjs.map +0 -1
  79. package/dist/chunk-VIPLL6XT.mjs +0 -43
  80. package/dist/chunk-WTK2IT5O.mjs +0 -250
  81. package/dist/chunk-WTK2IT5O.mjs.map +0 -1
  82. package/dist/chunk-XNMUIY72.mjs +0 -10
  83. package/dist/chunk-XNMUIY72.mjs.map +0 -1
@@ -1,476 +0,0 @@
1
- import {
2
- OraculoButton
3
- } from "./chunk-IGAIIVJZ.mjs";
4
-
5
- // src/organisms/OraculoSeccionBonoBienvenida/OraculoSeccionBonoBienvenida.tsx
6
- import { useRef as useRef2, useState } from "react";
7
- import Box2 from "@mui/material/Box";
8
- import Typography2 from "@mui/material/Typography";
9
- import useMediaQuery from "@mui/material/useMediaQuery";
10
-
11
- // src/molecules/OraculoCarousel/OraculoCarousel.tsx
12
- import {
13
- forwardRef,
14
- useCallback,
15
- useImperativeHandle,
16
- useRef
17
- } from "react";
18
- import {
19
- Splide as SplideRaw,
20
- SplideSlide as SplideSlideRaw
21
- } from "@splidejs/react-splide";
22
- import { jsx } from "react/jsx-runtime";
23
- var Splide = SplideRaw;
24
- var SplideSlide = SplideSlideRaw;
25
- var OraculoCarousel = forwardRef(
26
- ({
27
- items = [],
28
- renderItem,
29
- perPage = 1,
30
- gap = "0px",
31
- breakpoints,
32
- options = {},
33
- className = "",
34
- onMove
35
- }, ref) => {
36
- const splideRef = useRef(null);
37
- useImperativeHandle(ref, () => ({
38
- next: () => {
39
- var _a;
40
- return (_a = splideRef.current) == null ? void 0 : _a.go(">");
41
- },
42
- prev: () => {
43
- var _a;
44
- return (_a = splideRef.current) == null ? void 0 : _a.go("<");
45
- },
46
- go: (index) => {
47
- var _a;
48
- return (_a = splideRef.current) == null ? void 0 : _a.go(index);
49
- }
50
- }));
51
- const handleMove = useCallback(
52
- (splide) => {
53
- const index = splide.index;
54
- const total = splide.length;
55
- const currentPerPage = splide.options.perPage || 1;
56
- const isStart = index === 0;
57
- const isEnd = index >= total - currentPerPage;
58
- onMove == null ? void 0 : onMove({ index, isStart, isEnd, total });
59
- },
60
- [onMove]
61
- );
62
- const handleMounted = useCallback(
63
- (splide) => {
64
- handleMove(splide);
65
- },
66
- [handleMove]
67
- );
68
- const mergedOptions = {
69
- type: "slide",
70
- trimSpace: false,
71
- drag: true,
72
- pagination: false,
73
- arrows: false,
74
- rewind: false,
75
- focus: "start",
76
- autoWidth: false,
77
- perPage,
78
- gap,
79
- breakpoints,
80
- ...options
81
- };
82
- return /* @__PURE__ */ jsx("div", { className, style: { width: "100%" }, children: /* @__PURE__ */ jsx(
83
- Splide,
84
- {
85
- ref: splideRef,
86
- options: mergedOptions,
87
- onMove: handleMove,
88
- onMounted: handleMounted,
89
- children: items.map((item, index) => {
90
- var _a;
91
- return /* @__PURE__ */ jsx(SplideSlide, { children: renderItem(item, index) }, (_a = item.id) != null ? _a : index);
92
- })
93
- }
94
- ) });
95
- }
96
- );
97
- var OraculoCarousel_default = OraculoCarousel;
98
-
99
- // src/molecules/OraculoWelcomeBanner/OraculoWelcomeBanner.tsx
100
- import Box from "@mui/material/Box";
101
- import Typography from "@mui/material/Typography";
102
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
103
- var OraculoWelcomeBanner = ({
104
- title,
105
- amount,
106
- subtitle,
107
- buttonText,
108
- onButtonClick,
109
- backgroundImage,
110
- alt,
111
- className = "",
112
- variant = "small"
113
- }) => {
114
- const symbol = amount ? amount.slice(0, 2) : "";
115
- const value = amount ? amount.slice(2) : "";
116
- const isLarge = variant === "large";
117
- return /* @__PURE__ */ jsxs(
118
- Box,
119
- {
120
- className,
121
- sx: {
122
- position: "relative",
123
- width: "100%",
124
- maxWidth: {
125
- xs: 328,
126
- lg: isLarge ? 618 : 456
127
- },
128
- mx: "auto"
129
- },
130
- children: [
131
- backgroundImage && /* @__PURE__ */ jsx2(
132
- Box,
133
- {
134
- sx: {
135
- position: "relative",
136
- width: "100%",
137
- aspectRatio: {
138
- xs: "328 / 188",
139
- lg: isLarge ? "618 / 346" : "456 / 272"
140
- },
141
- borderRadius: "14px",
142
- overflow: "hidden"
143
- },
144
- children: /* @__PURE__ */ jsx2(
145
- Box,
146
- {
147
- component: "img",
148
- src: backgroundImage,
149
- alt: alt != null ? alt : "Fondo promocional",
150
- sx: {
151
- width: "100%",
152
- height: "100%",
153
- objectFit: "cover",
154
- objectPosition: {
155
- xs: "50% 0%",
156
- lg: "45% 0%"
157
- },
158
- display: "block"
159
- }
160
- }
161
- )
162
- }
163
- ),
164
- /* @__PURE__ */ jsx2(
165
- Box,
166
- {
167
- sx: {
168
- position: "absolute",
169
- inset: 0,
170
- display: "flex",
171
- alignItems: "center",
172
- justifyContent: "flex-end",
173
- color: "#e7f8ff",
174
- textAlign: "center",
175
- pl: "14%",
176
- pr: { xs: "14%", lg: "15%" }
177
- },
178
- children: /* @__PURE__ */ jsxs(
179
- Box,
180
- {
181
- sx: {
182
- maxWidth: "60%",
183
- display: "flex",
184
- flexDirection: "column",
185
- alignItems: "center"
186
- },
187
- children: [
188
- title && /* @__PURE__ */ jsx2(
189
- Typography,
190
- {
191
- sx: {
192
- fontSize: { xs: 12, lg: 20 },
193
- fontWeight: 400,
194
- color: "#e7f8ff"
195
- },
196
- children: title
197
- }
198
- ),
199
- amount && /* @__PURE__ */ jsxs(
200
- Box,
201
- {
202
- component: "p",
203
- sx: {
204
- fontFamily: '"secondary", sans-serif',
205
- lineHeight: { xs: 0.9, lg: 0.87 },
206
- m: "4px 0",
207
- background: "linear-gradient(175deg, #EDC421 -12.56%, #FFFABF 17.99%, #EDC421 49.74%)",
208
- WebkitBackgroundClip: "text",
209
- WebkitTextFillColor: "transparent",
210
- WebkitTextStroke: "0.5px #fff8c1",
211
- filter: "drop-shadow(0px 4px 0px #8D4406) drop-shadow(0px 4px 4px rgba(28, 28, 28, 0.4))",
212
- display: "flex",
213
- alignItems: "baseline",
214
- justifyContent: "center"
215
- },
216
- children: [
217
- /* @__PURE__ */ jsx2(
218
- Box,
219
- {
220
- component: "span",
221
- sx: { fontSize: { xs: 35, lg: 48 }, mr: 0.5 },
222
- children: symbol
223
- }
224
- ),
225
- /* @__PURE__ */ jsx2(
226
- Box,
227
- {
228
- component: "span",
229
- sx: { fontSize: { xs: 52, lg: 77 } },
230
- children: value
231
- }
232
- )
233
- ]
234
- }
235
- ),
236
- subtitle && /* @__PURE__ */ jsx2(
237
- Typography,
238
- {
239
- sx: {
240
- pb: "20px",
241
- fontSize: 14,
242
- fontWeight: 600,
243
- color: "#e7f8ff"
244
- },
245
- children: subtitle
246
- }
247
- ),
248
- buttonText && /* @__PURE__ */ jsx2(OraculoButton, { onClick: onButtonClick, children: buttonText })
249
- ]
250
- }
251
- )
252
- }
253
- )
254
- ]
255
- }
256
- );
257
- };
258
- var OraculoWelcomeBanner_default = OraculoWelcomeBanner;
259
-
260
- // src/atoms/OraculoCarouselDots/OraculoCarouselDots.tsx
261
- import { jsx as jsx3 } from "react/jsx-runtime";
262
- var OraculoCarouselDots = ({
263
- total,
264
- active,
265
- onSelect,
266
- className = ""
267
- }) => {
268
- if (total <= 1) return null;
269
- const rootClass = ["orc-dots", className].filter(Boolean).join(" ");
270
- 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(
271
- "button",
272
- {
273
- type: "button",
274
- role: "tab",
275
- "aria-selected": i === active,
276
- "aria-label": `Ir al slide ${i + 1}`,
277
- className: "orc-dots__dot" + (i === active ? " orc-dots__dot--active" : ""),
278
- onClick: () => onSelect == null ? void 0 : onSelect(i)
279
- }
280
- ) }, i)) });
281
- };
282
- var OraculoCarouselDots_default = OraculoCarouselDots;
283
-
284
- // src/organisms/OraculoSeccionBonoBienvenida/OraculoSeccionBonoBienvenida.tsx
285
- import { Fragment, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
286
- var buildSectionSx = (bgUrl) => ({
287
- width: "100vw",
288
- position: "relative",
289
- left: "50%",
290
- right: "50%",
291
- marginLeft: "-50vw",
292
- marginRight: "-50vw",
293
- py: 8,
294
- color: "#fff",
295
- backgroundImage: `
296
- linear-gradient(to bottom,#121212 0%, rgba(18,18,18,0) 10%),
297
- linear-gradient(to top, #121212 0%, rgba(18,18,18,0) 10%),
298
- linear-gradient(to left, #121212 0%, rgba(18,18,18,0) 10%),
299
- linear-gradient(to right, #121212 0%, rgba(18,18,18,0) 10%),
300
- url("${bgUrl}")
301
- `,
302
- backgroundRepeat: "no-repeat",
303
- backgroundPosition: "center",
304
- backgroundSize: "cover"
305
- });
306
- var headlineBaseSx = {
307
- textAlign: "center",
308
- lineHeight: 1.1,
309
- mb: 1.5
310
- };
311
- var hlTopSx = {
312
- display: "inline-block",
313
- fontWeight: 600,
314
- fontSize: 24
315
- };
316
- var hlBottomSx = {
317
- display: "inline-block",
318
- fontSize: 24,
319
- lineHeight: 1.1,
320
- WebkitTextStroke: "0.3px rgba(255, 255, 255, .5)",
321
- textShadow: `
322
- 0 0 2px rgba(255, 255, 255, .95),
323
- 0 0 6px rgba(255, 255, 255, .6),
324
- 0 1px 0 rgba(137, 137, 137, .85)
325
- `
326
- };
327
- var OraculoSeccionBonoBienvenida = ({
328
- headline,
329
- items,
330
- backgroundImageUrl
331
- }) => {
332
- const [hl1 = "", hl2 = ""] = (headline || "").split("\n");
333
- const isMobile = useMediaQuery("(max-width: 767px)");
334
- const showDots = items.length > 1;
335
- const bgUrl = backgroundImageUrl != null ? backgroundImageUrl : "/assets/img/home/BonoBienvenida/Fondobg.png";
336
- const sectionSx = buildSectionSx(bgUrl);
337
- const carouselRef = useRef2(null);
338
- const [navState, setNavState] = useState({ isStart: true, isEnd: false });
339
- const [activeIndex, setActiveIndex] = useState(0);
340
- if (isMobile) {
341
- return /* @__PURE__ */ jsxs2(
342
- Box2,
343
- {
344
- component: "section",
345
- sx: {
346
- ...sectionSx,
347
- textAlign: "center"
348
- },
349
- children: [
350
- (hl1 || hl2) && /* @__PURE__ */ jsxs2(Box2, { sx: headlineBaseSx, children: [
351
- hl1 && /* @__PURE__ */ jsx4(Typography2, { component: "span", sx: hlTopSx, children: hl1 }),
352
- hl2 && /* @__PURE__ */ jsxs2(Fragment, { children: [
353
- /* @__PURE__ */ jsx4("br", {}),
354
- /* @__PURE__ */ jsx4(Typography2, { component: "span", sx: hlBottomSx, children: hl2 })
355
- ] })
356
- ] }),
357
- /* @__PURE__ */ jsxs2(Box2, { children: [
358
- /* @__PURE__ */ jsx4(
359
- OraculoCarousel_default,
360
- {
361
- ref: carouselRef,
362
- items,
363
- perPage: 1,
364
- gap: "12px",
365
- breakpoints: {
366
- 480: {
367
- perPage: 1,
368
- gap: "8px",
369
- padding: { left: "8px", right: "8px" }
370
- },
371
- 768: {
372
- perPage: 1,
373
- gap: "12px",
374
- padding: { left: "8px", right: "8px" }
375
- }
376
- },
377
- options: {
378
- autoWidth: false
379
- },
380
- renderItem: (it) => /* @__PURE__ */ jsx4(OraculoWelcomeBanner_default, { ...it, onButtonClick: items[0].onButtonClick }),
381
- onMove: ({ index, isStart, isEnd }) => {
382
- setNavState({ isStart, isEnd });
383
- setActiveIndex(index);
384
- }
385
- }
386
- ),
387
- showDots && /* @__PURE__ */ jsx4(
388
- OraculoCarouselDots_default,
389
- {
390
- total: items.length,
391
- active: activeIndex,
392
- onSelect: (i) => {
393
- var _a;
394
- setActiveIndex(i);
395
- (_a = carouselRef.current) == null ? void 0 : _a.go(i);
396
- }
397
- }
398
- )
399
- ] })
400
- ]
401
- }
402
- );
403
- }
404
- return /* @__PURE__ */ jsx4(Box2, { component: "section", sx: sectionSx, children: /* @__PURE__ */ jsxs2(
405
- Box2,
406
- {
407
- sx: {
408
- maxWidth: 1200,
409
- mx: 5,
410
- px: 2,
411
- display: "grid",
412
- gridTemplateColumns: "200px auto",
413
- alignItems: "center"
414
- },
415
- children: [
416
- (hl1 || hl2) && /* @__PURE__ */ jsx4(
417
- Box2,
418
- {
419
- sx: {
420
- display: "flex",
421
- alignItems: "center",
422
- justifyContent: "flex-start",
423
- minHeight: "100%"
424
- },
425
- children: /* @__PURE__ */ jsxs2(
426
- Box2,
427
- {
428
- sx: {
429
- ...headlineBaseSx,
430
- textAlign: "left",
431
- mb: 0
432
- },
433
- children: [
434
- hl1 && /* @__PURE__ */ jsx4(Typography2, { component: "span", sx: hlTopSx, children: hl1 }),
435
- hl2 && /* @__PURE__ */ jsxs2(Fragment, { children: [
436
- /* @__PURE__ */ jsx4("br", {}),
437
- /* @__PURE__ */ jsx4(Typography2, { component: "span", sx: hlBottomSx, children: hl2 })
438
- ] })
439
- ]
440
- }
441
- )
442
- }
443
- ),
444
- /* @__PURE__ */ jsx4(
445
- Box2,
446
- {
447
- sx: {
448
- display: "flex",
449
- justifyContent: "center",
450
- alignItems: "center",
451
- flexWrap: "nowrap",
452
- gap: 4
453
- },
454
- children: items.map((it, idx) => /* @__PURE__ */ jsx4(
455
- OraculoWelcomeBanner_default,
456
- {
457
- onButtonClick: it.onButtonClick,
458
- ...it
459
- },
460
- idx
461
- ))
462
- }
463
- )
464
- ]
465
- }
466
- ) });
467
- };
468
- var OraculoSeccionBonoBienvenida_default = OraculoSeccionBonoBienvenida;
469
-
470
- export {
471
- OraculoCarouselDots_default,
472
- OraculoCarousel_default,
473
- OraculoWelcomeBanner_default,
474
- OraculoSeccionBonoBienvenida_default
475
- };
476
- //# sourceMappingURL=chunk-PYHDJZX3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/organisms/OraculoSeccionBonoBienvenida/OraculoSeccionBonoBienvenida.tsx","../src/molecules/OraculoCarousel/OraculoCarousel.tsx","../src/molecules/OraculoWelcomeBanner/OraculoWelcomeBanner.tsx","../src/atoms/OraculoCarouselDots/OraculoCarouselDots.tsx"],"sourcesContent":["import React, { useRef, useState } from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport Typography from \"@mui/material/Typography\";\r\nimport useMediaQuery from \"@mui/material/useMediaQuery\";\r\n\r\nimport OraculoCarousel, {\r\n OraculoCarouselRef,\r\n} from \"../../molecules/OraculoCarousel/OraculoCarousel\";\r\nimport OraculoWelcomeBanner, {\r\n OraculoWelcomeBannerProps,\r\n} from \"../../molecules/OraculoWelcomeBanner/OraculoWelcomeBanner\";\r\nimport OraculoCarouselDots from \"../../atoms/OraculoCarouselDots/OraculoCarouselDots\";\r\nimport { OraculoSeccionBonoProps } from \"../../interfaces/oraculo/InterfaceBonos\";\r\n\r\nconst buildSectionSx = (bgUrl: string) => ({\r\n width: \"100vw\",\r\n position: \"relative\" as const,\r\n left: \"50%\",\r\n right: \"50%\",\r\n marginLeft: \"-50vw\",\r\n marginRight: \"-50vw\",\r\n py: 8,\r\n color: \"#fff\",\r\n backgroundImage: `\r\n linear-gradient(to bottom,#121212 0%, rgba(18,18,18,0) 10%),\r\n linear-gradient(to top, #121212 0%, rgba(18,18,18,0) 10%),\r\n linear-gradient(to left, #121212 0%, rgba(18,18,18,0) 10%),\r\n linear-gradient(to right, #121212 0%, rgba(18,18,18,0) 10%),\r\n url(\"${bgUrl}\")\r\n `,\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundPosition: \"center\",\r\n backgroundSize: \"cover\",\r\n});\r\n\r\nconst headlineBaseSx = {\r\n textAlign: \"center\" as const,\r\n lineHeight: 1.1,\r\n mb: 1.5,\r\n};\r\n\r\nconst hlTopSx = {\r\n display: \"inline-block\",\r\n fontWeight: 600,\r\n fontSize: 24,\r\n};\r\n\r\nconst hlBottomSx = {\r\n display: \"inline-block\",\r\n fontSize: 24,\r\n lineHeight: 1.1,\r\n WebkitTextStroke: \"0.3px rgba(255, 255, 255, .5)\",\r\n textShadow: `\r\n 0 0 2px rgba(255, 255, 255, .95),\r\n 0 0 6px rgba(255, 255, 255, .6),\r\n 0 1px 0 rgba(137, 137, 137, .85)\r\n `,\r\n};\r\n\r\nconst OraculoSeccionBonoBienvenida: React.FC<OraculoSeccionBonoProps> = ({\r\n headline,\r\n items,\r\n backgroundImageUrl,\r\n}) => {\r\n const [hl1 = \"\", hl2 = \"\"] = (headline || \"\").split(\"\\n\");\r\n const isMobile = useMediaQuery(\"(max-width: 767px)\");\r\n const showDots = items.length > 1;\r\n\r\n const bgUrl =\r\n backgroundImageUrl ?? \"/assets/img/home/BonoBienvenida/Fondobg.png\";\r\n const sectionSx = buildSectionSx(bgUrl);\r\n\r\n const carouselRef = useRef<OraculoCarouselRef | null>(null);\r\n const [navState, setNavState] = useState({ isStart: true, isEnd: false });\r\n const [activeIndex, setActiveIndex] = useState(0);\r\n\r\n // --- MOBILE: Carrusel con dots ---\r\n if (isMobile) {\r\n return (\r\n <Box\r\n component=\"section\"\r\n sx={{\r\n ...sectionSx,\r\n textAlign: \"center\",\r\n }}\r\n >\r\n {(hl1 || hl2) && (\r\n <Box sx={headlineBaseSx}>\r\n {hl1 && (\r\n <Typography component=\"span\" sx={hlTopSx}>\r\n {hl1}\r\n </Typography>\r\n )}\r\n {hl2 && (\r\n <>\r\n <br />\r\n <Typography component=\"span\" sx={hlBottomSx}>\r\n {hl2}\r\n </Typography>\r\n </>\r\n )}\r\n </Box>\r\n )}\r\n\r\n <Box>\r\n <OraculoCarousel\r\n ref={carouselRef}\r\n items={items}\r\n perPage={1}\r\n gap=\"12px\"\r\n breakpoints={{\r\n 480: {\r\n perPage: 1,\r\n gap: \"8px\",\r\n padding: { left: \"8px\", right: \"8px\" },\r\n },\r\n 768: {\r\n perPage: 1,\r\n gap: \"12px\",\r\n padding: { left: \"8px\", right: \"8px\" },\r\n },\r\n }}\r\n options={{\r\n autoWidth: false,\r\n }}\r\n renderItem={(it) => <OraculoWelcomeBanner {...it} onButtonClick={items[0].onButtonClick} />}\r\n onMove={({ index, isStart, isEnd }) => {\r\n setNavState({ isStart, isEnd });\r\n setActiveIndex(index);\r\n }}\r\n />\r\n\r\n {showDots && (\r\n <OraculoCarouselDots\r\n total={items.length}\r\n active={activeIndex}\r\n onSelect={(i) => {\r\n setActiveIndex(i);\r\n carouselRef.current?.go(i);\r\n }}\r\n />\r\n )}\r\n </Box>\r\n </Box>\r\n );\r\n }\r\n\r\n // --- DESKTOP ---\r\n return (\r\n <Box component=\"section\" sx={sectionSx}>\r\n <Box\r\n sx={{\r\n maxWidth: 1200,\r\n mx: 5,\r\n px: 2,\r\n display: \"grid\",\r\n gridTemplateColumns: \"200px auto\",\r\n alignItems: \"center\",\r\n }}\r\n >\r\n {(hl1 || hl2) && (\r\n <Box\r\n sx={{\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"flex-start\",\r\n minHeight: \"100%\",\r\n }}\r\n >\r\n <Box\r\n sx={{\r\n ...headlineBaseSx,\r\n textAlign: \"left\",\r\n mb: 0,\r\n }}\r\n >\r\n {hl1 && (\r\n <Typography component=\"span\" sx={hlTopSx}>\r\n {hl1}\r\n </Typography>\r\n )}\r\n {hl2 && (\r\n <>\r\n <br />\r\n <Typography component=\"span\" sx={hlBottomSx}>\r\n {hl2}\r\n </Typography>\r\n </>\r\n )}\r\n </Box>\r\n </Box>\r\n )}\r\n\r\n <Box\r\n sx={{\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n flexWrap: \"nowrap\",\r\n gap: 4,\r\n }}\r\n >\r\n {items.map((it, idx) => (\r\n <OraculoWelcomeBanner\r\n key={idx}\r\n onButtonClick={it.onButtonClick}\r\n {...it}\r\n />\r\n ))}\r\n </Box>\r\n </Box>\r\n </Box>\r\n );\r\n};\r\n\r\nexport default OraculoSeccionBonoBienvenida;\r\n","// src/molecules/OraculoCarousel/OraculoCarousel.tsx\r\nimport React, {\r\n forwardRef,\r\n useCallback,\r\n useImperativeHandle,\r\n useRef,\r\n ReactNode,\r\n} from \"react\";\r\nimport {\r\n Splide as SplideRaw,\r\n SplideSlide as SplideSlideRaw,\r\n} from \"@splidejs/react-splide\";\r\n\r\nexport interface OraculoCarouselOptions {\r\n type?: string;\r\n perPage?: number;\r\n gap?: string;\r\n pagination?: boolean;\r\n arrows?: boolean;\r\n drag?: boolean;\r\n focus?: string | \"center\";\r\n autoWidth?: boolean;\r\n trimSpace?: boolean;\r\n rewind?: boolean;\r\n padding?: { left?: string; right?: string };\r\n breakpoints?: Record<string | number, OraculoCarouselOptions>;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface OraculoCarouselRef {\r\n next: () => void;\r\n prev: () => void;\r\n go: (index: number | string) => void;\r\n}\r\n\r\nexport interface OraculoCarouselProps<T = any> {\r\n items: T[];\r\n renderItem: (item: T, index: number) => ReactNode;\r\n perPage?: number;\r\n gap?: string;\r\n breakpoints?: Record<string | number, OraculoCarouselOptions>;\r\n options?: OraculoCarouselOptions;\r\n className?: string;\r\n onMove?: (info: {\r\n index: number;\r\n isStart: boolean;\r\n isEnd: boolean;\r\n total: number;\r\n }) => void;\r\n}\r\n\r\n// 👇 Aislamos tipos de Splide: internamente es any, hacia afuera tu API está tipada\r\nconst Splide: any = SplideRaw;\r\nconst SplideSlide: any = SplideSlideRaw;\r\n\r\nconst OraculoCarousel = forwardRef<OraculoCarouselRef, OraculoCarouselProps<any>>(\r\n (\r\n {\r\n items = [],\r\n renderItem,\r\n perPage = 1,\r\n gap = \"0px\",\r\n breakpoints,\r\n options = {},\r\n className = \"\",\r\n onMove,\r\n },\r\n ref\r\n ) => {\r\n const splideRef = useRef<any>(null);\r\n\r\n useImperativeHandle(ref, () => ({\r\n next: () => splideRef.current?.go(\">\"),\r\n prev: () => splideRef.current?.go(\"<\"),\r\n go: (index) => splideRef.current?.go(index),\r\n }));\r\n\r\n const handleMove = useCallback(\r\n (splide: any) => {\r\n const index = splide.index;\r\n const total = splide.length;\r\n const currentPerPage = splide.options.perPage || 1;\r\n const isStart = index === 0;\r\n const isEnd = index >= total - currentPerPage;\r\n\r\n onMove?.({ index, isStart, isEnd, total });\r\n },\r\n [onMove]\r\n );\r\n\r\n const handleMounted = useCallback(\r\n (splide: any) => {\r\n handleMove(splide);\r\n },\r\n [handleMove]\r\n );\r\n\r\n const mergedOptions: OraculoCarouselOptions = {\r\n type: \"slide\",\r\n trimSpace: false,\r\n drag: true,\r\n pagination: false,\r\n arrows: false,\r\n rewind: false,\r\n focus: \"start\",\r\n autoWidth: false,\r\n perPage,\r\n gap,\r\n breakpoints,\r\n ...options,\r\n };\r\n\r\n return (\r\n <div className={className} style={{ width: \"100%\" }}>\r\n <Splide\r\n ref={splideRef}\r\n options={mergedOptions}\r\n onMove={handleMove}\r\n onMounted={handleMounted}\r\n >\r\n {items.map((item, index) => (\r\n <SplideSlide key={(item as any).id ?? index}>\r\n {renderItem(item, index)}\r\n </SplideSlide>\r\n ))}\r\n </Splide>\r\n </div>\r\n );\r\n }\r\n);\r\n\r\nexport default OraculoCarousel;\r\n","import React from \"react\";\r\nimport Box from \"@mui/material/Box\";\r\nimport Typography from \"@mui/material/Typography\";\r\nimport OraculoButton from \"../../atoms/OraculoButton/OraculoButton\";\r\n\r\nexport interface OraculoWelcomeBannerProps {\r\n title?: string;\r\n amount?: string; // ej: \"S/40\"\r\n subtitle?: string;\r\n buttonText?: string;\r\n onButtonClick?: () => void;\r\n backgroundImage?: string;\r\n alt?: string;\r\n className?: string;\r\n /** Tamaño en desktop: \"small\" (456x272) o \"large\" (618x346) */\r\n variant?: \"small\" | \"large\";\r\n}\r\n\r\nconst OraculoWelcomeBanner: React.FC<OraculoWelcomeBannerProps> = ({\r\n title,\r\n amount,\r\n subtitle,\r\n buttonText,\r\n onButtonClick,\r\n backgroundImage,\r\n alt,\r\n className = \"\",\r\n variant = \"small\",\r\n}) => {\r\n const symbol = amount ? amount.slice(0, 2) : \"\";\r\n const value = amount ? amount.slice(2) : \"\";\r\n const isLarge = variant === \"large\";\r\n\r\n return (\r\n <Box\r\n className={className}\r\n sx={{\r\n position: \"relative\",\r\n width: \"100%\",\r\n maxWidth: {\r\n xs: 328,\r\n lg: isLarge ? 618 : 456,\r\n },\r\n mx: \"auto\",\r\n }}\r\n >\r\n {backgroundImage && (\r\n <Box\r\n sx={{\r\n position: \"relative\",\r\n width: \"100%\",\r\n aspectRatio: {\r\n xs: \"328 / 188\",\r\n lg: isLarge ? \"618 / 346\" : \"456 / 272\",\r\n },\r\n borderRadius: \"14px\",\r\n overflow: \"hidden\",\r\n }}\r\n >\r\n <Box\r\n component=\"img\"\r\n src={backgroundImage}\r\n alt={alt ?? \"Fondo promocional\"}\r\n sx={{\r\n width: \"100%\",\r\n height: \"100%\",\r\n objectFit: \"cover\",\r\n objectPosition: {\r\n xs: \"50% 0%\",\r\n lg: \"45% 0%\",\r\n },\r\n display: \"block\",\r\n }}\r\n />\r\n </Box>\r\n )}\r\n\r\n {/* Capa de contenido */}\r\n <Box\r\n sx={{\r\n position: \"absolute\",\r\n inset: 0,\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"flex-end\",\r\n color: \"#e7f8ff\",\r\n textAlign: \"center\",\r\n pl: \"14%\",\r\n pr: { xs: \"14%\", lg: \"15%\" },\r\n }}\r\n >\r\n <Box\r\n sx={{\r\n maxWidth: \"60%\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n alignItems: \"center\",\r\n }}\r\n >\r\n {/* Título superior */}\r\n {title && (\r\n <Typography\r\n sx={{\r\n fontSize: { xs: 12, lg: 20 },\r\n fontWeight: 400,\r\n color: \"#e7f8ff\",\r\n }}\r\n >\r\n {title}\r\n </Typography>\r\n )}\r\n\r\n {/* Monto */}\r\n {amount && (\r\n <Box\r\n component=\"p\"\r\n sx={{\r\n fontFamily: '\"secondary\", sans-serif',\r\n lineHeight: { xs: 0.9, lg: 0.87 },\r\n m: \"4px 0\",\r\n background:\r\n \"linear-gradient(175deg, #EDC421 -12.56%, #FFFABF 17.99%, #EDC421 49.74%)\",\r\n WebkitBackgroundClip: \"text\",\r\n WebkitTextFillColor: \"transparent\",\r\n WebkitTextStroke: \"0.5px #fff8c1\",\r\n filter:\r\n \"drop-shadow(0px 4px 0px #8D4406) drop-shadow(0px 4px 4px rgba(28, 28, 28, 0.4))\",\r\n display: \"flex\",\r\n alignItems: \"baseline\",\r\n justifyContent: \"center\",\r\n }}\r\n >\r\n <Box\r\n component=\"span\"\r\n sx={{ fontSize: { xs: 35, lg: 48 }, mr: 0.5 }}\r\n >\r\n {symbol}\r\n </Box>\r\n <Box\r\n component=\"span\"\r\n sx={{ fontSize: { xs: 52, lg: 77 } }}\r\n >\r\n {value}\r\n </Box>\r\n </Box>\r\n )}\r\n\r\n {/* Subtítulo */}\r\n {subtitle && (\r\n <Typography\r\n sx={{\r\n pb: \"20px\",\r\n fontSize: 14,\r\n fontWeight: 600,\r\n color: \"#e7f8ff\",\r\n }}\r\n >\r\n {subtitle}\r\n </Typography>\r\n )}\r\n\r\n {/* Botón */}\r\n {buttonText && (\r\n <OraculoButton onClick={onButtonClick}>\r\n {buttonText}\r\n </OraculoButton>\r\n )}\r\n </Box>\r\n </Box>\r\n </Box>\r\n );\r\n};\r\n\r\nexport default OraculoWelcomeBanner;\r\n","import React from \"react\";\r\nimport \"./OraculoCarouselDots.css\";\r\n\r\nexport interface OraculoCarouselDotsProps {\r\n total: number;\r\n active: number;\r\n onSelect?: (index: number) => void;\r\n className?: string;\r\n}\r\n\r\nconst OraculoCarouselDots: React.FC<OraculoCarouselDotsProps> = ({\r\n total,\r\n active,\r\n onSelect,\r\n className = \"\",\r\n}) => {\r\n if (total <= 1) return null;\r\n\r\n const rootClass = [\"orc-dots\", className].filter(Boolean).join(\" \");\r\n\r\n return (\r\n <div className={rootClass} role=\"tablist\">\r\n {Array.from({ length: total }).map((_, i) => (\r\n <span key={i} className=\"orc-dots__cell\">\r\n <button\r\n type=\"button\"\r\n role=\"tab\"\r\n aria-selected={i === active}\r\n aria-label={`Ir al slide ${i + 1}`}\r\n className={\r\n \"orc-dots__dot\" +\r\n (i === active ? \" orc-dots__dot--active\" : \"\")\r\n }\r\n onClick={() => onSelect?.(i)}\r\n />\r\n </span>\r\n ))}\r\n </div>\r\n );\r\n};\r\n\r\nexport default OraculoCarouselDots;\r\n"],"mappings":";;;;;AAAA,SAAgB,UAAAA,SAAQ,gBAAgB;AACxC,OAAOC,UAAS;AAChB,OAAOC,iBAAgB;AACvB,OAAO,mBAAmB;;;ACF1B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OAEK;AACP;AAAA,EACE,UAAU;AAAA,EACV,eAAe;AAAA,OACV;AA8GK;AArEZ,IAAM,SAAc;AACpB,IAAM,cAAmB;AAEzB,IAAM,kBAAkB;AAAA,EACtB,CACE;AAAA,IACE,QAAQ,CAAC;AAAA,IACT;AAAA,IACA,UAAU;AAAA,IACV,MAAM;AAAA,IACN;AAAA,IACA,UAAU,CAAC;AAAA,IACX,YAAY;AAAA,IACZ;AAAA,EACF,GACA,QACG;AACH,UAAM,YAAY,OAAY,IAAI;AAElC,wBAAoB,KAAK,OAAO;AAAA,MAC9B,MAAM,MAAG;AAxEf;AAwEkB,+BAAU,YAAV,mBAAmB,GAAG;AAAA;AAAA,MAClC,MAAM,MAAG;AAzEf;AAyEkB,+BAAU,YAAV,mBAAmB,GAAG;AAAA;AAAA,MAClC,IAAI,CAAC,UAAO;AA1ElB;AA0EqB,+BAAU,YAAV,mBAAmB,GAAG;AAAA;AAAA,IACvC,EAAE;AAEF,UAAM,aAAa;AAAA,MACjB,CAAC,WAAgB;AACf,cAAM,QAAQ,OAAO;AACrB,cAAM,QAAQ,OAAO;AACrB,cAAM,iBAAiB,OAAO,QAAQ,WAAW;AACjD,cAAM,UAAU,UAAU;AAC1B,cAAM,QAAQ,SAAS,QAAQ;AAE/B,yCAAS,EAAE,OAAO,SAAS,OAAO,MAAM;AAAA,MAC1C;AAAA,MACA,CAAC,MAAM;AAAA,IACT;AAEA,UAAM,gBAAgB;AAAA,MACpB,CAAC,WAAgB;AACf,mBAAW,MAAM;AAAA,MACnB;AAAA,MACA,CAAC,UAAU;AAAA,IACb;AAEA,UAAM,gBAAwC;AAAA,MAC5C,MAAM;AAAA,MACN,WAAW;AAAA,MACX,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,WAAW;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IACL;AAEA,WACE,oBAAC,SAAI,WAAsB,OAAO,EAAE,OAAO,OAAO,GAChD;AAAA,MAAC;AAAA;AAAA,QACC,KAAK;AAAA,QACL,SAAS;AAAA,QACT,QAAQ;AAAA,QACR,WAAW;AAAA,QAEV,gBAAM,IAAI,CAAC,MAAM,UAAO;AAxHnC;AAyHY,qCAAC,eACE,qBAAW,MAAM,KAAK,MADN,UAAa,OAAb,YAAmB,KAEtC;AAAA,SACD;AAAA;AAAA,IACH,GACF;AAAA,EAEJ;AACF;AAEA,IAAO,0BAAQ;;;AClIf,OAAO,SAAS;AAChB,OAAO,gBAAgB;AAyDb,gBAAAC,MAuDE,YAvDF;AAzCV,IAAM,uBAA4D,CAAC;AAAA,EACjE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AAAA,EACZ,UAAU;AACZ,MAAM;AACJ,QAAM,SAAS,SAAS,OAAO,MAAM,GAAG,CAAC,IAAI;AAC7C,QAAM,QAAQ,SAAS,OAAO,MAAM,CAAC,IAAI;AACzC,QAAM,UAAU,YAAY;AAE5B,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,IAAI;AAAA,QACF,UAAU;AAAA,QACV,OAAO;AAAA,QACP,UAAU;AAAA,UACR,IAAI;AAAA,UACJ,IAAI,UAAU,MAAM;AAAA,QACtB;AAAA,QACA,IAAI;AAAA,MACN;AAAA,MAEC;AAAA,2BACC,gBAAAA;AAAA,UAAC;AAAA;AAAA,YACC,IAAI;AAAA,cACF,UAAU;AAAA,cACV,OAAO;AAAA,cACP,aAAa;AAAA,gBACX,IAAI;AAAA,gBACJ,IAAI,UAAU,cAAc;AAAA,cAC9B;AAAA,cACA,cAAc;AAAA,cACd,UAAU;AAAA,YACZ;AAAA,YAEA,0BAAAA;AAAA,cAAC;AAAA;AAAA,gBACC,WAAU;AAAA,gBACV,KAAK;AAAA,gBACL,KAAK,oBAAO;AAAA,gBACZ,IAAI;AAAA,kBACF,OAAO;AAAA,kBACP,QAAQ;AAAA,kBACR,WAAW;AAAA,kBACX,gBAAgB;AAAA,oBACd,IAAI;AAAA,oBACJ,IAAI;AAAA,kBACN;AAAA,kBACA,SAAS;AAAA,gBACX;AAAA;AAAA,YACF;AAAA;AAAA,QACF;AAAA,QAIF,gBAAAA;AAAA,UAAC;AAAA;AAAA,YACC,IAAI;AAAA,cACF,UAAU;AAAA,cACV,OAAO;AAAA,cACP,SAAS;AAAA,cACT,YAAY;AAAA,cACZ,gBAAgB;AAAA,cAChB,OAAO;AAAA,cACP,WAAW;AAAA,cACX,IAAI;AAAA,cACJ,IAAI,EAAE,IAAI,OAAO,IAAI,MAAM;AAAA,YAC7B;AAAA,YAEA;AAAA,cAAC;AAAA;AAAA,gBACC,IAAI;AAAA,kBACF,UAAU;AAAA,kBACV,SAAS;AAAA,kBACT,eAAe;AAAA,kBACf,YAAY;AAAA,gBACd;AAAA,gBAGC;AAAA,2BACC,gBAAAA;AAAA,oBAAC;AAAA;AAAA,sBACC,IAAI;AAAA,wBACF,UAAU,EAAE,IAAI,IAAI,IAAI,GAAG;AAAA,wBAC3B,YAAY;AAAA,wBACZ,OAAO;AAAA,sBACT;AAAA,sBAEC;AAAA;AAAA,kBACH;AAAA,kBAID,UACC;AAAA,oBAAC;AAAA;AAAA,sBACC,WAAU;AAAA,sBACV,IAAI;AAAA,wBACF,YAAY;AAAA,wBACZ,YAAY,EAAE,IAAI,KAAK,IAAI,KAAK;AAAA,wBAChC,GAAG;AAAA,wBACH,YACE;AAAA,wBACF,sBAAsB;AAAA,wBACtB,qBAAqB;AAAA,wBACrB,kBAAkB;AAAA,wBAClB,QACE;AAAA,wBACF,SAAS;AAAA,wBACT,YAAY;AAAA,wBACZ,gBAAgB;AAAA,sBAClB;AAAA,sBAEA;AAAA,wCAAAA;AAAA,0BAAC;AAAA;AAAA,4BACC,WAAU;AAAA,4BACV,IAAI,EAAE,UAAU,EAAE,IAAI,IAAI,IAAI,GAAG,GAAG,IAAI,IAAI;AAAA,4BAE3C;AAAA;AAAA,wBACH;AAAA,wBACA,gBAAAA;AAAA,0BAAC;AAAA;AAAA,4BACC,WAAU;AAAA,4BACV,IAAI,EAAE,UAAU,EAAE,IAAI,IAAI,IAAI,GAAG,EAAE;AAAA,4BAElC;AAAA;AAAA,wBACH;AAAA;AAAA;AAAA,kBACF;AAAA,kBAID,YACC,gBAAAA;AAAA,oBAAC;AAAA;AAAA,sBACC,IAAI;AAAA,wBACF,IAAI;AAAA,wBACJ,UAAU;AAAA,wBACV,YAAY;AAAA,wBACZ,OAAO;AAAA,sBACT;AAAA,sBAEC;AAAA;AAAA,kBACH;AAAA,kBAID,cACC,gBAAAA,KAAC,iBAAc,SAAS,eACrB,sBACH;AAAA;AAAA;AAAA,YAEJ;AAAA;AAAA,QACF;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,+BAAQ;;;ACrJL,gBAAAC,YAAA;AAdV,IAAM,sBAA0D,CAAC;AAAA,EAC/D;AAAA,EACA;AAAA,EACA;AAAA,EACA,YAAY;AACd,MAAM;AACJ,MAAI,SAAS,EAAG,QAAO;AAEvB,QAAM,YAAY,CAAC,YAAY,SAAS,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAElE,SACE,gBAAAA,KAAC,SAAI,WAAW,WAAW,MAAK,WAC7B,gBAAM,KAAK,EAAE,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC,GAAG,MACrC,gBAAAA,KAAC,UAAa,WAAU,kBACtB,0BAAAA;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,MAAK;AAAA,MACL,iBAAe,MAAM;AAAA,MACrB,cAAY,eAAe,IAAI,CAAC;AAAA,MAChC,WACE,mBACC,MAAM,SAAS,2BAA2B;AAAA,MAE7C,SAAS,MAAM,qCAAW;AAAA;AAAA,EAC5B,KAXS,CAYX,CACD,GACH;AAEJ;AAEA,IAAO,8BAAQ;;;AHgDD,SAKA,UALA,OAAAC,MAKA,QAAAC,aALA;AA3Ed,IAAM,iBAAiB,CAAC,WAAmB;AAAA,EACzC,OAAO;AAAA,EACP,UAAU;AAAA,EACV,MAAM;AAAA,EACN,OAAO;AAAA,EACP,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,IAAI;AAAA,EACJ,OAAO;AAAA,EACP,iBAAiB;AAAA;AAAA;AAAA;AAAA;AAAA,WAKR,KAAK;AAAA;AAAA,EAEd,kBAAkB;AAAA,EAClB,oBAAoB;AAAA,EACpB,gBAAgB;AAClB;AAEA,IAAM,iBAAiB;AAAA,EACrB,WAAW;AAAA,EACX,YAAY;AAAA,EACZ,IAAI;AACN;AAEA,IAAM,UAAU;AAAA,EACd,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,UAAU;AACZ;AAEA,IAAM,aAAa;AAAA,EACjB,SAAS;AAAA,EACT,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,kBAAkB;AAAA,EAClB,YAAY;AAAA;AAAA;AAAA;AAAA;AAKd;AAEA,IAAM,+BAAkE,CAAC;AAAA,EACvE;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,CAAC,MAAM,IAAI,MAAM,EAAE,KAAK,YAAY,IAAI,MAAM,IAAI;AACxD,QAAM,WAAW,cAAc,oBAAoB;AACnD,QAAM,WAAW,MAAM,SAAS;AAEhC,QAAM,QACJ,kDAAsB;AACxB,QAAM,YAAY,eAAe,KAAK;AAEtC,QAAM,cAAcC,QAAkC,IAAI;AAC1D,QAAM,CAAC,UAAU,WAAW,IAAI,SAAS,EAAE,SAAS,MAAM,OAAO,MAAM,CAAC;AACxE,QAAM,CAAC,aAAa,cAAc,IAAI,SAAS,CAAC;AAGhD,MAAI,UAAU;AACZ,WACE,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,WAAU;AAAA,QACV,IAAI;AAAA,UACF,GAAG;AAAA,UACH,WAAW;AAAA,QACb;AAAA,QAEE;AAAA,kBAAO,QACP,gBAAAF,MAACE,MAAA,EAAI,IAAI,gBACN;AAAA,mBACC,gBAAAH,KAACI,aAAA,EAAW,WAAU,QAAO,IAAI,SAC9B,eACH;AAAA,YAED,OACC,gBAAAH,MAAA,YACE;AAAA,8BAAAD,KAAC,QAAG;AAAA,cACJ,gBAAAA,KAACI,aAAA,EAAW,WAAU,QAAO,IAAI,YAC9B,eACH;AAAA,eACF;AAAA,aAEJ;AAAA,UAGF,gBAAAH,MAACE,MAAA,EACC;AAAA,4BAAAH;AAAA,cAAC;AAAA;AAAA,gBACC,KAAK;AAAA,gBACL;AAAA,gBACA,SAAS;AAAA,gBACT,KAAI;AAAA,gBACJ,aAAa;AAAA,kBACX,KAAK;AAAA,oBACH,SAAS;AAAA,oBACT,KAAK;AAAA,oBACL,SAAS,EAAE,MAAM,OAAO,OAAO,MAAM;AAAA,kBACvC;AAAA,kBACA,KAAK;AAAA,oBACH,SAAS;AAAA,oBACT,KAAK;AAAA,oBACL,SAAS,EAAE,MAAM,OAAO,OAAO,MAAM;AAAA,kBACvC;AAAA,gBACF;AAAA,gBACA,SAAS;AAAA,kBACP,WAAW;AAAA,gBACb;AAAA,gBACA,YAAY,CAAC,OAAO,gBAAAA,KAAC,gCAAsB,GAAG,IAAI,eAAe,MAAM,CAAC,EAAE,eAAe;AAAA,gBACzF,QAAQ,CAAC,EAAE,OAAO,SAAS,MAAM,MAAM;AACrC,8BAAY,EAAE,SAAS,MAAM,CAAC;AAC9B,iCAAe,KAAK;AAAA,gBACtB;AAAA;AAAA,YACF;AAAA,YAEC,YACC,gBAAAA;AAAA,cAAC;AAAA;AAAA,gBACC,OAAO,MAAM;AAAA,gBACb,QAAQ;AAAA,gBACR,UAAU,CAAC,MAAM;AAxI/B;AAyIgB,iCAAe,CAAC;AAChB,oCAAY,YAAZ,mBAAqB,GAAG;AAAA,gBAC1B;AAAA;AAAA,YACF;AAAA,aAEJ;AAAA;AAAA;AAAA,IACF;AAAA,EAEJ;AAGA,SACE,gBAAAA,KAACG,MAAA,EAAI,WAAU,WAAU,IAAI,WAC3B,0BAAAF;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,UAAU;AAAA,QACV,IAAI;AAAA,QACJ,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,qBAAqB;AAAA,QACrB,YAAY;AAAA,MACd;AAAA,MAEE;AAAA,gBAAO,QACP,gBAAAH;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,cACF,SAAS;AAAA,cACT,YAAY;AAAA,cACZ,gBAAgB;AAAA,cAChB,WAAW;AAAA,YACb;AAAA,YAEA,0BAAAF;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,IAAI;AAAA,kBACF,GAAG;AAAA,kBACH,WAAW;AAAA,kBACX,IAAI;AAAA,gBACN;AAAA,gBAEC;AAAA,yBACC,gBAAAH,KAACI,aAAA,EAAW,WAAU,QAAO,IAAI,SAC9B,eACH;AAAA,kBAED,OACC,gBAAAH,MAAA,YACE;AAAA,oCAAAD,KAAC,QAAG;AAAA,oBACJ,gBAAAA,KAACI,aAAA,EAAW,WAAU,QAAO,IAAI,YAC9B,eACH;AAAA,qBACF;AAAA;AAAA;AAAA,YAEJ;AAAA;AAAA,QACF;AAAA,QAGF,gBAAAJ;AAAA,UAACG;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,cACF,SAAS;AAAA,cACT,gBAAgB;AAAA,cAChB,YAAY;AAAA,cACZ,UAAU;AAAA,cACV,KAAK;AAAA,YACP;AAAA,YAEC,gBAAM,IAAI,CAAC,IAAI,QACd,gBAAAH;AAAA,cAAC;AAAA;AAAA,gBAEC,eAAe,GAAG;AAAA,gBACjB,GAAG;AAAA;AAAA,cAFC;AAAA,YAGP,CACD;AAAA;AAAA,QACH;AAAA;AAAA;AAAA,EACF,GACF;AAEJ;AAEA,IAAO,uCAAQ;","names":["useRef","Box","Typography","jsx","jsx","jsx","jsxs","useRef","Box","Typography"]}
@@ -1,6 +0,0 @@
1
- // src/organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.css
2
- var OraculoSeccionClubOlimpo_default = {};
3
-
4
- export {
5
- OraculoSeccionClubOlimpo_default
6
- };
@@ -1,119 +0,0 @@
1
- import {
2
- OraculoButton
3
- } from "./chunk-IGAIIVJZ.mjs";
4
-
5
- // src/organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.tsx
6
- import { useLayoutEffect, useRef } from "react";
7
-
8
- // src/molecules/OraculoClubOlimpoVisual/OraculoClubOlimpoVisual.tsx
9
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
10
- var OraculoClubOlimpoVisual = ({
11
- text,
12
- buttonLabel = "Conoce m\xE1s",
13
- onClick,
14
- imgAlt = "Club Olimpo",
15
- imgSrcMobile,
16
- imgSrcDesktopBg,
17
- imgSrcDesktopLogo
18
- }) => {
19
- return /* @__PURE__ */ jsxs(Fragment, { children: [
20
- /* @__PURE__ */ jsx("div", { className: "orc-co-bgMobile", children: /* @__PURE__ */ jsx(
21
- "img",
22
- {
23
- src: imgSrcMobile,
24
- alt: imgAlt,
25
- className: "orc-co-bgMobileImg"
26
- }
27
- ) }),
28
- /* @__PURE__ */ jsxs("div", { className: "orc-co-bgDesktop", children: [
29
- imgSrcDesktopBg && /* @__PURE__ */ jsx("div", { className: "orc-co-fillHost", children: /* @__PURE__ */ jsx(
30
- "img",
31
- {
32
- src: imgSrcDesktopBg,
33
- alt: `${imgAlt} fondo`,
34
- className: "orc-co-bgDesktopImg"
35
- }
36
- ) }),
37
- imgSrcDesktopLogo && /* @__PURE__ */ jsx("div", { className: "orc-co-logo", children: /* @__PURE__ */ jsx(
38
- "img",
39
- {
40
- src: imgSrcDesktopLogo,
41
- alt: `${imgAlt} logo`,
42
- className: "orc-co-logoImg"
43
- }
44
- ) }),
45
- /* @__PURE__ */ jsxs("div", { className: "orc-co-desktopContent", children: [
46
- /* @__PURE__ */ jsx("p", { className: "orc-co-captionDesktop", children: text }),
47
- /* @__PURE__ */ jsx(OraculoButton, { onClick, variant: "primary", size: "md", children: buttonLabel })
48
- ] })
49
- ] }),
50
- /* @__PURE__ */ jsxs("div", { className: "orc-co-bottom", children: [
51
- /* @__PURE__ */ jsx("p", { className: "orc-co-caption", children: text }),
52
- /* @__PURE__ */ jsx(OraculoButton, { onClick, variant: "primary", size: "md", children: buttonLabel })
53
- ] })
54
- ] });
55
- };
56
- var OraculoClubOlimpoVisual_default = OraculoClubOlimpoVisual;
57
-
58
- // src/organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.tsx
59
- import { jsx as jsx2 } from "react/jsx-runtime";
60
- var OraculoSeccionClubOlimpo = ({
61
- className = "",
62
- fullBleed = true,
63
- items,
64
- selectedIndex = 0,
65
- ariaLabel
66
- }) => {
67
- const rootRef = useRef(null);
68
- const bottomRef = useRef(null);
69
- if (!items) return null;
70
- const safeIndex = Math.min(Math.max(selectedIndex, 0), 1);
71
- const item = items;
72
- useLayoutEffect(() => {
73
- if (!rootRef.current || !bottomRef.current) return;
74
- if (typeof ResizeObserver === "undefined") return;
75
- const root = rootRef.current;
76
- const bottom = bottomRef.current;
77
- const update = () => {
78
- root.style.setProperty(
79
- "--orc-co-bottomH",
80
- `${bottom.offsetHeight + 16}px`
81
- );
82
- };
83
- const ro = new ResizeObserver(update);
84
- ro.observe(bottom);
85
- update();
86
- return () => ro.disconnect();
87
- }, []);
88
- const rootClass = [
89
- "orc-co-wrap",
90
- fullBleed ? "orc-co-fullBleed" : "",
91
- className
92
- ].filter(Boolean).join(" ");
93
- return /* @__PURE__ */ jsx2(
94
- "section",
95
- {
96
- ref: rootRef,
97
- className: rootClass,
98
- "aria-label": ariaLabel || item.imgAlt || "Club Olimpo",
99
- children: /* @__PURE__ */ jsx2("div", { ref: bottomRef, children: /* @__PURE__ */ jsx2(
100
- OraculoClubOlimpoVisual_default,
101
- {
102
- text: item.text,
103
- onClick: item.onClick,
104
- imgAlt: item.imgAlt,
105
- imgSrcMobile: item.images.mobile,
106
- imgSrcDesktopBg: item.images.desktopBg,
107
- imgSrcDesktopLogo: item.images.desktopLogo
108
- }
109
- ) })
110
- }
111
- );
112
- };
113
- var OraculoSeccionClubOlimpo_default = OraculoSeccionClubOlimpo;
114
-
115
- export {
116
- OraculoClubOlimpoVisual_default,
117
- OraculoSeccionClubOlimpo_default
118
- };
119
- //# sourceMappingURL=chunk-THUJNRMX.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.tsx","../src/molecules/OraculoClubOlimpoVisual/OraculoClubOlimpoVisual.tsx"],"sourcesContent":["import React, { useLayoutEffect, useRef } from \"react\";\r\nimport \"./OraculoSeccionClubOlimpo.css\";\r\nimport OraculoClubOlimpoVisual from \"../../molecules/OraculoClubOlimpoVisual/OraculoClubOlimpoVisual\";\r\nimport { OraculoSeccionClubOlimpoItem } from \"../../interfaces/oraculo/InterfaceClubOlimpo\";\r\n\r\nexport interface OraculoSeccionClubOlimpoItems {\r\n className?: string;\r\n /** Si true, hace el efecto full-bleed (100vw centrado) */\r\n fullBleed?: boolean;\r\n /** Lista de variantes (puedes pasar 1 o varias). */\r\n items: OraculoSeccionClubOlimpoItem;\r\n /** Índice del item a mostrar si pasas varios. */\r\n selectedIndex?: number;\r\n /** aria-label de la sección (fallback al imgAlt del item seleccionado). */\r\n ariaLabel?: string;\r\n}\r\n\r\nconst OraculoSeccionClubOlimpo: React.FC<OraculoSeccionClubOlimpoItems> = ({\r\n className = \"\",\r\n fullBleed = true,\r\n items,\r\n selectedIndex = 0,\r\n ariaLabel,\r\n}) => {\r\n const rootRef = useRef<HTMLDivElement | null>(null);\r\n const bottomRef = useRef<HTMLDivElement | null>(null);\r\n\r\n if (!items ) return null;\r\n\r\n const safeIndex = Math.min(Math.max(selectedIndex, 0), 1);\r\n const item = items;\r\n\r\n useLayoutEffect(() => {\r\n if (!rootRef.current || !bottomRef.current) return;\r\n if (typeof ResizeObserver === \"undefined\") return;\r\n\r\n const root = rootRef.current;\r\n const bottom = bottomRef.current;\r\n\r\n const update = () => {\r\n root.style.setProperty(\r\n \"--orc-co-bottomH\",\r\n `${bottom.offsetHeight + 16}px`\r\n );\r\n };\r\n\r\n const ro = new ResizeObserver(update);\r\n ro.observe(bottom);\r\n update();\r\n\r\n return () => ro.disconnect();\r\n }, []);\r\n\r\n const rootClass = [\r\n \"orc-co-wrap\",\r\n fullBleed ? \"orc-co-fullBleed\" : \"\",\r\n className,\r\n ]\r\n .filter(Boolean)\r\n .join(\" \");\r\n\r\n return (\r\n <section\r\n ref={rootRef}\r\n className={rootClass}\r\n aria-label={ariaLabel || item.imgAlt || \"Club Olimpo\"}\r\n >\r\n <div ref={bottomRef}>\r\n <OraculoClubOlimpoVisual\r\n text={item.text}\r\n onClick={item.onClick}\r\n imgAlt={item.imgAlt}\r\n imgSrcMobile={item.images.mobile}\r\n imgSrcDesktopBg={item.images.desktopBg}\r\n imgSrcDesktopLogo={item.images.desktopLogo}\r\n />\r\n </div>\r\n </section>\r\n );\r\n};\r\n\r\nexport default OraculoSeccionClubOlimpo;\r\n","import React from \"react\";\r\nimport \"../../organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.css\";\r\nimport OraculoButton from \"../../atoms/OraculoButton/OraculoButton\";\r\n\r\nexport interface OraculoClubOlimpoVisualProps {\r\n text: string;\r\n buttonLabel?: string;\r\n onClick?: () => void;\r\n\r\n // MOBILE\r\n imgAlt?: string;\r\n imgSrcMobile: string;\r\n\r\n // DESKTOP\r\n imgSrcDesktopBg?: string;\r\n imgSrcDesktopLogo?: string;\r\n}\r\n\r\nconst OraculoClubOlimpoVisual: React.FC<OraculoClubOlimpoVisualProps> = ({\r\n text,\r\n buttonLabel = \"Conoce más\",\r\n onClick,\r\n imgAlt = \"Club Olimpo\",\r\n imgSrcMobile,\r\n imgSrcDesktopBg,\r\n imgSrcDesktopLogo,\r\n}) => {\r\n return (\r\n <>\r\n {/* MOBILE */}\r\n <div className=\"orc-co-bgMobile\">\r\n <img\r\n src={imgSrcMobile}\r\n alt={imgAlt}\r\n className=\"orc-co-bgMobileImg\"\r\n />\r\n </div>\r\n\r\n {/* DESKTOP */}\r\n <div className=\"orc-co-bgDesktop\">\r\n {imgSrcDesktopBg && (\r\n <div className=\"orc-co-fillHost\">\r\n <img\r\n src={imgSrcDesktopBg}\r\n alt={`${imgAlt} fondo`}\r\n className=\"orc-co-bgDesktopImg\"\r\n />\r\n </div>\r\n )}\r\n\r\n {imgSrcDesktopLogo && (\r\n <div className=\"orc-co-logo\">\r\n <img\r\n src={imgSrcDesktopLogo}\r\n alt={`${imgAlt} logo`}\r\n className=\"orc-co-logoImg\"\r\n />\r\n </div>\r\n )}\r\n\r\n <div className=\"orc-co-desktopContent\">\r\n <p className=\"orc-co-captionDesktop\">{text}</p>\r\n <OraculoButton onClick={onClick} variant=\"primary\" size=\"md\">\r\n {buttonLabel}\r\n </OraculoButton>\r\n </div>\r\n </div>\r\n\r\n {/* MOBILE: barra inferior */}\r\n <div className=\"orc-co-bottom\">\r\n <p className=\"orc-co-caption\">{text}</p>\r\n <OraculoButton onClick={onClick} variant=\"primary\" size=\"md\">\r\n {buttonLabel}\r\n </OraculoButton>\r\n </div>\r\n </>\r\n );\r\n};\r\n\r\nexport default OraculoClubOlimpoVisual;\r\n"],"mappings":";;;;;AAAA,SAAgB,iBAAiB,cAAc;;;AC4B3C,mBAGI,KA6BA,YAhCJ;AAVJ,IAAM,0BAAkE,CAAC;AAAA,EACvE;AAAA,EACA,cAAc;AAAA,EACd;AAAA,EACA,SAAS;AAAA,EACT;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,SACE,iCAEE;AAAA,wBAAC,SAAI,WAAU,mBACb;AAAA,MAAC;AAAA;AAAA,QACC,KAAK;AAAA,QACL,KAAK;AAAA,QACL,WAAU;AAAA;AAAA,IACZ,GACF;AAAA,IAGA,qBAAC,SAAI,WAAU,oBACZ;AAAA,yBACC,oBAAC,SAAI,WAAU,mBACb;AAAA,QAAC;AAAA;AAAA,UACC,KAAK;AAAA,UACL,KAAK,GAAG,MAAM;AAAA,UACd,WAAU;AAAA;AAAA,MACZ,GACF;AAAA,MAGD,qBACC,oBAAC,SAAI,WAAU,eACb;AAAA,QAAC;AAAA;AAAA,UACC,KAAK;AAAA,UACL,KAAK,GAAG,MAAM;AAAA,UACd,WAAU;AAAA;AAAA,MACZ,GACF;AAAA,MAGF,qBAAC,SAAI,WAAU,yBACb;AAAA,4BAAC,OAAE,WAAU,yBAAyB,gBAAK;AAAA,QAC3C,oBAAC,iBAAc,SAAkB,SAAQ,WAAU,MAAK,MACrD,uBACH;AAAA,SACF;AAAA,OACF;AAAA,IAGA,qBAAC,SAAI,WAAU,iBACb;AAAA,0BAAC,OAAE,WAAU,kBAAkB,gBAAK;AAAA,MACpC,oBAAC,iBAAc,SAAkB,SAAQ,WAAU,MAAK,MACrD,uBACH;AAAA,OACF;AAAA,KACF;AAEJ;AAEA,IAAO,kCAAQ;;;ADXP,gBAAAA,YAAA;AAnDR,IAAM,2BAAoE,CAAC;AAAA,EACzE,YAAY;AAAA,EACZ,YAAY;AAAA,EACZ;AAAA,EACA,gBAAgB;AAAA,EAChB;AACF,MAAM;AACJ,QAAM,UAAU,OAA8B,IAAI;AAClD,QAAM,YAAY,OAA8B,IAAI;AAEpD,MAAI,CAAC,MAAQ,QAAO;AAEpB,QAAM,YAAY,KAAK,IAAI,KAAK,IAAI,eAAe,CAAC,GAAG,CAAC;AACxD,QAAM,OAAO;AAEb,kBAAgB,MAAM;AACpB,QAAI,CAAC,QAAQ,WAAW,CAAC,UAAU,QAAS;AAC5C,QAAI,OAAO,mBAAmB,YAAa;AAE3C,UAAM,OAAO,QAAQ;AACrB,UAAM,SAAS,UAAU;AAEzB,UAAM,SAAS,MAAM;AACnB,WAAK,MAAM;AAAA,QACT;AAAA,QACA,GAAG,OAAO,eAAe,EAAE;AAAA,MAC7B;AAAA,IACF;AAEA,UAAM,KAAK,IAAI,eAAe,MAAM;AACpC,OAAG,QAAQ,MAAM;AACjB,WAAO;AAEP,WAAO,MAAM,GAAG,WAAW;AAAA,EAC7B,GAAG,CAAC,CAAC;AAEL,QAAM,YAAY;AAAA,IAChB;AAAA,IACA,YAAY,qBAAqB;AAAA,IACjC;AAAA,EACF,EACG,OAAO,OAAO,EACd,KAAK,GAAG;AAEX,SACE,gBAAAA;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,WAAW;AAAA,MACX,cAAY,aAAa,KAAK,UAAU;AAAA,MAExC,0BAAAA,KAAC,SAAI,KAAK,WACR,0BAAAA;AAAA,QAAC;AAAA;AAAA,UACC,MAAM,KAAK;AAAA,UACX,SAAS,KAAK;AAAA,UACd,QAAQ,KAAK;AAAA,UACb,cAAc,KAAK,OAAO;AAAA,UAC1B,iBAAiB,KAAK,OAAO;AAAA,UAC7B,mBAAmB,KAAK,OAAO;AAAA;AAAA,MACjC,GACF;AAAA;AAAA,EACF;AAEJ;AAEA,IAAO,mCAAQ;","names":["jsx"]}