{"version":3,"file":"static/chunks/23663.8902eb195ceccd06.js","mappings":"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","sources":["webpack://_N_E/./src/components/Home/V3/Carousels/LuckiestWins/Icon/index.tsx","webpack://_N_E/./src/components/Home/V3/Carousels/LuckiestWins/Filter/props.ts","webpack://_N_E/./src/constants/luckiestWins.tsx","webpack://_N_E/./src/components/Home/V3/Carousels/LuckiestWins/Card/index.tsx","webpack://_N_E/./src/utils/math/isPositive.ts","webpack://_N_E/./src/utils/math/isNegative.ts","webpack://_N_E/./src/components/core/Table/CustomCells/TableGameBetCell/index.tsx","webpack://_N_E/./src/hooks/numbers/useOrdinalNumber/index.ts","webpack://_N_E/./src/components/core/Table/CustomCells/TablePositionCell/index.tsx","webpack://_N_E/./src/components/core/Table/CustomCells/TableUser/index.tsx","webpack://_N_E/./src/enums/language.ts","webpack://_N_E/./src/utils/tournaments/getMedal.ts","webpack://_N_E/../../node_modules/@mui/material/Table/TableContext.js","webpack://_N_E/../../node_modules/@mui/material/Table/Tablelvl2Context.js","webpack://_N_E/../../node_modules/@mui/material/TableCell/tableCellClasses.js","webpack://_N_E/../../node_modules/@mui/material/TableCell/TableCell.js","webpack://_N_E/../../packages/common/src/hooks/useIntersectionObserver/index.ts","webpack://_N_E/../../packages/common/src/hoc/WithLazyLoading/index.tsx","webpack://_N_E/./src/components/Home/V3/Carousels/LuckiestWins/Card/styles.module.scss","webpack://_N_E/./src/components/Home/V3/Carousels/LuckiestWins/Icon/styles.module.scss","webpack://_N_E/./src/components/core/Table/CustomCells/TableGameBetCell/styles.module.scss","webpack://_N_E/./src/components/core/Table/CustomCells/TablePositionCell/styles.module.scss","webpack://_N_E/./src/components/core/Table/CustomCells/TableUser/styles.module.scss","webpack://_N_E/../../packages/common/src/hoc/WithLazyLoading/styles.module.scss"],"sourcesContent":["import styles from './styles.module.scss';\n\nexport default function CarousselBiggestWinsIcon() {\n return
;\n}\n","import { Tab } from '@starsoft/common/src/components/Tabs/Tab/props';\n\nexport enum BiggestWinFilterOptions {\n '1Day' = '1day',\n '3Days' = '3Days',\n '7Days' = '7Days',\n}\n\nexport type BiggestWinFilterOptionsProps = Array>;\n\nexport interface CarouselsBiggestWinsFilterProps {\n options: BiggestWinFilterOptionsProps;\n currentOption: BiggestWinFilterOptions;\n onOptionClick: (tab: BiggestWinFilterOptions) => void;\n}\n","import { TableGridColumn } from '@starsoft/common/src/components/TableGrid/props';\nimport TableUser from '@/components/core/Table/CustomCells/TableUser';\nimport TablePositionCell from '@/components/core/Table/CustomCells/TablePositionCell';\nimport TableGameBetCell from '@/components/core/Table/CustomCells/TableGameBetCell';\nimport { Decimal } from '@starsoft/common/services/Decimal';\nimport { DetailedBet } from '@/models/detailed-bet';\n\nexport const luckiestWinsColumns: TableGridColumn[] = [\n {\n field: 'amount',\n headerName: 'table_position',\n renderCell: (row, index) => ,\n },\n {\n field: 'player.username',\n headerName: 'table_username',\n renderCell: (row: DetailedBet) => ,\n },\n {\n field: 'multiplier',\n headerName: 'table_game_multiplier',\n valueFormatter: (detailedBet: DetailedBet) =>\n `${Decimal.fromSubunits(detailedBet?.multiplier, { scale: 4 }).toNumber()}x`,\n },\n {\n field: 'profit',\n headerName: 'table_game_win',\n renderCell: (detailedBet: DetailedBet) => (\n \n ),\n },\n];\n","import {\n Button,\n ErrorCard,\n LottieOrImage,\n TableGrid,\n TransWithDefault,\n} from '@starsoft/common/components';\nimport styles from './styles.module.scss';\nimport CarousselBiggestWinsIcon from '../Icon';\nimport useTranslation from 'next-translate/useTranslation';\nimport { useIsMobile, useLottiePlayer } from '@starsoft/common/hooks';\nimport { useMemo } from 'react';\nimport { BiggestWinFilterOptions } from '../Filter/props';\nimport { luckiestWinsColumns } from '@/constants/luckiestWins';\nimport Link from '@/components/core/Link';\nimport { DetailedBet } from '@/models/detailed-bet';\nimport { TableGridColumn } from '@starsoft/common/src/components/TableGrid/props';\nimport { withLazyLoad } from '@starsoft/common/hoc';\nimport { BigestWinFilter } from '../../BiggestWins/Filter/props';\nimport { BetRankingTypeId } from '@/models/bet/ranking/type';\nimport { useBetRanking } from '@/api/bets/queries/useBetRanking';\n\nfunction LuckiestWinsCardVersion() {\n const { t } = useTranslation('common');\n const lottiePlayer = useLottiePlayer({\n path: '/roulette-cards-v3.json',\n });\n const isMobile: boolean = useIsMobile();\n const columns: TableGridColumn[] = useMemo(\n () => (isMobile ? luckiestWinsColumns.slice(1) : luckiestWinsColumns),\n [isMobile],\n );\n\n const periodId = BigestWinFilter.getTimePeriodByOption(\n BiggestWinFilterOptions['1Day'],\n );\n\n const { data, isPending, refetch, error } = useBetRanking({\n limit: 3,\n typeId: BetRankingTypeId.Multiplier,\n periodId,\n });\n\n return (\n
\n
\n \n \n
\n
\n \n
\n \n
\n

\n {t('luckiest_wins_card_heading')}\n

\n \n \n {t('casino:play')}\n \n \n
\n
\n {(error && ) || (\n \n )}\n
\n
\n
\n );\n}\n\nexport default withLazyLoad(LuckiestWinsCardVersion);\n","export function isPositive(value: number) {\n return Math.sign(value) === 1;\n}\n","export function isNegative(value: number) {\n return Math.sign(value) < 0;\n}\n","import { TableGameWinCellProps } from './props';\nimport styles from './styles.module.scss';\nimport { Image as CoreImage } from '@starsoft/common/components';\nimport { memo, useMemo } from 'react';\nimport { isPositive } from '@/utils/math/isPositive';\nimport { isNegative } from '@/utils/math/isNegative';\nimport { WalletService } from '@starsoft/common/services';\nimport { Decimal } from '@starsoft/common/services/Decimal';\nimport { getMoneyOrAmount } from '@starsoft/common/utils';\n\nfunction TableGameBetCell({\n bet,\n showAmount,\n isProfitStyle,\n isFlexEnd,\n}: TableGameWinCellProps) {\n function getPayout(): number {\n const payout = bet?.payout;\n\n return payout?.toNumber();\n }\n\n const payout: number = useMemo(getPayout, [bet, showAmount]);\n\n return (\n \n \n {WalletService.maskCurrency({\n amount: payout,\n coin: bet?.coin,\n })}\n \n );\n}\n\nexport default memo(TableGameBetCell);\n","import { Language } from '@/enums/language';\nimport useTranslation from 'next-translate/useTranslation';\nimport { useMemo } from 'react';\n\nexport function useOrdinal(number: number) {\n const { lang: language } = useTranslation();\n\n const ordinal = useMemo(() => {\n return formatOrdinal(number, language as Language);\n }, [number, language]);\n\n return ordinal;\n}\n\nfunction formatOrdinal(number: number, locale: Language) {\n const pr = new Intl.PluralRules(locale, { type: 'ordinal' });\n const pluralCategory = pr.select(number);\n const language = locale.split('-')[0];\n\n switch (language) {\n case Language.English: {\n const suffixes: Record = {\n one: 'st',\n two: 'nd',\n few: 'rd',\n other: 'th',\n };\n return `${number}${suffixes[pluralCategory] || 'th'}`;\n }\n\n case Language.Portuguese:\n case Language.Spanish:\n return `${number}º`;\n\n case Language.French:\n if (number === 1) {\n return `${number}er`;\n } else {\n return `${number}e`;\n }\n\n case Language.Dutch:\n return `${number}.`;\n default:\n return number;\n }\n}\n","import { TablePositionCellProps } from './props';\nimport styles from './styles.module.scss';\nimport { Nullable } from '@starsoft/common/interfaces';\nimport { Image } from '@starsoft/common/components';\nimport { getMedal } from '@/utils/tournaments/getMedal';\nimport { useOrdinal } from '@/hooks/numbers/useOrdinalNumber';\n\nexport default function TablePositionCell({\n position,\n hideLabel,\n}: TablePositionCellProps) {\n const ordinal = useOrdinal(position);\n\n const medal: Nullable = getMedal(position);\n\n return (\n
\n {medal && (\n \n )}\n {hideLabel && position > 3 && (\n

{ordinal}

\n )}\n {!hideLabel &&

{ordinal}

}\n
\n );\n}\n","import { ModalsKey } from '@/enums/modalsKey';\nimport { TableUserProps } from './props';\nimport styles from './styles.module.scss';\nimport Link from '@/components/core/Link';\nimport useTranslation from 'next-translate/useTranslation';\nimport { ProfileStatus } from '@/enums/profileStatus';\nimport { Image } from '@starsoft/common/components';\n\nexport default function TableUser({ player }: TableUserProps) {\n const { t } = useTranslation('common');\n const isPrivate: boolean = player?.status !== ProfileStatus.Visible;\n\n return (\n \n {!isPrivate && (\n \n )}\n\n {isPrivate && }\n {isPrivate ? t('private_label') : player?.username}\n \n );\n}\n","export enum Language {\n Chinese = 'zh',\n Russian = 'ru',\n Portuguese = 'pt',\n French = 'fr',\n Spanish = 'es',\n English = 'en',\n Dutch = 'de',\n Indonesian = 'id',\n Italian = 'it',\n}\n","import { Nullable } from '@starsoft/common/interfaces';\n\nexport function getMedal(position: number): Nullable {\n switch (position) {\n case 1:\n return 'gold.webp';\n case 2:\n return 'silver.webp';\n case 3:\n return 'copper.webp';\n default:\n null;\n }\n}\n","'use client';\n\nimport * as React from 'react';\n\n/**\n * @ignore - internal component.\n */\nconst TableContext = /*#__PURE__*/React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n TableContext.displayName = 'TableContext';\n}\nexport default TableContext;","import * as React from 'react';\n\n/**\n * @ignore - internal component.\n */\nconst Tablelvl2Context = /*#__PURE__*/React.createContext();\nif (process.env.NODE_ENV !== 'production') {\n Tablelvl2Context.displayName = 'Tablelvl2Context';\n}\nexport default Tablelvl2Context;","import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nimport generateUtilityClass from '@mui/utils/generateUtilityClass';\nexport function getTableCellUtilityClass(slot) {\n return generateUtilityClass('MuiTableCell', slot);\n}\nconst tableCellClasses = generateUtilityClasses('MuiTableCell', ['root', 'head', 'body', 'footer', 'sizeSmall', 'sizeMedium', 'paddingCheckbox', 'paddingNone', 'alignLeft', 'alignCenter', 'alignRight', 'alignJustify', 'stickyHeader']);\nexport default tableCellClasses;","'use client';\n\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nconst _excluded = [\"align\", \"className\", \"component\", \"padding\", \"scope\", \"size\", \"sortDirection\", \"variant\"];\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport clsx from 'clsx';\nimport composeClasses from '@mui/utils/composeClasses';\nimport { darken, alpha, lighten } from '@mui/system/colorManipulator';\nimport capitalize from '../utils/capitalize';\nimport TableContext from '../Table/TableContext';\nimport Tablelvl2Context from '../Table/Tablelvl2Context';\nimport { useDefaultProps } from '../DefaultPropsProvider';\nimport styled from '../styles/styled';\nimport tableCellClasses, { getTableCellUtilityClass } from './tableCellClasses';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst useUtilityClasses = ownerState => {\n const {\n classes,\n variant,\n align,\n padding,\n size,\n stickyHeader\n } = ownerState;\n const slots = {\n root: ['root', variant, stickyHeader && 'stickyHeader', align !== 'inherit' && `align${capitalize(align)}`, padding !== 'normal' && `padding${capitalize(padding)}`, `size${capitalize(size)}`]\n };\n return composeClasses(slots, getTableCellUtilityClass, classes);\n};\nconst TableCellRoot = styled('td', {\n name: 'MuiTableCell',\n slot: 'Root',\n overridesResolver: (props, styles) => {\n const {\n ownerState\n } = props;\n return [styles.root, styles[ownerState.variant], styles[`size${capitalize(ownerState.size)}`], ownerState.padding !== 'normal' && styles[`padding${capitalize(ownerState.padding)}`], ownerState.align !== 'inherit' && styles[`align${capitalize(ownerState.align)}`], ownerState.stickyHeader && styles.stickyHeader];\n }\n})(({\n theme,\n ownerState\n}) => _extends({}, theme.typography.body2, {\n display: 'table-cell',\n verticalAlign: 'inherit',\n // Workaround for a rendering bug with spanned columns in Chrome 62.0.\n // Removes the alpha (sets it to 1), and lightens or darkens the theme color.\n borderBottom: theme.vars ? `1px solid ${theme.vars.palette.TableCell.border}` : `1px solid\n ${theme.palette.mode === 'light' ? lighten(alpha(theme.palette.divider, 1), 0.88) : darken(alpha(theme.palette.divider, 1), 0.68)}`,\n textAlign: 'left',\n padding: 16\n}, ownerState.variant === 'head' && {\n color: (theme.vars || theme).palette.text.primary,\n lineHeight: theme.typography.pxToRem(24),\n fontWeight: theme.typography.fontWeightMedium\n}, ownerState.variant === 'body' && {\n color: (theme.vars || theme).palette.text.primary\n}, ownerState.variant === 'footer' && {\n color: (theme.vars || theme).palette.text.secondary,\n lineHeight: theme.typography.pxToRem(21),\n fontSize: theme.typography.pxToRem(12)\n}, ownerState.size === 'small' && {\n padding: '6px 16px',\n [`&.${tableCellClasses.paddingCheckbox}`]: {\n width: 24,\n // prevent the checkbox column from growing\n padding: '0 12px 0 16px',\n '& > *': {\n padding: 0\n }\n }\n}, ownerState.padding === 'checkbox' && {\n width: 48,\n // prevent the checkbox column from growing\n padding: '0 0 0 4px'\n}, ownerState.padding === 'none' && {\n padding: 0\n}, ownerState.align === 'left' && {\n textAlign: 'left'\n}, ownerState.align === 'center' && {\n textAlign: 'center'\n}, ownerState.align === 'right' && {\n textAlign: 'right',\n flexDirection: 'row-reverse'\n}, ownerState.align === 'justify' && {\n textAlign: 'justify'\n}, ownerState.stickyHeader && {\n position: 'sticky',\n top: 0,\n zIndex: 2,\n backgroundColor: (theme.vars || theme).palette.background.default\n}));\n\n/**\n * The component renders a `` element when the parent context is a header\n * or otherwise a `` element.\n */\nconst TableCell = /*#__PURE__*/React.forwardRef(function TableCell(inProps, ref) {\n const props = useDefaultProps({\n props: inProps,\n name: 'MuiTableCell'\n });\n const {\n align = 'inherit',\n className,\n component: componentProp,\n padding: paddingProp,\n scope: scopeProp,\n size: sizeProp,\n sortDirection,\n variant: variantProp\n } = props,\n other = _objectWithoutPropertiesLoose(props, _excluded);\n const table = React.useContext(TableContext);\n const tablelvl2 = React.useContext(Tablelvl2Context);\n const isHeadCell = tablelvl2 && tablelvl2.variant === 'head';\n let component;\n if (componentProp) {\n component = componentProp;\n } else {\n component = isHeadCell ? 'th' : 'td';\n }\n let scope = scopeProp;\n // scope is not a valid attribute for elements.\n // source: https://html.spec.whatwg.org/multipage/tables.html#the-td-element\n if (component === 'td') {\n scope = undefined;\n } else if (!scope && isHeadCell) {\n scope = 'col';\n }\n const variant = variantProp || tablelvl2 && tablelvl2.variant;\n const ownerState = _extends({}, props, {\n align,\n component,\n padding: paddingProp || (table && table.padding ? table.padding : 'normal'),\n size: sizeProp || (table && table.size ? table.size : 'medium'),\n sortDirection,\n stickyHeader: variant === 'head' && table && table.stickyHeader,\n variant\n });\n const classes = useUtilityClasses(ownerState);\n let ariaSort = null;\n if (sortDirection) {\n ariaSort = sortDirection === 'asc' ? 'ascending' : 'descending';\n }\n return /*#__PURE__*/_jsx(TableCellRoot, _extends({\n as: component,\n ref: ref,\n className: clsx(classes.root, className),\n \"aria-sort\": ariaSort,\n scope: scope,\n ownerState: ownerState\n }, other));\n});\nprocess.env.NODE_ENV !== \"production\" ? TableCell.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * Set the text-align on the table cell content.\n *\n * Monetary or generally number fields **should be right aligned** as that allows\n * you to add them up quickly in your head without having to worry about decimals.\n * @default 'inherit'\n */\n align: PropTypes.oneOf(['center', 'inherit', 'justify', 'left', 'right']),\n /**\n * The content of the component.\n */\n children: PropTypes.node,\n /**\n * Override or extend the styles applied to the component.\n */\n classes: PropTypes.object,\n /**\n * @ignore\n */\n className: PropTypes.string,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * Sets the padding applied to the cell.\n * The prop defaults to the value (`'default'`) inherited from the parent Table component.\n */\n padding: PropTypes.oneOf(['checkbox', 'none', 'normal']),\n /**\n * Set scope attribute.\n */\n scope: PropTypes.string,\n /**\n * Specify the size of the cell.\n * The prop defaults to the value (`'medium'`) inherited from the parent Table component.\n */\n size: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['medium', 'small']), PropTypes.string]),\n /**\n * Set aria-sort direction.\n */\n sortDirection: PropTypes.oneOf(['asc', 'desc', false]),\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object]),\n /**\n * Specify the cell type.\n * The prop defaults to the value inherited from the parent TableHead, TableBody, or TableFooter components.\n */\n variant: PropTypes /* @typescript-to-proptypes-ignore */.oneOfType([PropTypes.oneOf(['body', 'footer', 'head']), PropTypes.string])\n} : void 0;\nexport default TableCell;","import { useEffect, useState, useRef, useCallback } from 'react';\n\n/**\n * Custom hook to observe the intersection of a target element with the viewport.\n * It uses the Intersection Observer API to determine if the target element is in view.\n *\n * @param {number} threshold - A number between 0 and 1 indicating the percentage of the target's visibility required to trigger the observer.\n * @returns {[boolean, React.RefObject, React.RefObject]} - Returns a tuple containing:\n * - A boolean indicating if the target element is intersecting or has been rendered.\n * - A ref object to attach to the target element.\n * - A ref object to attach to a buffer element.\n *\n * Example usage:\n * const [isVisible, targetRef, bufferRef] = useIntersectionObserver(0.5);\n */\nexport const useIntersectionObserver = (\n threshold = 0,\n): [\n boolean,\n React.RefObject,\n React.RefObject,\n] => {\n // State to track if the target element is intersecting\n const [isIntersecting, setIsIntersecting] = useState(false);\n // State to track if the target element has been rendered\n const [hasRendered, setHasRendered] = useState(false);\n // State to count the number of times the target has intersected\n const [count, setCount] = useState(0);\n\n // Ref to attach to the target element\n const targetRef = useRef(null);\n // Ref to attach to the buffer element\n const bufferRef = useRef(null);\n\n /**\n * Callback function to update the intersection state.\n * It is triggered whenever the intersection state of the target element changes.\n *\n * @param {IntersectionObserverEntry[]} entries - Array of intersection observer entries.\n */\n const updateIntersection = useCallback(\n (entries: IntersectionObserverEntry[]) => {\n const entry = entries[0];\n setIsIntersecting(entry.isIntersecting);\n\n if (entry.isIntersecting && !hasRendered) {\n if (count > 1) {\n setHasRendered(true);\n return;\n }\n\n setCount(prevCount => prevCount + 1);\n }\n },\n [count, hasRendered],\n );\n\n /**\n * Callback function to handle the observation of the buffer element.\n * Sets up the Intersection Observer and starts observing the buffer element.\n *\n * @returns {Function} - A cleanup function to unobserve the buffer element.\n */\n const handleObserve = useCallback(() => {\n const observer = new IntersectionObserver(updateIntersection, {\n threshold,\n rootMargin: '100px 0px 100px 0px',\n });\n\n const bufferElement = bufferRef.current;\n if (bufferElement) {\n observer.observe(bufferElement);\n }\n\n return () => {\n if (bufferElement) {\n observer.unobserve(bufferElement);\n }\n };\n }, [threshold, updateIntersection]);\n\n // Effect to start observing the buffer element when the component mounts and clean up when it unmounts\n useEffect(handleObserve, [threshold, handleObserve]);\n\n // Return the intersection state and refs for the target and buffer elements\n return [isIntersecting || hasRendered, targetRef, bufferRef];\n};\n","/* eslint-disable react/display-name */\nimport React, { ComponentType } from 'react';\nimport styles from './styles.module.scss';\nimport { useIntersectionObserver } from '@starsoft/common/hooks';\n\n/**\n * Higher-Order Component (HOC) for lazy loading a component based on its visibility in the viewport.\n *\n * @template T - Type of the props that the wrapped component accepts.\n * @param {ComponentType} WrappedComponent - The component to be lazy-loaded.\n * @param {number} [threshold=0] - The threshold for the intersection observer. Default is 0.\n * @returns {React.FC} A functional component that wraps the given component and lazy loads it.\n *\n * @example\n * // Usage example:\n * const LazyLoadedComponent = withLazyLoad(MyComponent, 0.5);\n *\n * function App() {\n * return (\n *
\n * \n *
\n * );\n * }\n */\nexport const withLazyLoad = (\n WrappedComponent: ComponentType,\n threshold = 0,\n): React.FC => {\n return (props: T) => {\n const [isInView, ref, bufferRef] = useIntersectionObserver(threshold);\n\n return (\n
\n
\n
\n {isInView ? : null}\n
\n
\n );\n };\n};\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"styles_container__M6MQF\",\"container__header\":\"styles_container__header__5yTeA\",\"container__card\":\"styles_container__card__LF4g1\",\"container__card__wrapper\":\"styles_container__card__wrapper__L_vbl\",\"container__card__wrapper--remove-overflow\":\"styles_container__card__wrapper--remove-overflow__Y8NOA\",\"container__card__wrapper__heading\":\"styles_container__card__wrapper__heading___sQrA\",\"container__card__wrapper__lottie\":\"styles_container__card__wrapper__lottie__6hVWc\",\"container__card__wrapper__lottie--image\":\"styles_container__card__wrapper__lottie--image__SlGj3\",\"container__card__wrapper__button\":\"styles_container__card__wrapper__button__ZWgwW\",\"skeleton-animation\":\"styles_skeleton-animation__g0Fwj\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"icon\":\"styles_icon__CziFa\",\"ping\":\"styles_ping__WRfMC\",\"skeleton-animation\":\"styles_skeleton-animation__S4JUF\",\"pulse\":\"styles_pulse__WXnUC\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"styles_container__TCOF2\",\"container--end\":\"styles_container--end__ICCQH\",\"container--positive\":\"styles_container--positive__Nbynh\",\"container--negative\":\"styles_container--negative__P4iKj\",\"container__coin\":\"styles_container__coin__IY8n8\",\"skeleton-animation\":\"styles_skeleton-animation__fgZ0D\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"row\":\"styles_row__rVlDm\",\"row__image\":\"styles_row__image__Oisxt\",\"row__badge\":\"styles_row__badge__R9Q2f\",\"row__badge--1-place\":\"styles_row__badge--1-place__dMG1b\",\"row__label\":\"styles_row__label__9JdLL\",\"row__badge--2-place\":\"styles_row__badge--2-place__a0roM\",\"row__badge--3-place\":\"styles_row__badge--3-place__m3wGM\",\"row__badge__position\":\"styles_row__badge__position__Squrx\",\"row--strong\":\"styles_row--strong__7TutM\",\"container__label\":\"styles_container__label__OBM4n\",\"row--1-place\":\"styles_row--1-place__x9tpB\",\"row--2-place\":\"styles_row--2-place__A0jc9\",\"row--3-place\":\"styles_row--3-place__IbImw\",\"skeleton-animation\":\"styles_skeleton-animation__lHSZ8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"styles_container__MVxpZ\",\"container--disabled\":\"styles_container--disabled____UOp\",\"container__image\":\"styles_container__image__m8fEv\",\"skeleton-animation\":\"styles_skeleton-animation__y2tlj\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"styles_container__be7Ct\",\"container__buffer\":\"styles_container__buffer__rTJDn\",\"container__content\":\"styles_container__content__NI31r\",\"skeleton-animation\":\"styles_skeleton-animation__brPd7\"};"],"names":["BiggestWinFilterOptions","CarousselBiggestWinsIcon","jsx_runtime","jsx","div","className","styles","luckiestWinsColumns","field","headerName","renderCell","row","index","TablePositionCell","position","TableUser","player","valueFormatter","concat","Decimal","fromSubunits","detailedBet","multiplier","scale","toNumber","TableGameBetCell","bet","isProfitStyle","Card","withLazyLoad","data","t","useTranslation","lottiePlayer","useLottiePlayer","path","isMobile","useIsMobile","columns","useMemo","slice","periodId","BigestWinFilter","getTimePeriodByOption","isPending","refetch","error","useBetRanking","limit","typeId","BetRankingTypeId","Multiplier","jsxs","TransWithDefault","i18nKey","LottieOrImage","lottie","image","process","classList","h3","Link","href","Button","useMaxContent","ErrorCard","TableGrid","rows","isLoading","CustomCells_TableGameBetCell","memo","param","showAmount","isFlexEnd","payout","Math","sign","CoreImage","width","height","src","coin","WalletService","maskCurrency","amount","hideLabel","ordinal","useOrdinal","number","lang","language","formatOrdinal","locale","pluralCategory","pr","Intl","PluralRules","type","select","split","Language","English","suffixes","one","two","few","other","Portuguese","Spanish","French","Dutch","medal","getMedal","Image","alt","bundle","p","isPrivate","status","ProfileStatus","Visible","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","modal","ModalsKey","UserProfile","slug","photo","i","username","TableContext","React","Tablelvl2Context","getTableCellUtilityClass","slot","generateUtilityClass","tableCellClasses","generateUtilityClasses","_excluded","useUtilityClasses","ownerState","classes","variant","align","padding","size","stickyHeader","slots","root","capitalize","composeClasses","TableCellRoot","styled","name","overridesResolver","props","theme","_extends","typography","body2","display","verticalAlign","borderBottom","vars","palette","TableCell","border","mode","lighten","alpha","divider","darken","textAlign","color","text","primary","lineHeight","pxToRem","fontWeight","fontWeightMedium","secondary","fontSize","paddingCheckbox","flexDirection","top","zIndex","backgroundColor","background","default","TableCell_TableCell","inProps","ref","component","useDefaultProps","componentProp","paddingProp","scope","scopeProp","sizeProp","sortDirection","variantProp","_objectWithoutPropertiesLoose","table","tablelvl2","isHeadCell","undefined","ariaSort","_jsx","as","clsx","useIntersectionObserver","threshold","isIntersecting","setIsIntersecting","useState","hasRendered","setHasRendered","count","setCount","targetRef","useRef","bufferRef","updateIntersection","useCallback","entry","entries","prevCount","handleObserve","observer","IntersectionObserver","rootMargin","bufferElement","current","observe","unobserve","useEffect","WrappedComponent","isInView","module","exports"],"sourceRoot":""}