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.css +181 -0
- package/dist/index.d.mts +68 -1
- package/dist/index.d.ts +68 -1
- package/dist/index.js +592 -100
- package/dist/index.mjs +578 -91
- package/package.json +1 -1
package/dist/index.css
CHANGED
|
@@ -214,3 +214,184 @@
|
|
|
214
214
|
line-height: 26px;
|
|
215
215
|
}
|
|
216
216
|
}
|
|
217
|
+
|
|
218
|
+
/* src/atoms/OraculoCarouselDots/OraculoCarouselDots.css */
|
|
219
|
+
.orc-dots {
|
|
220
|
+
--dot-size: 8px;
|
|
221
|
+
--dot-cell: 20px;
|
|
222
|
+
--dot-active-h: 8px;
|
|
223
|
+
--dot-active-w: 20px;
|
|
224
|
+
--dot-bg: #ffffff;
|
|
225
|
+
--dot-surface: #ffffff;
|
|
226
|
+
--dot-accent: #9EE86E;
|
|
227
|
+
display: flex;
|
|
228
|
+
gap: 0px;
|
|
229
|
+
justify-content: center;
|
|
230
|
+
margin-top: 10px;
|
|
231
|
+
}
|
|
232
|
+
.orc-dots__cell {
|
|
233
|
+
width: var(--dot-cell);
|
|
234
|
+
display: inline-flex;
|
|
235
|
+
justify-content: center;
|
|
236
|
+
}
|
|
237
|
+
.orc-dots__dot {
|
|
238
|
+
width: var(--dot-size);
|
|
239
|
+
height: var(--dot-size);
|
|
240
|
+
border-radius: 9999px;
|
|
241
|
+
background: var(--dot-bg);
|
|
242
|
+
border: 0;
|
|
243
|
+
padding: 0;
|
|
244
|
+
cursor: pointer;
|
|
245
|
+
position: relative;
|
|
246
|
+
transition:
|
|
247
|
+
transform .15s ease,
|
|
248
|
+
background .15s ease,
|
|
249
|
+
width .2s ease,
|
|
250
|
+
height .2s ease;
|
|
251
|
+
}
|
|
252
|
+
.orc-dots__dot:hover {
|
|
253
|
+
transform: scale(1.06);
|
|
254
|
+
}
|
|
255
|
+
.orc-dots__dot--active {
|
|
256
|
+
width: var(--dot-active-w);
|
|
257
|
+
height: var(--dot-active-h);
|
|
258
|
+
border-radius: 9999px;
|
|
259
|
+
background: #fff;
|
|
260
|
+
position: relative;
|
|
261
|
+
overflow: hidden;
|
|
262
|
+
}
|
|
263
|
+
.orc-dots__dot--active::after {
|
|
264
|
+
content: "";
|
|
265
|
+
position: absolute;
|
|
266
|
+
top: 0;
|
|
267
|
+
bottom: 0;
|
|
268
|
+
left: 0;
|
|
269
|
+
width: 40%;
|
|
270
|
+
background: var(--dot-accent);
|
|
271
|
+
border-radius: inherit;
|
|
272
|
+
}
|
|
273
|
+
.orc-dots__dot--active {
|
|
274
|
+
outline: 0;
|
|
275
|
+
outline-offset: 0;
|
|
276
|
+
}
|
|
277
|
+
.orc-dots__dot:focus-visible {
|
|
278
|
+
outline: 2px solid var(--dot-accent);
|
|
279
|
+
outline-offset: 2px;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
/* src/organisms/OraculoSeccionClubOlimpo/OraculoSeccionClubOlimpo.css */
|
|
283
|
+
.orc-co-wrap {
|
|
284
|
+
--orc-co-art-w: 887px;
|
|
285
|
+
--orc-co-art-h: 510px;
|
|
286
|
+
--orc-co-text: #ffffff;
|
|
287
|
+
--orc-co-art-left: clamp(120px, 18vw, 280px);
|
|
288
|
+
--orc-co-art-top: 20px;
|
|
289
|
+
--orc-co-logo-left: 163px;
|
|
290
|
+
--orc-co-logo-top: 120px;
|
|
291
|
+
--orc-co-logo-w: 220px;
|
|
292
|
+
--orc-co-content-left: 120px;
|
|
293
|
+
--orc-co-content-top: 290px;
|
|
294
|
+
min-height: var(--orc-co-minH, 520px);
|
|
295
|
+
position: relative;
|
|
296
|
+
}
|
|
297
|
+
.orc-co-fullBleed {
|
|
298
|
+
width: 100vw;
|
|
299
|
+
margin-left: 50%;
|
|
300
|
+
transform: translateX(-50%);
|
|
301
|
+
}
|
|
302
|
+
.orc-co-bottom {
|
|
303
|
+
position: absolute;
|
|
304
|
+
left: 50%;
|
|
305
|
+
transform: translateX(-50%);
|
|
306
|
+
bottom: 20px;
|
|
307
|
+
z-index: 2;
|
|
308
|
+
display: grid;
|
|
309
|
+
justify-items: center;
|
|
310
|
+
gap: 12px;
|
|
311
|
+
border-radius: 12px;
|
|
312
|
+
}
|
|
313
|
+
.orc-co-caption {
|
|
314
|
+
color: var(--orc-co-text);
|
|
315
|
+
font-size: 14px;
|
|
316
|
+
text-align: center;
|
|
317
|
+
font-weight: 400;
|
|
318
|
+
text-wrap: balance;
|
|
319
|
+
line-height: 1.4;
|
|
320
|
+
}
|
|
321
|
+
.orc-co-bgMobile {
|
|
322
|
+
position: relative;
|
|
323
|
+
width: 100%;
|
|
324
|
+
min-height: 360px;
|
|
325
|
+
overflow: hidden;
|
|
326
|
+
}
|
|
327
|
+
.orc-co-bgMobileImg {
|
|
328
|
+
width: 100%;
|
|
329
|
+
height: 100%;
|
|
330
|
+
object-fit: cover;
|
|
331
|
+
}
|
|
332
|
+
.orc-co-bgDesktop,
|
|
333
|
+
.orc-co-logo,
|
|
334
|
+
.orc-co-desktopContent {
|
|
335
|
+
display: none;
|
|
336
|
+
}
|
|
337
|
+
@media (min-width: 1024px) {
|
|
338
|
+
.orc-co-bgMobile {
|
|
339
|
+
display: none;
|
|
340
|
+
}
|
|
341
|
+
.orc-co-bottom {
|
|
342
|
+
display: none;
|
|
343
|
+
}
|
|
344
|
+
.orc-co-bgDesktop {
|
|
345
|
+
position: absolute;
|
|
346
|
+
inset: 0;
|
|
347
|
+
z-index: 0;
|
|
348
|
+
display: block;
|
|
349
|
+
}
|
|
350
|
+
.orc-co-bgDesktop > .orc-co-fillHost {
|
|
351
|
+
position: absolute;
|
|
352
|
+
width: var(--orc-co-art-w);
|
|
353
|
+
height: var(--orc-co-art-h);
|
|
354
|
+
top: var(--orc-co-art-top);
|
|
355
|
+
left: var(--orc-co-art-left);
|
|
356
|
+
}
|
|
357
|
+
.orc-co-bgDesktopImg {
|
|
358
|
+
width: 100%;
|
|
359
|
+
height: 100%;
|
|
360
|
+
object-fit: cover;
|
|
361
|
+
display: block;
|
|
362
|
+
}
|
|
363
|
+
.orc-co-logo {
|
|
364
|
+
display: block;
|
|
365
|
+
position: absolute;
|
|
366
|
+
left: var(--orc-co-logo-left);
|
|
367
|
+
top: var(--orc-co-logo-top);
|
|
368
|
+
width: var(--orc-co-logo-w);
|
|
369
|
+
aspect-ratio: 3 / 2;
|
|
370
|
+
z-index: 2;
|
|
371
|
+
}
|
|
372
|
+
.orc-co-logoImg {
|
|
373
|
+
width: 100%;
|
|
374
|
+
height: 100%;
|
|
375
|
+
object-fit: contain;
|
|
376
|
+
display: block;
|
|
377
|
+
}
|
|
378
|
+
.orc-co-desktopContent {
|
|
379
|
+
display: grid;
|
|
380
|
+
position: absolute;
|
|
381
|
+
left: var(--orc-co-content-left);
|
|
382
|
+
top: var(--orc-co-content-top);
|
|
383
|
+
gap: 16px;
|
|
384
|
+
justify-items: center;
|
|
385
|
+
text-align: center;
|
|
386
|
+
z-index: 2;
|
|
387
|
+
}
|
|
388
|
+
.orc-co-captionDesktop {
|
|
389
|
+
margin: 0;
|
|
390
|
+
color: var(--orc-co-text);
|
|
391
|
+
font-family: var(--clmc-font, inherit);
|
|
392
|
+
font-weight: 400;
|
|
393
|
+
font-size: clamp(14px, 1.5vw, 18px);
|
|
394
|
+
max-width: 28ch;
|
|
395
|
+
text-wrap: balance;
|
|
396
|
+
}
|
|
397
|
+
}
|
package/dist/index.d.mts
CHANGED
|
@@ -29,6 +29,14 @@ interface OraculoSectionTitleProps {
|
|
|
29
29
|
}
|
|
30
30
|
declare function OraculoSectionTitle({ title, iconUrl, size, className, }: OraculoSectionTitleProps): react_jsx_runtime.JSX.Element;
|
|
31
31
|
|
|
32
|
+
interface OraculoCarouselDotsProps {
|
|
33
|
+
total: number;
|
|
34
|
+
active: number;
|
|
35
|
+
onSelect?: (index: number) => void;
|
|
36
|
+
className?: string;
|
|
37
|
+
}
|
|
38
|
+
declare const OraculoCarouselDots: React.FC<OraculoCarouselDotsProps>;
|
|
39
|
+
|
|
32
40
|
interface OraculoCarouselOptions {
|
|
33
41
|
type?: string;
|
|
34
42
|
perPage?: number;
|
|
@@ -109,6 +117,32 @@ interface OraculoGameSlideProps {
|
|
|
109
117
|
}
|
|
110
118
|
declare const OraculoGameSlide: React.FC<OraculoGameSlideProps>;
|
|
111
119
|
|
|
120
|
+
interface OraculoWelcomeBannerProps {
|
|
121
|
+
title?: string;
|
|
122
|
+
amount?: string;
|
|
123
|
+
subtitle?: string;
|
|
124
|
+
buttonText?: string;
|
|
125
|
+
onButtonClick?: () => void;
|
|
126
|
+
backgroundImage?: string;
|
|
127
|
+
alt?: string;
|
|
128
|
+
className?: string;
|
|
129
|
+
/** Tamaño en desktop: "small" (456x272) o "large" (618x346) */
|
|
130
|
+
variant?: "small" | "large";
|
|
131
|
+
}
|
|
132
|
+
declare const OraculoWelcomeBanner: React.FC<OraculoWelcomeBannerProps>;
|
|
133
|
+
|
|
134
|
+
interface OraculoClubOlimpoVisualProps {
|
|
135
|
+
text: string;
|
|
136
|
+
buttonLabel?: string;
|
|
137
|
+
onClick?: () => void;
|
|
138
|
+
imgAlt?: string;
|
|
139
|
+
imgSrcMobile: string;
|
|
140
|
+
imgSrcDesktopBg?: string;
|
|
141
|
+
imgSrcDesktopLogo?: string;
|
|
142
|
+
priority?: boolean;
|
|
143
|
+
}
|
|
144
|
+
declare const OraculoClubOlimpoVisual: React.FC<OraculoClubOlimpoVisualProps>;
|
|
145
|
+
|
|
112
146
|
interface OraculoDestacadoItem {
|
|
113
147
|
id?: string | number;
|
|
114
148
|
src: string;
|
|
@@ -219,4 +253,37 @@ interface OraculoSeccionVirtualesProps {
|
|
|
219
253
|
}
|
|
220
254
|
declare const OraculoSeccionVirtuales: React.FC<OraculoSeccionVirtualesProps>;
|
|
221
255
|
|
|
222
|
-
|
|
256
|
+
interface OraculoSeccionBonoBienvenidaProps {
|
|
257
|
+
/** Título principal, admite salto con "\n" para dos líneas */
|
|
258
|
+
headline?: string;
|
|
259
|
+
items: OraculoWelcomeBannerProps[];
|
|
260
|
+
/** Fondo de la sección (full width) */
|
|
261
|
+
backgroundImageUrl?: string;
|
|
262
|
+
}
|
|
263
|
+
declare const OraculoSeccionBonoBienvenida: React.FC<OraculoSeccionBonoBienvenidaProps>;
|
|
264
|
+
|
|
265
|
+
type OraculoClubOlimpoItem = {
|
|
266
|
+
text: string;
|
|
267
|
+
imgAlt: string;
|
|
268
|
+
images: {
|
|
269
|
+
mobile: string;
|
|
270
|
+
desktopBg: string;
|
|
271
|
+
desktopLogo: string;
|
|
272
|
+
};
|
|
273
|
+
onClick?: () => void;
|
|
274
|
+
priority?: boolean;
|
|
275
|
+
};
|
|
276
|
+
interface OraculoSeccionClubOlimpoProps {
|
|
277
|
+
className?: string;
|
|
278
|
+
/** Si true, hace el efecto full-bleed (100vw centrado) */
|
|
279
|
+
fullBleed?: boolean;
|
|
280
|
+
/** Lista de variantes (puedes pasar 1 o varias). */
|
|
281
|
+
items: OraculoClubOlimpoItem[];
|
|
282
|
+
/** Índice del item a mostrar si pasas varios. */
|
|
283
|
+
selectedIndex?: number;
|
|
284
|
+
/** aria-label de la sección (fallback al imgAlt del item seleccionado). */
|
|
285
|
+
ariaLabel?: string;
|
|
286
|
+
}
|
|
287
|
+
declare const OraculoSeccionClubOlimpo: React.FC<OraculoSeccionClubOlimpoProps>;
|
|
288
|
+
|
|
289
|
+
export { OraculoButton, type OraculoButtonProps, OraculoCarousel, OraculoCarouselDots, type OraculoCarouselDotsProps, type OraculoCarouselOptions, type OraculoCarouselProps, type OraculoCarouselRef, type OraculoClubOlimpoItem, OraculoClubOlimpoVisual, type OraculoClubOlimpoVisualProps, type OraculoDestacadoItem, OraculoGameCard, type OraculoGameCardProps, type OraculoGameItem, OraculoGameRankCard, type OraculoGameRankCardProps, type OraculoGameRankCardSizes, OraculoGameSlide, type OraculoGameSlideItem, type OraculoGameSlideProps, OraculoLiveCasinoCard, type OraculoLiveCasinoCardProps, type OraculoLiveCasinoItem, OraculoSeccionBonoBienvenida, type OraculoSeccionBonoBienvenidaProps, OraculoSeccionCasino, OraculoSeccionCasinoEnVivo, type OraculoSeccionCasinoEnVivoProps, type OraculoSeccionCasinoProps, OraculoSeccionClubOlimpo, type OraculoSeccionClubOlimpoProps, OraculoSeccionDestacados, type OraculoSeccionDestacadosProps, OraculoSeccionTopJuegos, type OraculoSeccionTopJuegosProps, OraculoSeccionVirtuales, type OraculoSeccionVirtualesProps, OraculoSectionTitle, type OraculoSectionTitleProps, type OraculoTopJuegoItem, OraculoWelcomeBanner, type OraculoWelcomeBannerProps };
|
package/dist/index.d.ts
CHANGED
|
@@ -29,6 +29,14 @@ interface OraculoSectionTitleProps {
|
|
|
29
29
|
}
|
|
30
30
|
declare function OraculoSectionTitle({ title, iconUrl, size, className, }: OraculoSectionTitleProps): react_jsx_runtime.JSX.Element;
|
|
31
31
|
|
|
32
|
+
interface OraculoCarouselDotsProps {
|
|
33
|
+
total: number;
|
|
34
|
+
active: number;
|
|
35
|
+
onSelect?: (index: number) => void;
|
|
36
|
+
className?: string;
|
|
37
|
+
}
|
|
38
|
+
declare const OraculoCarouselDots: React.FC<OraculoCarouselDotsProps>;
|
|
39
|
+
|
|
32
40
|
interface OraculoCarouselOptions {
|
|
33
41
|
type?: string;
|
|
34
42
|
perPage?: number;
|
|
@@ -109,6 +117,32 @@ interface OraculoGameSlideProps {
|
|
|
109
117
|
}
|
|
110
118
|
declare const OraculoGameSlide: React.FC<OraculoGameSlideProps>;
|
|
111
119
|
|
|
120
|
+
interface OraculoWelcomeBannerProps {
|
|
121
|
+
title?: string;
|
|
122
|
+
amount?: string;
|
|
123
|
+
subtitle?: string;
|
|
124
|
+
buttonText?: string;
|
|
125
|
+
onButtonClick?: () => void;
|
|
126
|
+
backgroundImage?: string;
|
|
127
|
+
alt?: string;
|
|
128
|
+
className?: string;
|
|
129
|
+
/** Tamaño en desktop: "small" (456x272) o "large" (618x346) */
|
|
130
|
+
variant?: "small" | "large";
|
|
131
|
+
}
|
|
132
|
+
declare const OraculoWelcomeBanner: React.FC<OraculoWelcomeBannerProps>;
|
|
133
|
+
|
|
134
|
+
interface OraculoClubOlimpoVisualProps {
|
|
135
|
+
text: string;
|
|
136
|
+
buttonLabel?: string;
|
|
137
|
+
onClick?: () => void;
|
|
138
|
+
imgAlt?: string;
|
|
139
|
+
imgSrcMobile: string;
|
|
140
|
+
imgSrcDesktopBg?: string;
|
|
141
|
+
imgSrcDesktopLogo?: string;
|
|
142
|
+
priority?: boolean;
|
|
143
|
+
}
|
|
144
|
+
declare const OraculoClubOlimpoVisual: React.FC<OraculoClubOlimpoVisualProps>;
|
|
145
|
+
|
|
112
146
|
interface OraculoDestacadoItem {
|
|
113
147
|
id?: string | number;
|
|
114
148
|
src: string;
|
|
@@ -219,4 +253,37 @@ interface OraculoSeccionVirtualesProps {
|
|
|
219
253
|
}
|
|
220
254
|
declare const OraculoSeccionVirtuales: React.FC<OraculoSeccionVirtualesProps>;
|
|
221
255
|
|
|
222
|
-
|
|
256
|
+
interface OraculoSeccionBonoBienvenidaProps {
|
|
257
|
+
/** Título principal, admite salto con "\n" para dos líneas */
|
|
258
|
+
headline?: string;
|
|
259
|
+
items: OraculoWelcomeBannerProps[];
|
|
260
|
+
/** Fondo de la sección (full width) */
|
|
261
|
+
backgroundImageUrl?: string;
|
|
262
|
+
}
|
|
263
|
+
declare const OraculoSeccionBonoBienvenida: React.FC<OraculoSeccionBonoBienvenidaProps>;
|
|
264
|
+
|
|
265
|
+
type OraculoClubOlimpoItem = {
|
|
266
|
+
text: string;
|
|
267
|
+
imgAlt: string;
|
|
268
|
+
images: {
|
|
269
|
+
mobile: string;
|
|
270
|
+
desktopBg: string;
|
|
271
|
+
desktopLogo: string;
|
|
272
|
+
};
|
|
273
|
+
onClick?: () => void;
|
|
274
|
+
priority?: boolean;
|
|
275
|
+
};
|
|
276
|
+
interface OraculoSeccionClubOlimpoProps {
|
|
277
|
+
className?: string;
|
|
278
|
+
/** Si true, hace el efecto full-bleed (100vw centrado) */
|
|
279
|
+
fullBleed?: boolean;
|
|
280
|
+
/** Lista de variantes (puedes pasar 1 o varias). */
|
|
281
|
+
items: OraculoClubOlimpoItem[];
|
|
282
|
+
/** Índice del item a mostrar si pasas varios. */
|
|
283
|
+
selectedIndex?: number;
|
|
284
|
+
/** aria-label de la sección (fallback al imgAlt del item seleccionado). */
|
|
285
|
+
ariaLabel?: string;
|
|
286
|
+
}
|
|
287
|
+
declare const OraculoSeccionClubOlimpo: React.FC<OraculoSeccionClubOlimpoProps>;
|
|
288
|
+
|
|
289
|
+
export { OraculoButton, type OraculoButtonProps, OraculoCarousel, OraculoCarouselDots, type OraculoCarouselDotsProps, type OraculoCarouselOptions, type OraculoCarouselProps, type OraculoCarouselRef, type OraculoClubOlimpoItem, OraculoClubOlimpoVisual, type OraculoClubOlimpoVisualProps, type OraculoDestacadoItem, OraculoGameCard, type OraculoGameCardProps, type OraculoGameItem, OraculoGameRankCard, type OraculoGameRankCardProps, type OraculoGameRankCardSizes, OraculoGameSlide, type OraculoGameSlideItem, type OraculoGameSlideProps, OraculoLiveCasinoCard, type OraculoLiveCasinoCardProps, type OraculoLiveCasinoItem, OraculoSeccionBonoBienvenida, type OraculoSeccionBonoBienvenidaProps, OraculoSeccionCasino, OraculoSeccionCasinoEnVivo, type OraculoSeccionCasinoEnVivoProps, type OraculoSeccionCasinoProps, OraculoSeccionClubOlimpo, type OraculoSeccionClubOlimpoProps, OraculoSeccionDestacados, type OraculoSeccionDestacadosProps, OraculoSeccionTopJuegos, type OraculoSeccionTopJuegosProps, OraculoSeccionVirtuales, type OraculoSeccionVirtualesProps, OraculoSectionTitle, type OraculoSectionTitleProps, type OraculoTopJuegoItem, OraculoWelcomeBanner, type OraculoWelcomeBannerProps };
|