@opexa/portal-components 0.0.361 → 0.0.362
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/components/Banner/Banner.client.d.ts +12 -0
- package/dist/components/Banner/Banner.client.js +49 -0
- package/dist/components/Jackpots/Jackpots.d.ts +1 -1
- package/dist/components/Jackpots/JackpotsCarousel/JackpotsCarousel.d.ts +11 -0
- package/dist/components/Jackpots/JackpotsCarousel/JackpotsCarousel.js +1 -1
- package/dist/components/Jackpots/JackpotsCarousel/JackpotsCarouselItem.d.ts +12 -1
- package/dist/components/Jackpots/JackpotsCarousel/JackpotsCarouselItem.js +9 -2
- package/dist/components/Jackpots/JackpotsList/JackpotsList.d.ts +11 -0
- package/dist/components/Jackpots/JackpotsList/JackpotsList.js +1 -1
- package/dist/components/Jackpots/JackpotsList/JackpotsListItemDesktop.d.ts +12 -1
- package/dist/components/Jackpots/JackpotsList/JackpotsListItemDesktop.js +9 -2
- package/dist/components/Jackpots/JackpotsList/JackpotsListItemMobile.d.ts +12 -1
- package/dist/components/Jackpots/JackpotsList/JackpotsListItemMobile.js +10 -3
- package/dist/components/SignIn/utils.d.ts +8 -0
- package/dist/components/SignIn/utils.js +26 -0
- package/dist/constants/Branches.d.ts +2 -0
- package/dist/constants/Branches.js +42 -0
- package/dist/handlers/index.d.ts +7 -7
- package/dist/icons/StarIcon.d.ts +3 -2
- package/dist/icons/StarIcon.js +6 -3
- package/dist/images/close-chest-bstar.png +0 -0
- package/dist/images/open-chest-bstar.png +0 -0
- package/dist/third-parties/FacebookPixel/FacebookPixel.d.ts +4 -0
- package/dist/third-parties/FacebookPixel/FacebookPixel.js +4 -0
- package/dist/third-parties/FacebookPixel/api.d.ts +0 -0
- package/dist/third-parties/FacebookPixel/api.js +1 -0
- package/dist/third-parties/FacebookPixel/index.d.ts +1 -0
- package/dist/third-parties/FacebookPixel/index.js +1 -0
- package/dist/third-parties/GoogleRecaptcha/GoogleRecaptcha.d.ts +4 -0
- package/dist/third-parties/GoogleRecaptcha/GoogleRecaptcha.js +4 -0
- package/dist/third-parties/GoogleRecaptcha/api.d.ts +0 -0
- package/dist/third-parties/GoogleRecaptcha/api.js +1 -0
- package/dist/third-parties/GoogleRecaptcha/index.d.ts +1 -0
- package/dist/third-parties/GoogleRecaptcha/index.js +1 -0
- package/dist/third-parties/index.d.ts +2 -0
- package/dist/third-parties/index.js +2 -0
- package/dist/ui/AlertDialog/AlertDialog.d.ts +88 -88
- package/dist/ui/AlertDialog/alertDialog.recipe.d.ts +8 -8
- package/dist/ui/Clipboard/Clipboard.d.ts +18 -18
- package/dist/ui/Clipboard/clipboard.recipe.d.ts +3 -3
- package/dist/ui/Combobox/Combobox.d.ts +42 -42
- package/dist/ui/Combobox/combobox.recipe.d.ts +3 -3
- package/dist/ui/DatePicker/DatePicker.d.ts +72 -72
- package/dist/ui/DatePicker/datePicker.recipe.d.ts +3 -3
- package/dist/ui/Dialog/Dialog.d.ts +88 -88
- package/dist/ui/Dialog/dialog.recipe.d.ts +8 -8
- package/dist/ui/Drawer/Drawer.d.ts +33 -33
- package/dist/ui/Drawer/drawer.recipe.d.ts +3 -3
- package/dist/ui/QrCode/QrCode.d.ts +25 -25
- package/dist/ui/QrCode/qrCode.recipe.d.ts +5 -5
- package/dist/ui/Select/Select.d.ts +45 -45
- package/dist/ui/Select/select.recipe.d.ts +3 -3
- package/dist/ui/Table/Table.d.ts +21 -21
- package/dist/ui/Table/table.anatomy.d.ts +1 -1
- package/dist/ui/Table/table.recipe.d.ts +3 -3
- package/package.json +1 -1
- package/dist/components/AccountInfo/GoogleDisconnect.d.ts +0 -7
- package/dist/components/AccountInfo/GoogleDisconnect.js +0 -11
- package/dist/icons/LinkBrokenIcon.d.ts +0 -2
- package/dist/icons/LinkBrokenIcon.js +0 -4
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ImageProps } from 'next/image';
|
|
2
|
+
export interface BannerEntry {
|
|
3
|
+
src: ImageProps['src'];
|
|
4
|
+
redirectUrl?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface BannerProps {
|
|
7
|
+
banners: BannerEntry[];
|
|
8
|
+
imageWidth?: number | [mobile: number, desktop: number];
|
|
9
|
+
imageHeight?: number | [mobile: number, desktop: number];
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function Banner__client(props: BannerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import emblaCarouselAutoplay from 'embla-carousel-autoplay';
|
|
4
|
+
import useEmblaCarousel, {} from 'embla-carousel-react';
|
|
5
|
+
import isMobile from 'is-mobile';
|
|
6
|
+
import Image from 'next/image';
|
|
7
|
+
import Link from 'next/link';
|
|
8
|
+
import { Fragment, useEffect, useState } from 'react';
|
|
9
|
+
import { twMerge } from 'tailwind-merge';
|
|
10
|
+
import { dataAttr } from '../../utils/dataAttr.js';
|
|
11
|
+
export function Banner__client(props) {
|
|
12
|
+
const [emblaRef, emblaApi] = useEmblaCarousel({
|
|
13
|
+
loop: true,
|
|
14
|
+
align: 'start',
|
|
15
|
+
}, [
|
|
16
|
+
emblaCarouselAutoplay({
|
|
17
|
+
playOnInit: true,
|
|
18
|
+
delay: 5000,
|
|
19
|
+
}),
|
|
20
|
+
]);
|
|
21
|
+
const [currentIndex, setCurrentIndex] = useState(0);
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
function handler(detail) {
|
|
24
|
+
setCurrentIndex(detail?.selectedScrollSnap() ?? 0);
|
|
25
|
+
}
|
|
26
|
+
emblaApi?.on('scroll', handler);
|
|
27
|
+
emblaApi?.on('init', handler);
|
|
28
|
+
return () => {
|
|
29
|
+
emblaApi?.on('init', handler);
|
|
30
|
+
emblaApi?.off('scroll', handler);
|
|
31
|
+
};
|
|
32
|
+
}, [emblaApi]);
|
|
33
|
+
const imageWidth = !props.imageWidth
|
|
34
|
+
? [400, 1200]
|
|
35
|
+
: Array.isArray(props.imageWidth)
|
|
36
|
+
? props.imageWidth
|
|
37
|
+
: [props.imageWidth, props.imageWidth];
|
|
38
|
+
const imageHeight = !props.imageHeight
|
|
39
|
+
? [225, 300]
|
|
40
|
+
: Array.isArray(props.imageHeight)
|
|
41
|
+
? props.imageHeight
|
|
42
|
+
: [props.imageHeight, props.imageHeight];
|
|
43
|
+
return (_jsxs("div", { className: twMerge('relative', props.className), children: [_jsx("div", { ref: emblaRef, className: "overflow-hidden", children: _jsx("div", { className: "flex gap-2", children: props.banners.map((banner, index) => {
|
|
44
|
+
const img = (_jsx(Image, { src: banner.src, alt: "", width: isMobile() ? imageWidth[0] : imageWidth[1], height: isMobile() ? imageHeight[0] : imageHeight[1], className: "block h-auto w-full", priority: index === 0 }));
|
|
45
|
+
return (_jsx(Fragment, { children: !banner.redirectUrl ? (_jsx("div", { className: "w-full shrink-0", children: img })) : (_jsx(Link, { href: banner.redirectUrl, className: "block w-full shrink-0", "aria-label": `Open ${banner.redirectUrl}`, children: img })) }, index));
|
|
46
|
+
}) }) }), _jsx("div", { className: "absolute bottom-lg left-1/2 flex w-fit -translate-x-1/2 gap-2", children: props.banners.map((_, index) => (_jsx("button", { type: "button", className: "ui-active:bg-brand-500 bg-gray-300 size-3 shrink-0 rounded-full border border-white transition-all duration-300 ui-active:w-9", onClick: () => {
|
|
47
|
+
emblaApi?.scrollTo(index);
|
|
48
|
+
}, "aria-label": `Go to slide ${index + 1}`, "data-active": dataAttr(index === currentIndex) }, index))) })] }));
|
|
49
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type JackpotsCarouselProps } from './JackpotsCarousel/JackpotsCarousel';
|
|
2
2
|
import { type JackpotsListProps } from './JackpotsList/JackpotsList';
|
|
3
|
-
export type JackpotsProps = JackpotsCarouselProps | JackpotsListProps;
|
|
3
|
+
export type JackpotsProps = (JackpotsCarouselProps | JackpotsListProps);
|
|
4
4
|
export declare function Jackpots(props: JackpotsProps): Promise<import("react/jsx-runtime").JSX.Element>;
|
|
@@ -16,6 +16,17 @@ export interface JackpotsCarouselProps {
|
|
|
16
16
|
className?: string | ClassNameEntries;
|
|
17
17
|
style?: CSSProperties | StyleEntries;
|
|
18
18
|
animate?: boolean;
|
|
19
|
+
customJackpotChestImage?: {
|
|
20
|
+
image: {
|
|
21
|
+
open: string;
|
|
22
|
+
closed: string;
|
|
23
|
+
};
|
|
24
|
+
style?: {
|
|
25
|
+
wrapper?: string;
|
|
26
|
+
image?: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
jackpotProfileShape?: 'oval' | 'star';
|
|
19
30
|
}
|
|
20
31
|
export declare function JackpotsCarousel({ style, className, ...props }: JackpotsCarouselProps): import("react/jsx-runtime").JSX.Element | null;
|
|
21
32
|
export {};
|
|
@@ -64,5 +64,5 @@ export function JackpotsCarousel({ style, className, ...props }) {
|
|
|
64
64
|
const classNames = isString(className)
|
|
65
65
|
? { root: className }
|
|
66
66
|
: (className ?? {});
|
|
67
|
-
return (_jsxs("div", { style: styles.root, className: classNames.root, children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("div", { className: "font-semibold text-lg", children: props.heading ?? 'Jackpots' }), _jsxs("div", { className: "flex items-center md:gap-3xl", children: [_jsxs(Link, { href: props.viewAllUrl ?? '/jackpots', className: "flex gap-sm font-semibold text-button-tertiary-fg text-sm", children: ["See All", _jsx(ChevronRightIcon, { className: "size-5 lg:hidden" })] }), _jsxs("div", { className: "hidden lg:flex", children: [_jsx(Button, { disabled: !canScrollPrev, onClick: scrollPrev, variant: "outline", colorScheme: "gray", className: "rounded-r-none border-r-0", "aria-label": "Previous", children: _jsx(ArrowLeftIcon, { className: "size-5" }) }), _jsxs(Button, { disabled: !canScrollNext, onClick: scrollNext, variant: "outline", colorScheme: "gray", className: "rounded-l-none", "aria-label": "Next", children: [_jsx("span", { className: "sr-only", children: "Next" }), _jsx(ArrowRightIcon, { className: "size-5" })] })] })] })] }), _jsx("div", { className: "relative mt-lg lg:overflow-hidden", ref: emblaRef, children: _jsx("div", { className: "flex gap-2.5", children: jackpots.map((jackpot) => (_jsx(JackpotsCarouselItemContext, { value: jackpot, children: _jsx(JackpotsCarouselItem, { style: styles.itemRoot, className: classNames.itemRoot, viewAllUrl: props.viewAllUrl, animate: props.animate }) }, jackpot.id))) }) })] }));
|
|
67
|
+
return (_jsxs("div", { style: styles.root, className: classNames.root, children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsx("div", { className: "font-semibold text-lg", children: props.heading ?? 'Jackpots' }), _jsxs("div", { className: "flex items-center md:gap-3xl", children: [_jsxs(Link, { href: props.viewAllUrl ?? '/jackpots', className: "flex gap-sm font-semibold text-button-tertiary-fg text-sm", children: ["See All", _jsx(ChevronRightIcon, { className: "size-5 lg:hidden" })] }), _jsxs("div", { className: "hidden lg:flex", children: [_jsx(Button, { disabled: !canScrollPrev, onClick: scrollPrev, variant: "outline", colorScheme: "gray", className: "rounded-r-none border-r-0", "aria-label": "Previous", children: _jsx(ArrowLeftIcon, { className: "size-5" }) }), _jsxs(Button, { disabled: !canScrollNext, onClick: scrollNext, variant: "outline", colorScheme: "gray", className: "rounded-l-none", "aria-label": "Next", children: [_jsx("span", { className: "sr-only", children: "Next" }), _jsx(ArrowRightIcon, { className: "size-5" })] })] })] })] }), _jsx("div", { className: "relative mt-lg lg:overflow-hidden", ref: emblaRef, children: _jsx("div", { className: "flex gap-2.5", children: jackpots.map((jackpot) => (_jsx(JackpotsCarouselItemContext, { value: jackpot, children: _jsx(JackpotsCarouselItem, { style: styles.itemRoot, className: classNames.itemRoot, viewAllUrl: props.viewAllUrl, animate: props.animate, customJackpotChestImage: props.customJackpotChestImage, jackpotProfileShape: props.jackpotProfileShape }) }, jackpot.id))) }) })] }));
|
|
68
68
|
}
|
|
@@ -4,6 +4,17 @@ export interface JackpotsCarouselItemProps {
|
|
|
4
4
|
className?: string;
|
|
5
5
|
/** @default "/jackpots" */
|
|
6
6
|
viewAllUrl?: string;
|
|
7
|
+
customJackpotChestImage?: {
|
|
8
|
+
image: {
|
|
9
|
+
open: string;
|
|
10
|
+
closed: string;
|
|
11
|
+
};
|
|
12
|
+
style?: {
|
|
13
|
+
wrapper?: string;
|
|
14
|
+
image?: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
7
17
|
animate?: boolean;
|
|
18
|
+
jackpotProfileShape?: 'oval' | 'star';
|
|
8
19
|
}
|
|
9
|
-
export declare function JackpotsCarouselItem({ style, className, viewAllUrl, animate, }: JackpotsCarouselItemProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export declare function JackpotsCarouselItem({ style, className, viewAllUrl, animate, customJackpotChestImage, jackpotProfileShape, }: JackpotsCarouselItemProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -12,6 +12,7 @@ import { useLocaleInfo } from '../../../client/hooks/useLocaleInfo.js';
|
|
|
12
12
|
import { ArrowNarrowUpRightIcon } from '../../../icons/ArrowNarrowUpRightIcon.js';
|
|
13
13
|
import { ChevronLeftIcon } from '../../../icons/ChevronLeftIcon.js';
|
|
14
14
|
import { ChevronRightIcon } from '../../../icons/ChevronRightIcon.js';
|
|
15
|
+
import { StarIcon } from '../../../icons/StarIcon.js';
|
|
15
16
|
import { Trophy01Icon } from '../../../icons/Trophy01Icon.js';
|
|
16
17
|
import { User01Icon } from '../../../icons/User01Icon.js';
|
|
17
18
|
import closeChest from '../../../images/close-chest.png';
|
|
@@ -25,7 +26,7 @@ import { mask } from '../../../utils/mask.js';
|
|
|
25
26
|
import { parseDecimal } from '../../../utils/parseDecimal.js';
|
|
26
27
|
import { useJackpotsCarouselItemContext } from './JackpotsCarouselContext.js';
|
|
27
28
|
import styles from './JackpotsCarouselItem.module.css';
|
|
28
|
-
export function JackpotsCarouselItem({ style, className, viewAllUrl, animate = true, }) {
|
|
29
|
+
export function JackpotsCarouselItem({ style, className, viewAllUrl, animate = true, customJackpotChestImage, jackpotProfileShape = 'oval', }) {
|
|
29
30
|
const jackpot = useJackpotsCarouselItemContext();
|
|
30
31
|
const jackpotPayoutsQuery = useJackpotPayoutsQuery({
|
|
31
32
|
first: 30,
|
|
@@ -86,7 +87,13 @@ export function JackpotsCarouselItem({ style, className, viewAllUrl, animate = t
|
|
|
86
87
|
currency: localeInfo.currency.code,
|
|
87
88
|
minDecimalPlaces: 2,
|
|
88
89
|
maxDecimalPlaces: 2,
|
|
89
|
-
}) })] }), _jsx("div", { className: "hidden min-w-25 lg:block" }), _jsx("div", { className:
|
|
90
|
+
}) })] }), _jsx("div", { className: "hidden min-w-25 lg:block" }), _jsx("div", { className: twMerge('right-0 bottom-[-60] z-1 min-w-25 lg:absolute', customJackpotChestImage?.style?.wrapper), children: _jsx(Image, { width: 150, height: 150, src: customJackpotChestImage?.image
|
|
91
|
+
? isPayingOut
|
|
92
|
+
? customJackpotChestImage.image.open
|
|
93
|
+
: customJackpotChestImage.image.closed
|
|
94
|
+
: isPayingOut
|
|
95
|
+
? openChest
|
|
96
|
+
: closeChest, alt: "closeChest", className: twMerge('size-full h-25 w-25 p-2 lg:h-37.5 lg:w-37.5', customJackpotChestImage?.style?.image) }) })] }), latestJackpotPayout.amount ? (_jsx("div", { children: _jsxs("div", { className: "relative mt-4 hidden w-full gap-4 rounded-lg bg-bg-primary p-4 lg:flex", children: [jackpotProfileShape === 'oval' ? (_jsxs("div", { className: "relative flex h-18 w-18 items-center justify-center rounded-full bg-bg-tertiary", children: [_jsx(User01Icon, { className: "size-9 text-text-quarterary-500" }), _jsxs("div", { className: "absolute right-0 bottom-0 flex h-6 w-6 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 font-bold text-brand-950 text-xs", children: [latestJackpotPayout.multiplier, "x"] })] })) : (_jsxs("div", { className: "relative grid h-18 w-18", children: [_jsx(StarIcon, { className: "col-start-1 row-start-1 h-full w-full" }), _jsx(User01Icon, { className: "z-10 col-start-1 row-start-1 size-9 place-self-center text-text-quarterary-500" }), _jsxs("div", { className: "-right-0 absolute bottom-0 z-20 flex h-7 w-7 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 text-center font-bold text-brand-950 text-xs", children: [latestJackpotPayout.multiplier, "x"] })] })), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "flex h-fit w-fit items-center gap-1 rounded-sm border border-utility-brand-200 bg-utility-brand-50 px-2 py-0.5 font-medium text-utility-brand-700 text-xs", children: [_jsx(Trophy01Icon, { className: "size-3.5 text-utility-brand-600" }), "Recent Payout"] }), _jsx("div", { className: "font-semibold", children: mask(latestJackpotPayout.member.name, {
|
|
90
97
|
totalCharsCount: 6,
|
|
91
98
|
}) }), _jsx("div", { className: "text-2xl text-brand-400", children: formatNumber(latestJackpotPayout.amount, {
|
|
92
99
|
currency: localeInfo.currency.code,
|
|
@@ -31,6 +31,17 @@ export interface JackpotsListProps {
|
|
|
31
31
|
*/
|
|
32
32
|
viewGamesUrl?: string | ((gameProvider: GameProviderData) => string);
|
|
33
33
|
animate?: boolean;
|
|
34
|
+
customJackpotChestImage?: {
|
|
35
|
+
image: {
|
|
36
|
+
open: string;
|
|
37
|
+
closed: string;
|
|
38
|
+
};
|
|
39
|
+
style?: {
|
|
40
|
+
wrapper?: string;
|
|
41
|
+
image?: string;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
jackpotProfileShape?: 'oval' | 'star';
|
|
34
45
|
}
|
|
35
46
|
export declare function JackpotsList(props: JackpotsListProps): import("react/jsx-runtime").JSX.Element;
|
|
36
47
|
export {};
|
|
@@ -31,5 +31,5 @@ export function JackpotsList(props) {
|
|
|
31
31
|
const classNames = isString(props.className)
|
|
32
32
|
? { root: props.className }
|
|
33
33
|
: (props.className ?? {});
|
|
34
|
-
return (_jsx(JackpotsListPropsContext, { value: props, children: _jsxs("div", { style: styles.root, className: classNames.root, children: [_jsx("div", { className: "mb-3 font-semibold text-lg lg:mb-4.5", children: props.heading ?? 'Jackpots' }), jackpots.length > 0 ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "hidden flex-col gap-6 lg:flex", children: jackpots.map((jackpot) => (_jsx(JackpotsListItemContext, { value: jackpot, children: _jsx(JackpotsListItemDesktop, { style: styles.itemRoot, className: classNames.itemRoot, animate: props.animate }) }, jackpot.id))) }), _jsx("div", { className: "flex flex-col gap-6 lg:hidden", children: jackpots.map((jackpot) => (_jsx(JackpotsListItemContext, { value: jackpot, children: _jsx(JackpotsListItemMobile, { style: styles.itemRoot, className: classNames.itemRoot, animate: props.animate }) }, jackpot.id))) })] })) : (_jsxs("div", { className: 'mt-5 flex h-fit flex-col items-center justify-center lg:mt-0 lg:h-62', children: [_jsx(Image, { width: 100, height: 100, src: closeChest, alt: "closeChest", className: "size-full h-29.5 w-29.5 mix-blend-luminosity lg:h-25 lg:w-25" }), _jsxs("div", { className: "mt-4 font-semibold text-base text-text-primary-900", children: ["No ", props.heading ?? 'Jackpots'] }), _jsxs("div", { className: "mt-1 text-center text-sm text-text-tertiary-600", children: ["No ", props.heading?.toLocaleLowerCase() ?? 'jackpots', " are running at the moment. ", _jsx("br", {}), "Please check back later!"] })] }))] }) }));
|
|
34
|
+
return (_jsx(JackpotsListPropsContext, { value: props, children: _jsxs("div", { style: styles.root, className: classNames.root, children: [_jsx("div", { className: "mb-3 font-semibold text-lg lg:mb-4.5", children: props.heading ?? 'Jackpots' }), jackpots.length > 0 ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "hidden flex-col gap-6 lg:flex", children: jackpots.map((jackpot) => (_jsx(JackpotsListItemContext, { value: jackpot, children: _jsx(JackpotsListItemDesktop, { style: styles.itemRoot, className: classNames.itemRoot, animate: props.animate, customJackpotChestImage: props.customJackpotChestImage, jackpotProfileShape: props.jackpotProfileShape }) }, jackpot.id))) }), _jsx("div", { className: "flex flex-col gap-6 lg:hidden", children: jackpots.map((jackpot) => (_jsx(JackpotsListItemContext, { value: jackpot, children: _jsx(JackpotsListItemMobile, { style: styles.itemRoot, className: classNames.itemRoot, animate: props.animate, customJackpotChestImage: props.customJackpotChestImage, jackpotProfileShape: props.jackpotProfileShape }) }, jackpot.id))) })] })) : (_jsxs("div", { className: 'mt-5 flex h-fit flex-col items-center justify-center lg:mt-0 lg:h-62', children: [_jsx(Image, { width: 100, height: 100, src: closeChest, alt: "closeChest", className: "size-full h-29.5 w-29.5 mix-blend-luminosity lg:h-25 lg:w-25" }), _jsxs("div", { className: "mt-4 font-semibold text-base text-text-primary-900", children: ["No ", props.heading ?? 'Jackpots'] }), _jsxs("div", { className: "mt-1 text-center text-sm text-text-tertiary-600", children: ["No ", props.heading?.toLocaleLowerCase() ?? 'jackpots', " are running at the moment. ", _jsx("br", {}), "Please check back later!"] })] }))] }) }));
|
|
35
35
|
}
|
|
@@ -3,6 +3,17 @@ interface JackpotsListItemDesktopProps {
|
|
|
3
3
|
className?: string;
|
|
4
4
|
style?: CSSProperties;
|
|
5
5
|
animate?: boolean;
|
|
6
|
+
customJackpotChestImage?: {
|
|
7
|
+
image: {
|
|
8
|
+
open: string;
|
|
9
|
+
closed: string;
|
|
10
|
+
};
|
|
11
|
+
style?: {
|
|
12
|
+
wrapper?: string;
|
|
13
|
+
image?: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
jackpotProfileShape?: 'oval' | 'star';
|
|
6
17
|
}
|
|
7
|
-
export declare function JackpotsListItemDesktop({ animate, ...props }: JackpotsListItemDesktopProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function JackpotsListItemDesktop({ animate, customJackpotChestImage, jackpotProfileShape, ...props }: JackpotsListItemDesktopProps): import("react/jsx-runtime").JSX.Element;
|
|
8
19
|
export {};
|
|
@@ -6,6 +6,7 @@ import { twMerge } from 'tailwind-merge';
|
|
|
6
6
|
import { ArrowNarrowUpRightIcon } from '../../../icons/ArrowNarrowUpRightIcon.js';
|
|
7
7
|
import { ChevronLeftIcon } from '../../../icons/ChevronLeftIcon.js';
|
|
8
8
|
import { ChevronRightIcon } from '../../../icons/ChevronRightIcon.js';
|
|
9
|
+
import { StarIcon } from '../../../icons/StarIcon.js';
|
|
9
10
|
import { Trophy01Icon } from '../../../icons/Trophy01Icon.js';
|
|
10
11
|
import { User01Icon } from '../../../icons/User01Icon.js';
|
|
11
12
|
import closeChest from '../../../images/close-chest.png';
|
|
@@ -22,14 +23,20 @@ import styles from './JackpotsListItem.module.css';
|
|
|
22
23
|
import { JackpotsListItemGameProviders } from './JackpotsListItemGameProviders.js';
|
|
23
24
|
import { JackpotsListItemRules } from './JackpotsListItemRules.js';
|
|
24
25
|
import { useJackpotsListItemData } from './useJackpotsListItemData.js';
|
|
25
|
-
export function JackpotsListItemDesktop({ animate = true, ...props }) {
|
|
26
|
+
export function JackpotsListItemDesktop({ animate = true, customJackpotChestImage, jackpotProfileShape = 'oval', ...props }) {
|
|
26
27
|
const jackpot = useJackpotsListItemContext();
|
|
27
28
|
const { jackpotPayouts, topJackpotPayout, filteredGameProviders, localeInfo, isPayingOut, jackpotAmount, arrowImages, getAccumulatingJackpotDescription, } = useJackpotsListItemData();
|
|
28
29
|
return (_jsxs("div", { className: twMerge('rounded-2xl border border-border-primary bg-bg-tertiary', props.className), children: [_jsxs("div", { style: props.style, className: twMerge('relative flex shrink-0 rounded-2xl p-3 text-center lg:gap-4 lg:p-5'), children: [_jsxs("div", { className: "relative z-1 flex flex-1 flex-col", children: [_jsx("div", { className: "flex h-full flex-col justify-between", children: _jsx("div", { className: "flex w-full justify-between", children: _jsxs("div", { className: "flex w-full flex-col", children: [_jsxs("div", { className: "relative flex w-full justify-between", children: [_jsxs("div", { children: [isPayingOut ? (_jsxs("div", { className: "flex w-fit items-center gap-1 rounded-full border border-utility-success-200 bg-utility-success-50 px-2 py-0.5 font-medium text-utility-success-700 text-xs", children: [_jsx("span", { className: "full size-1.5 animate-pulse rounded bg-utility-success-500" }), "Paying Out"] })) : (_jsxs("div", { className: "flex w-fit items-center gap-1 rounded-full border border-utility-blue-200 bg-utility-blue-50 px-2 py-0.5 font-medium text-utility-blue-700 text-xs", children: [_jsx(ArrowNarrowUpRightIcon, { className: "size-3.5 text-utility-blue-500" }), "Accumulating"] })), _jsx("div", { className: "mt-1 text-left font-medium text-lg text-text-primary-900 lg:mt-5 lg:text-2xl", children: jackpot.name }), _jsx("div", { className: "mt-1.5 w-fit rounded-md bg-bg-primary px-2 py-1 font-bold text-2xl text-brand-400 lg:mt-2 lg:text-4xl", children: formatNumber(jackpotAmount, {
|
|
29
30
|
currency: localeInfo.currency.code,
|
|
30
31
|
minDecimalPlaces: 2,
|
|
31
32
|
maxDecimalPlaces: 2,
|
|
32
|
-
}) })] }), _jsx("div", { className: "min-w-30" }), _jsx("div", { className:
|
|
33
|
+
}) })] }), _jsx("div", { className: "min-w-30" }), _jsx("div", { className: twMerge('right-0 bottom-[-60] z-1 min-w-30 lg:absolute', customJackpotChestImage?.style?.wrapper), children: _jsx(Image, { width: 150, height: 150, src: customJackpotChestImage?.image
|
|
34
|
+
? isPayingOut
|
|
35
|
+
? customJackpotChestImage.image.open
|
|
36
|
+
: customJackpotChestImage.image.closed
|
|
37
|
+
: isPayingOut
|
|
38
|
+
? openChest
|
|
39
|
+
: closeChest, alt: "closeChest", className: twMerge('size-full h-25 w-25 p-2 lg:h-37.5 lg:w-37.5', customJackpotChestImage?.style?.image) }) })] }), topJackpotPayout.amount ? (_jsx("div", { children: _jsxs("div", { className: "relative mt-4 hidden w-full gap-4 rounded-lg bg-bg-primary p-4 lg:flex", children: [jackpotProfileShape === 'oval' ? (_jsxs("div", { className: "relative flex h-18 w-18 items-center justify-center rounded-full bg-bg-tertiary", children: [_jsx(User01Icon, { className: "size-9 text-text-quarterary-500" }), _jsxs("div", { className: "absolute right-0 bottom-0 flex h-6 w-6 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 font-bold text-brand-950 text-xs", children: [topJackpotPayout.multiplier, "x"] })] })) : (_jsxs("div", { className: "relative grid h-18 w-18", children: [_jsx(StarIcon, { className: "col-start-1 row-start-1 h-full w-full" }), _jsx(User01Icon, { className: "z-10 col-start-1 row-start-1 size-9 place-self-center text-text-quarterary-500" }), _jsxs("div", { className: "-right-0 absolute bottom-0 z-20 flex h-7 w-7 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 text-center font-bold text-brand-950 text-xs", children: [topJackpotPayout.multiplier, "x"] })] })), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "flex h-fit w-fit items-center gap-1 rounded-sm border border-utility-brand-200 bg-utility-brand-50 px-2 py-0.5 font-medium text-utility-brand-700 text-xs", children: [_jsx(Trophy01Icon, { className: "size-3.5 text-utility-brand-600" }), "Recent Payout"] }), _jsx("div", { className: "font-semibold", children: mask(topJackpotPayout.member.name, {
|
|
33
40
|
totalCharsCount: 6,
|
|
34
41
|
}) }), _jsx("div", { className: "text-2xl text-brand-400", children: formatNumber(topJackpotPayout.amount, {
|
|
35
42
|
currency: localeInfo.currency.code,
|
|
@@ -3,6 +3,17 @@ interface JackpotsListItemMobileProps {
|
|
|
3
3
|
className?: string;
|
|
4
4
|
style?: CSSProperties;
|
|
5
5
|
animate?: boolean;
|
|
6
|
+
customJackpotChestImage?: {
|
|
7
|
+
image: {
|
|
8
|
+
open: string;
|
|
9
|
+
closed: string;
|
|
10
|
+
};
|
|
11
|
+
style?: {
|
|
12
|
+
wrapper?: string;
|
|
13
|
+
image?: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
jackpotProfileShape?: 'oval' | 'star';
|
|
6
17
|
}
|
|
7
|
-
export declare function JackpotsListItemMobile({ animate, ...props }: JackpotsListItemMobileProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function JackpotsListItemMobile({ animate, customJackpotChestImage, jackpotProfileShape, ...props }: JackpotsListItemMobileProps): import("react/jsx-runtime").JSX.Element;
|
|
8
19
|
export {};
|
|
@@ -9,6 +9,7 @@ import { ArrowNarrowUpIcon } from '../../../icons/ArrowNarrowUpIcon.js';
|
|
|
9
9
|
import { ArrowNarrowUpRightIcon } from '../../../icons/ArrowNarrowUpRightIcon.js';
|
|
10
10
|
import { ChevronLeftIcon } from '../../../icons/ChevronLeftIcon.js';
|
|
11
11
|
import { ChevronRightIcon } from '../../../icons/ChevronRightIcon.js';
|
|
12
|
+
import { StarIcon } from '../../../icons/StarIcon.js';
|
|
12
13
|
import { Trophy01Icon } from '../../../icons/Trophy01Icon.js';
|
|
13
14
|
import { User01Icon } from '../../../icons/User01Icon.js';
|
|
14
15
|
import closeChest from '../../../images/close-chest.png';
|
|
@@ -25,7 +26,7 @@ import styles from './JackpotsListItem.module.css';
|
|
|
25
26
|
import { JackpotsListItemGameProviders } from './JackpotsListItemGameProviders.js';
|
|
26
27
|
import { JackpotsListItemRules } from './JackpotsListItemRules.js';
|
|
27
28
|
import { useJackpotsListItemData } from './useJackpotsListItemData.js';
|
|
28
|
-
export function JackpotsListItemMobile({ animate = true, ...props }) {
|
|
29
|
+
export function JackpotsListItemMobile({ animate = true, customJackpotChestImage, jackpotProfileShape = 'oval', ...props }) {
|
|
29
30
|
const jackpot = useJackpotsListItemContext();
|
|
30
31
|
const { jackpotPayouts, topJackpotPayout, filteredGameProviders, localeInfo, isPayingOut, jackpotAmount, arrowImages, getAccumulatingJackpotDescription, } = useJackpotsListItemData();
|
|
31
32
|
const [isDetailsVisible, setIsDetailsVisible] = useState(false);
|
|
@@ -57,7 +58,13 @@ export function JackpotsListItemMobile({ animate = true, ...props }) {
|
|
|
57
58
|
currency: localeInfo.currency.code,
|
|
58
59
|
minDecimalPlaces: 2,
|
|
59
60
|
maxDecimalPlaces: 2,
|
|
60
|
-
}) })] }), _jsx("div", { className:
|
|
61
|
+
}) })] }), _jsx("div", { className: twMerge('right-0 bottom-[-60] z-1 block min-w-34.5 lg:absolute', customJackpotChestImage?.style?.wrapper), children: _jsx(Image, { width: 100, height: 100, src: customJackpotChestImage?.image
|
|
62
|
+
? isPayingOut
|
|
63
|
+
? customJackpotChestImage.image.open
|
|
64
|
+
: customJackpotChestImage.image.closed
|
|
65
|
+
: isPayingOut
|
|
66
|
+
? openChest
|
|
67
|
+
: closeChest, alt: "closeChest", className: twMerge('size-full h-34.5 w-34.5 p-2 lg:h-37.5 lg:w-37.5', customJackpotChestImage?.style?.image) }) })] }) }) }) }), _jsxs("div", { className: "mt-3 lg:mt-4", children: [_jsxs("div", { className: "mb-1 flex justify-between", children: [_jsx("div", { className: "font-semibold text-text-primary-900 text-xs", children: formatNumber(0, {
|
|
61
68
|
currency: localeInfo.currency.code,
|
|
62
69
|
compact: true,
|
|
63
70
|
}) }), _jsxs("div", { className: "relative flex items-center justify-end gap-1.5", children: [isPayingOut ? (_jsxs("div", { className: "flex w-6 items-center", children: [_jsx("div", { className: twMerge('absolute left-0', styles['animate-arrow-red-flash-1']), children: _jsx(ChevronLeftIcon, { className: "size-4.5" }) }), _jsx("div", { className: twMerge('absolute left-1.5', styles['animate-arrow-red-flash-2']), children: _jsx(ChevronLeftIcon, { className: "size-4.5" }) }), _jsx("div", { className: twMerge('absolute left-3', styles['animate-arrow-red-flash-3']), children: _jsx(ChevronLeftIcon, { className: "size-4.5" }) })] })) : (_jsxs("div", { className: "flex w-6 items-center", children: [_jsx("div", { className: twMerge('absolute left-0', styles['animate-arrow-green-flash-1']), children: _jsx(ChevronRightIcon, { className: "size-4.5" }) }), _jsx("div", { className: twMerge('absolute left-1.5', styles['animate-arrow-green-flash-2']), children: _jsx(ChevronRightIcon, { className: "size-4.5" }) }), _jsx("div", { className: twMerge('absolute left-3', styles['animate-arrow-green-flash-3']), children: _jsx(ChevronRightIcon, { className: "size-4.5" }) })] })), _jsx("div", { className: "font-semibold text-text-primary-900 text-xs", children: formatNumber(jackpot?.maximumJackpotPoolLimit, {
|
|
@@ -78,7 +85,7 @@ export function JackpotsListItemMobile({ animate = true, ...props }) {
|
|
|
78
85
|
currency: localeInfo.currency.code,
|
|
79
86
|
compact: true,
|
|
80
87
|
})} Play now for your chance to win big! 🔥`
|
|
81
|
-
: getAccumulatingJackpotDescription(Number(jackpot?.pool) ?? 0, Number(jackpot?.maximumJackpotPoolLimit) ?? 0) })] }), topJackpotPayout.amount ? (_jsx("div", { children: _jsxs("div", { className: "relative mt-4 flex w-full gap-4 rounded-lg bg-bg-primary p-4", children: [_jsxs("div", { className: "relative flex h-18 w-18 items-center justify-center rounded-full bg-bg-tertiary", children: [_jsx(User01Icon, { className: "size-9 text-text-quarterary-500" }), _jsxs("div", { className: "absolute right-0 bottom-0 flex h-6 w-6 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 font-bold text-brand-950 text-xs", children: [topJackpotPayout.multiplier, "x"] })] }), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "flex h-fit w-fit items-center gap-1 rounded-sm border border-utility-brand-200 bg-utility-brand-50 px-2 py-0.5 font-medium text-utility-brand-700 text-xs", children: [_jsx(Trophy01Icon, { className: "size-3.5 text-utility-brand-600" }), "Recent Payout"] }), _jsx("div", { className: "font-semibold", children: mask(topJackpotPayout.member.name) }), _jsx("div", { className: "text-2xl text-brand-400", children: formatNumber(topJackpotPayout.amount, {
|
|
88
|
+
: getAccumulatingJackpotDescription(Number(jackpot?.pool) ?? 0, Number(jackpot?.maximumJackpotPoolLimit) ?? 0) })] }), topJackpotPayout.amount ? (_jsx("div", { children: _jsxs("div", { className: "relative mt-4 flex w-full gap-4 rounded-lg bg-bg-primary p-4", children: [jackpotProfileShape === 'oval' ? (_jsxs("div", { className: "relative flex h-18 w-18 items-center justify-center rounded-full bg-bg-tertiary", children: [_jsx(User01Icon, { className: "size-9 text-text-quarterary-500" }), _jsxs("div", { className: "absolute right-0 bottom-0 flex h-6 w-6 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 font-bold text-brand-950 text-xs", children: [topJackpotPayout.multiplier, "x"] })] })) : (_jsxs("div", { className: "relative grid h-18 w-18", children: [_jsx(StarIcon, { className: "col-start-1 row-start-1 h-full w-full" }), _jsx(User01Icon, { className: "z-10 col-start-1 row-start-1 size-9 place-self-center text-text-quarterary-500" }), _jsxs("div", { className: "-right-0 absolute bottom-0 z-20 flex h-7 w-7 items-center justify-center rounded-full border-[1.5px] border-bg-primary bg-yellow-400 text-center font-bold text-brand-950 text-xs", children: [topJackpotPayout.multiplier, "x"] })] })), _jsxs("div", { className: "flex flex-col gap-1 text-left", children: [_jsxs("div", { className: "flex h-fit w-fit items-center gap-1 rounded-sm border border-utility-brand-200 bg-utility-brand-50 px-2 py-0.5 font-medium text-utility-brand-700 text-xs", children: [_jsx(Trophy01Icon, { className: "size-3.5 text-utility-brand-600" }), "Recent Payout"] }), _jsx("div", { className: "font-semibold", children: mask(topJackpotPayout.member.name) }), _jsx("div", { className: "text-2xl text-brand-400", children: formatNumber(topJackpotPayout.amount, {
|
|
82
89
|
currency: localeInfo.currency.code,
|
|
83
90
|
minDecimalPlaces: 2,
|
|
84
91
|
maxDecimalPlaces: 2,
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type Options = {
|
|
2
|
+
accountName?: string;
|
|
3
|
+
siteName?: string;
|
|
4
|
+
signInOptions?: 'MOBILE_NUMBER' | 'NAME_AND_PASSWORD';
|
|
5
|
+
};
|
|
6
|
+
export type ErrorCode = 'MEMBER_ACCOUNT_BLACKLISTED' | 'MEMBER_ACCOUNT_SUSPENDED' | 'INVALID_RECAPTCHA_RESPONSE' | 'MEMBER_NOT_FOUND' | 'RATE_LIMIT_REACH' | 'NOT_READY_TO_SEND_VERIFICATION_ERROR' | 'Forbidden';
|
|
7
|
+
export declare function getFriendlyErrorMessage(code: ErrorCode, options?: Options): string;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export function getFriendlyErrorMessage(code, options) {
|
|
2
|
+
const accountName = options?.accountName ?? '';
|
|
3
|
+
const siteName = options?.siteName ?? '';
|
|
4
|
+
const signInOptions = options?.signInOptions ?? 'NAME_AND_PASSWORD';
|
|
5
|
+
switch (code) {
|
|
6
|
+
case 'MEMBER_ACCOUNT_BLACKLISTED':
|
|
7
|
+
return `Your account ${accountName} has been blacklisted due to a serious violation of our policies. For more information or to appeal, please contact the ${siteName} Chat Support team.`;
|
|
8
|
+
case 'MEMBER_ACCOUNT_SUSPENDED':
|
|
9
|
+
return `Your account ${accountName} has been temporarily suspended. Please reach out to the ${siteName} Chat Support team to learn more and get help with resolving the issue.`;
|
|
10
|
+
case 'INVALID_RECAPTCHA_RESPONSE':
|
|
11
|
+
return 'Invalid reCAPTCHA response';
|
|
12
|
+
case 'MEMBER_NOT_FOUND':
|
|
13
|
+
return 'Account not found. Please check your username and try again.';
|
|
14
|
+
case 'RATE_LIMIT_REACH':
|
|
15
|
+
return 'Rate limit exceeded';
|
|
16
|
+
case 'NOT_READY_TO_SEND_VERIFICATION_ERROR':
|
|
17
|
+
return 'Your account is not ready to send verification requests. Please try again later.';
|
|
18
|
+
case 'Forbidden':
|
|
19
|
+
if (signInOptions === 'MOBILE_NUMBER') {
|
|
20
|
+
return 'Invalid verification code. Please check the code and try again.';
|
|
21
|
+
}
|
|
22
|
+
return 'Invalid username or password, please try again.';
|
|
23
|
+
default:
|
|
24
|
+
return 'Something went wrong. Please try again later.';
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export const BRANCHES = [
|
|
2
|
+
{
|
|
3
|
+
code: 'BRCAL',
|
|
4
|
+
name: 'Bingo Republic 2nd floor Primark Center Deparo St., Caloocan City',
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
code: 'BRNAG',
|
|
8
|
+
name: 'Bingo Republic 3rd floor Robinsons Mall, Naga City, Camarines Sur',
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
code: 'BRANT',
|
|
12
|
+
name: 'Bingo Republic 2nd floor Robinsons Mall, San Vicente,Antique',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
code: 'BRCLA',
|
|
16
|
+
name: 'Clark',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
code: 'BRLAG',
|
|
20
|
+
name: 'Laguna',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
code: 'BREAS',
|
|
24
|
+
name: 'Eastwood City, Quezon City',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
code: 'BRMAR',
|
|
28
|
+
name: 'Bingo ng Bayan 4th floor Marikina Public Market, Marikina City',
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
code: 'BRILO',
|
|
32
|
+
name: 'Iloilo',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
code: 'BRFIM',
|
|
36
|
+
name: 'Fisher Mall,Quezon City',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
code: 'BRCAC',
|
|
40
|
+
name: 'Villa Caceres Hotel, Naga City,Camsur',
|
|
41
|
+
},
|
|
42
|
+
];
|
package/dist/handlers/index.d.ts
CHANGED
|
@@ -6,26 +6,26 @@ interface Context {
|
|
|
6
6
|
params: Promise<Params>;
|
|
7
7
|
}
|
|
8
8
|
export declare const GET: (req: NextRequest, { params }: Context) => Promise<NextResponse<{
|
|
9
|
-
ok: true;
|
|
10
|
-
data?: never;
|
|
11
|
-
} | {
|
|
12
9
|
ok: false;
|
|
13
10
|
message: string;
|
|
14
11
|
__error?: unknown;
|
|
12
|
+
} | {
|
|
13
|
+
ok: true;
|
|
14
|
+
data: import("../types").Session;
|
|
15
15
|
}> | NextResponse<{
|
|
16
|
+
ok: true;
|
|
17
|
+
data?: never;
|
|
18
|
+
} | {
|
|
16
19
|
ok: false;
|
|
17
20
|
message: string;
|
|
18
21
|
__error?: unknown;
|
|
19
|
-
} | {
|
|
20
|
-
ok: true;
|
|
21
|
-
data: Record<string, unknown>;
|
|
22
22
|
}> | NextResponse<{
|
|
23
23
|
ok: false;
|
|
24
24
|
message: string;
|
|
25
25
|
__error?: unknown;
|
|
26
26
|
} | {
|
|
27
27
|
ok: true;
|
|
28
|
-
data:
|
|
28
|
+
data: Record<string, unknown>;
|
|
29
29
|
}>>;
|
|
30
30
|
export declare const DELETE: (req: NextRequest, { params }: Context) => Promise<NextResponse<{
|
|
31
31
|
ok: true;
|
package/dist/icons/StarIcon.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export declare function StarIcon({ className }: {
|
|
2
|
+
className?: string;
|
|
3
|
+
}): import("react/jsx-runtime").JSX.Element;
|
package/dist/icons/StarIcon.js
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useId } from 'react';
|
|
4
|
+
export function StarIcon({ className }) {
|
|
5
|
+
const gradientId = useId();
|
|
6
|
+
return (_jsxs("svg", { className: className, xmlns: "http://www.w3.org/2000/svg", width: "75", height: "72", fill: "none", viewBox: "0 0 75 72", children: [_jsx("path", { fill: "#F7D323", stroke: `url(#${gradientId})`, strokeWidth: "3", strokeLinejoin: "round", d: "M34.139 3.597c1.331-2.704 5.1-2.79 6.586-.252l.136.254 8.744 17.753.348.708.781.113 19.55 2.848c3.071.447 4.307 4.237 2.076 6.417L58.214 45.255l-.564.551.133.776 3.34 19.512c.51 2.984-2.498 5.266-5.18 4.091l-.26-.125-17.485-9.212-.699-.369-.7.37-17.484 9.211c-2.743 1.446-5.966-.886-5.439-3.966l3.34-19.512.133-.776-.564-.55L2.64 31.436c-2.231-2.179-.995-5.97 2.077-6.417l19.549-2.848.78-.113.35-.708 8.743-17.753Z" }), _jsx("defs", { children: _jsxs("linearGradient", { id: gradientId, x1: "37.5", x2: "37.5", y1: "0.003", y2: "72.003", gradientUnits: "userSpaceOnUse", children: [_jsx("stop", { stopColor: "#fac515" }), _jsx("stop", { offset: "1", stopColor: "#fac515" })] }) })] }));
|
|
4
7
|
}
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FacebookPixel';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './FacebookPixel.js';
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './GoogleRecaptcha';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './GoogleRecaptcha.js';
|