{"version":3,"file":"static/chunks/65019-26bdb10a12bbfd53.js","sources":["webpack://_N_E/./src/LegacyApp/client/components/checkbox/checkbox.style.js","webpack://_N_E/./src/LegacyApp/hooks/app/useTimeout.ts","webpack://_N_E/./src/LegacyApp/hooks/fetch/useGetDataArray.ts","webpack://_N_E/./src/common/components/AspectRatioWrapper/AspectRatioWrapper.styled.tsx","webpack://_N_E/./src/common/components/contentLoaders/LoaderListWrapper.jsx","webpack://_N_E/./src/common/icons/slots/ArrowIcon.tsx","webpack://_N_E/./src/modules/games/LimboGame/LimboCounter/LimboCounter.styled.js","webpack://_N_E/./src/modules/games/PlinkoGame/components/PlinkoResult/PlinkoResult.styled.ts","webpack://_N_E/./src/modules/modals/components/BetModal/BetDetails.tsx","webpack://_N_E/./src/modules/modals/components/BetModal/BetModal.styled.ts","webpack://_N_E/./src/modules/slots/components/GameImage.tsx","webpack://_N_E/./src/modules/slots/components/ProviderLogo.tsx","webpack://_N_E/./src/modules/slots/components/SlotDropsAndWinsWatermark.tsx","webpack://_N_E/./src/modules/slots/components/SlotInfo.tsx","webpack://_N_E/./src/modules/slots/components/SlotTile.tsx","webpack://_N_E/./src/modules/slots/components/search/SlotsSearchModal.tsx","webpack://_N_E/./src/modules/slots/components/search/SlotsSearchResult.tsx","webpack://_N_E/./src/modules/slots/context/SlotsProvidersContext.ts","webpack://_N_E/./src/modules/slots/hooks/useFetchGames.ts","webpack://_N_E/./src/modules/slots/hooks/useFetchProviders.ts","webpack://_N_E/./src/modules/slots/hooks/useFetchSearchTerm.ts","webpack://_N_E/./src/modules/slots/services/Slots.mapper.ts","webpack://_N_E/./src/ui/components/badge/index.tsx","webpack://_N_E/./src/ui/components/badge/mixins/BadgeType.mixin.ts","webpack://_N_E/./src/ui/components/badge/mixins/BadgeSize.mixin.ts"],"sourceRoot":"","sourcesContent":["import styled, { css } from 'styled-components';\nimport { boxNoHeight } from '../../modules/style/defaults';\n\nexport const CheckboxStyle = styled.div.attrs(() => ({\n\tclassName: 'checkbox',\n}))`\n\t${boxNoHeight};\n\tcursor: pointer;\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\talign-items: center;\n\n\tlabel {\n\t\tposition: relative;\n\t\tmargin-bottom: 0 !important;\n\t}\n\n\t[type='checkbox'] {\n\t\tpointer-events: none;\n\t}\n`;\n\nconst getWrapper = (props) => {\n\tlet color = 'var(--color-dark-600)';\n\tif (props.isColor) {\n\t\tcolor = props.theme.colors.active;\n\t}\n\tif (props.isError) {\n\t\tcolor = props.theme.colors.negative;\n\t}\n\treturn css`\n\t\tbackground-color: ${color};\n\t\tborder: 1px solid var(--color-dark-400);\n\t`;\n};\n\nexport const CheckboxWrapperStyle = styled.div.attrs(() => ({\n\tclassName: 'checkbox__wrapper',\n}))`\n\tposition: relative;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: flex-start;\n\tmargin-right: 20px;\n\n\t[type='checkbox'] {\n\t\topacity: 0;\n\t}\n`;\n\nexport const StyledCheckboxBox = styled.div`\n\tborder-radius: 4px;\n\tdisplay: block;\n\theight: 16px;\n\tposition: absolute;\n\twidth: 16px;\n\t${getWrapper}\n\n\tsvg {\n\t\theight: 75%;\n\t\tleft: 50%;\n\t\tposition: absolute;\n\t\ttop: 50%;\n\t\ttransform: translate(-50%, -50%);\n\n\t\tpath {\n\t\t\tfill: white;\n\t\t}\n\t}\n`;\n","import { useCallback, useRef } from 'react';\nimport { useOnMount } from '@common/hooks/useOnMount';\n\nexport const useTimeout = () => {\n\tconst timeoutHandler = useRef(null);\n\n\tconst _setTimeout = useCallback((callback, timeout) => {\n\t\tif (timeoutHandler.current) {\n\t\t\tclearTimeout(timeoutHandler.current);\n\t\t\ttimeoutHandler.current = null;\n\t\t}\n\t\tif (timeout) {\n\t\t\ttimeoutHandler.current = setTimeout(() => {\n\t\t\t\tcallback();\n\t\t\t}, timeout);\n\t\t}\n\t}, []);\n\n\tuseOnMount(() => () => {\n\t\tclearTimeout(timeoutHandler.current);\n\t});\n\n\treturn {\n\t\tsetTimeout: _setTimeout,\n\t};\n};\n","import { useCallback, useEffect, useMemo, useState } from 'react';\nimport { isFunction } from '@common/methods/isFunction';\nimport { usePrevious } from '../render/usePrevious';\n\nexport interface UseGetDataArrayOptions {\n\tloaded?: boolean;\n\tdata?: T[];\n\tcount?: number;\n\tloading?: boolean;\n}\n\nexport type UseGetDataArrayCallback = (\n\tquery?: Q,\n\tprops?: any,\n) => Promise<{ data: T[]; count?: number }>;\n\nexport const useGetDataArray = (\n\tkey: string,\n\tcallback: UseGetDataArrayCallback,\n\toptions?: UseGetDataArrayOptions,\n): {\n\tloaded?: boolean;\n\tdata?: T[];\n\tcount?: number;\n\tloading?: boolean;\n\tupdate?: () => Promise;\n} => {\n\tconst defaults = useMemo(\n\t\t() => ({\n\t\t\tloaded: options?.loaded || false,\n\t\t\tdata: options?.data || [],\n\t\t\tcount: options?.count || 0,\n\t\t\tloading: options?.loading || false,\n\t\t}),\n\t\t[options?.loaded, options?.data, options?.count, options?.loading],\n\t);\n\n\tconst [loaded, setLoaded] = useState(defaults.loaded);\n\tconst [loading, setLoading] = useState(defaults.loading);\n\tconst [data, setData] = useState(defaults.data);\n\tconst [count, setCount] = useState(defaults.count);\n\n\tconst prevKey = usePrevious(key);\n\n\tconst update = useCallback(async () => {\n\t\tif (!isFunction(callback) || loading) {\n\t\t\treturn;\n\t\t}\n\t\tsetLoading(true);\n\t\tconst { data, count } = await callback().catch((error) => {\n\t\t\tconsole.error(error);\n\t\t\treturn defaults;\n\t\t});\n\t\tif (data === null) {\n\t\t\tsetLoading(false);\n\t\t\treturn;\n\t\t}\n\t\tsetData(data);\n\t\tif (count) {\n\t\t\tsetCount(count);\n\t\t}\n\t\tsetLoading(false);\n\t\tsetLoaded(true);\n\t}, [callback, defaults, loading]);\n\n\tuseEffect(() => {\n\t\tif (key !== prevKey || (!loaded && !loading)) {\n\t\t\tupdate();\n\t\t}\n\t}, [key, loaded, loading, prevKey, update]);\n\n\treturn {\n\t\tloaded,\n\t\tloading,\n\t\tdata: data?.length ? data : options?.data || [],\n\t\tcount: count || options?.count,\n\t\tupdate,\n\t};\n};\n","import styled, { css } from 'styled-components';\n\ninterface AspectRatioWrapperProps {\n\tratio?: number;\n\tmaxHeight?: number | string;\n\toverflow?: string;\n\theight?: string;\n}\n\nexport const StyledAspectRatioWrapper = styled.div`\n\t${(props) =>\n\t\tprops.height\n\t\t\t? css`\n\t\t\t\t\theight: ${props.height};\n\t\t\t `\n\t\t\t: ''}\n\t${(props) =>\n\t\tprops.maxHeight\n\t\t\t? css`\n\t\t\t\t\tmax-height: ${props.maxHeight};\n\t\t\t `\n\t\t\t: ''}\n\t${(props) =>\n\t\tprops.overflow\n\t\t\t? css`\n\t\t\t\t\toverflow: ${props.overflow};\n\t\t\t `\n\t\t\t: ''}\n\tposition: relative;\n\t${(props) =>\n\t\tprops.ratio\n\t\t\t? css`\n\t\t\t\t\t:before {\n\t\t\t\t\t\tcontent: '';\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\tpadding-top: ${(1 / props.ratio) * 100}%;\n\t\t\t\t\t}\n\t\t\t `\n\t\t\t: ''}\n`;\n\nStyledAspectRatioWrapper.defaultProps = {\n\tratio: 16 / 9,\n\tmaxHeight: 'auto',\n};\n\nexport const StyledAspectRatioInner = styled.div`\n\theight: 100%;\n\tleft: 0;\n\tposition: absolute;\n\ttop: 0;\n\ttransition: 300ms;\n\twidth: 100%;\n`;\n","import { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nimport { sequenceArray } from '@legacyApp/client/modules/app/appService';\nimport { isFunction } from '../../methods/isFunction';\n\nconst LoaderListWrapper = ({\n\tlist,\n\tlistElement,\n\tloaderWrapper,\n\tloaded,\n\tpreloadLength,\n\tpreloadElement,\n\tlistElementCallback,\n\tnoDataElement,\n}) => {\n\t// console.log('LoaderListWrapper', {\n\t// \tlist,\n\t// \tlistElement,\n\t// \tloaderWrapper,\n\t// \tloaded,\n\t// \tpreloadLength,\n\t// \tpreloadElement,\n\t// \tlistElementCallback,\n\t// \tnoDataElement,\n\t// });\n\tif (list?.length) {\n\t\treturn listElement || list.map(listElementCallback);\n\t}\n\tif (!loaded && preloadLength && preloadElement) {\n\t\tconst Wrapper = loaderWrapper || Fragment;\n\t\treturn (\n\t\t\t\n\t\t\t\t{sequenceArray(preloadLength).map((el, index) =>\n\t\t\t\t\tisFunction(preloadElement)\n\t\t\t\t\t\t? preloadElement(el, index)\n\t\t\t\t\t\t: preloadElement,\n\t\t\t\t)}\n\t\t\t\n\t\t);\n\t}\n\tif (loaded && noDataElement) {\n\t\treturn noDataElement;\n\t}\n\treturn null;\n};\n\nLoaderListWrapper.propTypes = {\n\tlist: PropTypes.array,\n\tlistElement: PropTypes.node,\n\tloaderWrapper: PropTypes.any,\n\tloaded: PropTypes.bool,\n\tpreloadLength: PropTypes.number,\n\tpreloadElement: PropTypes.any,\n\tlistElementCallback: PropTypes.func,\n\tnoDataElement: PropTypes.any,\n};\n\nexport { LoaderListWrapper };\n","import { Svg } from '@legacyApp/client/components/svg/Svg';\n\nexport const ArrowIcon = () =>\n\tSvg({\n\t\tcontent: (\n\t\t\t<>\n\t\t\t\t\n\t\t\t\n\t\t),\n\t\twidth: 38,\n\t\theight: 43,\n\t});\n","import styled, { css } from 'styled-components';\n\nconst getMobileFontSize = (props) => {\n\t// 80 / 50\n\tconst fontScale = 80 / 50;\n\tlet fontSize = (props.$screenWidth / (props.$length || 3)) * 0.8 * fontScale;\n\tif (fontSize > (props.$noTarget ? 40 : 80)) {\n\t\tfontSize = props.$noTarget ? 40 : 80;\n\t}\n\treturn css`\n\t\tfont-size: ${fontSize}px;\n\t\ti,\n\t\tsvg {\n\t\t\tfont-size: ${fontSize * 0.6}px;\n\t\t\tmargin-left: ${fontSize / fontScale / 4}px;\n\t\t\tpadding-top: ${fontSize * 0.3}px;\n\t\t}\n\t`;\n};\n\nexport const StyledLimboCounter = styled.div.attrs({\n\tclassName: 'game--limbo__result',\n})`\n\t${(props) =>\n\t\tprops.$screenWidth\n\t\t\t? getMobileFontSize(props)\n\t\t\t: css`\n\t\t\t\t\tfont-size: ${props.$noTarget ? '50' : '100'}px;\n\t\t\t `};\n\talign-items: center;\n\tdisplay: flex;\n\tjustify-content: center;\n\tmargin: 10px 0;\n\twhite-space: nowrap;\n\twidth: 100%;\n\n\t${(props) =>\n\t\tprops.$screenWidth\n\t\t\t? ''\n\t\t\t: css`\n\t\t\t\t\ti,\n\t\t\t\t\tsvg {\n\t\t\t\t\t\tfont-size: ${props.$noTarget ? '40' : '70'}px;\n\t\t\t\t\t\tmargin-left: ${props.$noTarget ? '10' : '20'}px;\n\t\t\t\t\t\tpadding-top: ${props.$noTarget ? '15' : '25'}px;\n\t\t\t\t\t}\n\t\t\t `};\n\n\t@media (max-width: ${(props) => props.theme.media.maxWidthTablet}) {\n\t\t${(props) =>\n\t\t\tprops.$screenWidth\n\t\t\t\t? ''\n\t\t\t\t: css`\n\t\t\t\t\t\tfont-size: ${props.$noTarget ? '40' : '80'}px;\n\t\t\t\t `};\n\t\tmargin: 5px 0 0;\n\n\t\t${(props) =>\n\t\t\tprops.$screenWidth\n\t\t\t\t? ''\n\t\t\t\t: css`\n\t\t\t\t\t\ti,\n\t\t\t\t\t\tsvg {\n\t\t\t\t\t\t\tfont-size: ${props.$noTarget ? '28' : '50'}px;\n\t\t\t\t\t\t\tmargin-left: ${props.$noTarget ? '5' : '10'}px;\n\t\t\t\t\t\t\tpadding-top: ${props.$noTarget ? '12' : '20'}px;\n\t\t\t\t\t\t}\n\t\t\t\t `};\n\t}\n\n\t@media (max-width: ${(props) => props.theme.media.maxWidthVerySmall}) {\n\t\tmargin: 0;\n\t}\n`;\n","import styled, { css } from 'styled-components';\nimport { Risk } from '../../types';\nimport { getBallColor } from '../playground/PixiJS/methods/getBallColor';\n\ninterface PlinkoGameBodyStyledProps {\n\t$resultIndex?: number;\n\t$risk?: Risk;\n}\n\nconst BALL_SIZE = 15;\nconst BORDER_SIZE = 1;\n\nconst getMultipliersWidth = (props: PlinkoGameBodyStyledProps) => {\n\tconst colors = getBallColor(props.$risk);\n\n\treturn css`\n\t\tbackground-color: ${colors.fill};\n\t\tborder: ${BORDER_SIZE}px solid ${colors.line};\n\t`;\n};\n\nexport const PlinkoResultStyled = styled.div`\n\tpadding-bottom: 10px;\n\tpadding-top: 20px;\n\twidth: 100%;\n`;\n","import React, { FC, PropsWithChildren } from 'react';\nimport styled from 'styled-components';\nimport { HiddenDataStyled } from '@ui/hidden-data/hidden-data.styled';\nimport { trans } from '@legacyApp/client/modules/translation/translate';\nimport { UserLogin } from '@common/components/user/UserLogin/UserLogin';\nimport { formatToFullDate } from '@legacyApp/client/modules/app/timeService';\nimport { UserType } from '@legacyApp/types/user/UserType';\nimport { useAppMobile } from '@common/selectors/app.selectors';\nimport { GameIcon } from '../../../games/Game/components/Game.components/gameIcon';\n\nexport const BetDetails: FC<\n\tPropsWithChildren<{\n\t\tuser: UserType;\n\t\tid: string;\n\t\tpublished_at: number;\n\t\tgame: string;\n\t\tIcon?: React.ReactNode;\n\t}>\n> = ({ user, id, published_at, Icon, game }) => {\n\tconst isMobile = useAppMobile();\n\tconst Icon_ = Icon || ;\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{isMobile ? (\n\t\t\t\t\t{game && Icon_} \n\t\t\t\t) : (\n\t\t\t\t\t\n\t\t\t\t\t\t{game && Icon_} {game}:\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t\t\n\t\t\t\t\t#{id}\n\t\t\t\t\n\t\t\t\n\t\t\t
span]:flex [&>span]:items-center\">\n\t\t\t\t\n\t\t\t\t\t{trans({ label: 'Placed by' })}:{' '}\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t{user && }\n\t\t\t\t{' '}\n\t\t\t\t\n\t\t\t\t\t{trans({ label: 'at' })}\n\t\t\t\t{' '}\n\t\t\t\t\n\t\t\t\t\t{formatToFullDate(published_at * 1000)}\n\t\t\t\t\n\t\t\t
\n\t\t
\n\t);\n};\n\nexport const BetDetailsIdStyled = styled.div`\n\timg {\n\t\theight: 12px;\n\t}\n`;\n\nexport const BetDetailsStyled = styled.div`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 4px;\n\twidth: 100%;\n\n\t${HiddenDataStyled} {\n\t\tdisplay: inline-flex !important;\n\t\tposition: relative;\n\n\t\tspan {\n\t\t\tcolor: var(--color-blue-dark) !important;\n\t\t}\n\n\t\tsvg {\n\t\t\tpath {\n\t\t\t\tfill: var(--color-blue-dark);\n\t\t\t}\n\t\t}\n\t}\n`;\n","import styled from 'styled-components';\nimport { StyledGameSlider } from '@modules/games/DiceGame/components/GameSlider/GameSlider.styled';\nimport { PlinkoResultStyled } from '../../../games/PlinkoGame/components/PlinkoResult/PlinkoResult.styled';\nimport { StyledLimboCounter } from '../../../games/LimboGame/LimboCounter/LimboCounter.styled';\nimport { BetDetailsStyled } from './BetDetails';\n\nexport const StyledBetModal = styled.div`\n\tmargin: 0 -12px;\n\toverflow-x: hidden;\n\tpadding: 0 12px;\n\twidth: calc(100% + 24px);\n\n\t&:first-of-type {\n\t\tmargin-top: -12px;\n\t}\n\n\t${BetDetailsStyled} {\n\t\tpadding-bottom: 12px;\n\t\tmargin-bottom: 24px;\n\t\tborder-bottom: 1px solid var(--color-dark-600);\n\t}\n\n\t${PlinkoResultStyled} {\n\t\tmargin: 12px 0 24px;\n\t}\n\n\t${StyledLimboCounter} {\n\t\tmargin: 24px 0 24px;\n\t}\n\n\t${StyledGameSlider} {\n\t\tmargin-left: -45px !important;\n\t\tpadding-left: 60px !important;\n\t\tpadding-right: 60px !important;\n\t\twidth: calc(100% + 90px) !important;\n\n\t\t@media (max-width: ${(props) => props.theme.media_v2.max_tablet_medium}) {\n\t\t\tpadding-left: 70px !important;\n\t\t\tpadding-right: 70px !important;\n\t\t}\n\t}\n`;\n","import { FC } from 'react';\nimport styled from 'styled-components';\nimport { Slot } from '../store/slots.types';\nimport { ProviderLogo } from './ProviderLogo';\n\nexport const GameImage: FC = ({ image_url, name, provider_slug }) => {\n\tif (!image_url) {\n\t\treturn ;\n\t}\n\treturn ;\n};\n\nexport const GameImageStyled = styled.img``;\n","import React, { FC } from 'react';\nimport styled from 'styled-components';\nimport { parseImageSrc } from '@common/components/default/Image/Image';\nimport Icon from '../../../common/components/icons/Icon';\n\nconst FallbackImage = {\n\tmicrogaming: true,\n};\n\nexport const ProviderLogo: FC<{\n\tslug: string;\n\tname?: string;\n}> = ({ slug, name }) => {\n\tif (!slug) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n};\n\nexport const ProviderLogoStyled = styled.span`\n\tdisplay: inline-block;\n\theight: 100%;\n\tmax-height: 100%;\n\toverflow: hidden;\n\twidth: 100%;\n\n\t> svg {\n\t\tfill: white;\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\n\t> img {\n\t\twidth: 100%;\n\t}\n\n\t> span {\n\t\talign-items: center;\n\t\tdisplay: flex;\n\t\tfont-size: 1.3rem;\n\t\theight: 100%;\n\t\tjustify-content: center;\n\t\ttext-align: center;\n\t}\n`;\n","import { FC } from 'react';\nimport styled from 'styled-components';\nimport { Image } from '@common/components/default/Image/Image';\nimport { GameDetailsDTO, Slot } from '../store/slots.types';\n\nconst checkIsDropsAndWins = (game: Slot | GameDetailsDTO) => {\n\tif ('tags' in game && !!game?.tags?.length) {\n\t\treturn game.tags?.indexOf('drops-and-wins') > -1;\n\t}\n\tif ('categories' in game && !!game?.categories?.length) {\n\t\treturn (\n\t\t\tgame.categories?.findIndex(\n\t\t\t\t(category) => category.slug === 'drops-and-wins',\n\t\t\t) > -1\n\t\t);\n\t}\n\treturn false;\n};\n\nexport const SlotDropsAndWinsWatermark: FC = (game) => {\n\tif (!checkIsDropsAndWins(game)) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t\n\t\t\t{'Drops\n\t\t\n\t);\n};\n\nexport const StyledSlotWaterMark = styled.div`\n\theight: 35%;\n\tleft: 0;\n\tposition: absolute;\n\ttop: 0;\n\tz-index: 1;\n\n\t:before {\n\t\tcontent: '';\n\t\tbackground: radial-gradient(\n\t\t\tcircle,\n\t\t\tvar(--color-blue-dark) 0%,\n\t\t\tvar(--color-blue-dark) 15%,\n\t\t\trgba(255, 255, 255, 0) 40%\n\t\t);\n\t\tposition: absolute;\n\t\theight: 400%;\n\t\tdisplay: block;\n\t\twidth: 400%;\n\t\ttop: 50%;\n\t\tleft: 50%;\n\t\ttransform: translate(-50%, -50%);\n\t\tz-index: 0;\n\t}\n\n\timg {\n\t\theight: 100%;\n\t\tposition: relative;\n\t\tz-index: 1;\n\t}\n`;\n","import styled from 'styled-components';\nimport { FC } from 'react';\nimport { LinkTo } from 'src/common/components/default/LinkTo/LinkTo';\nimport { generateSlotProviderUrl } from 'src/modules/slots/services/Slots.service';\n\ninterface SlotInfoProps {\n\tslotName: string;\n\tproviderSlug: string;\n\tproviderName: string;\n}\n\nexport const StyledSlotInfo = styled.div`\n\tdisplay: flex;\n\tflex-direction: column;\n\tflex-grow: 1;\n\tmargin-top: 12px;\n`;\n\nexport const StyledSlotInfoName = styled.div`\n\tcolor: var(--color-white);\n\tmargin-bottom: 4px;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n`;\n\nexport const SlotInfo: FC = ({\n\tslotName,\n\tproviderSlug,\n\tproviderName,\n}) => {\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t{slotName}\n\t\t\t\n\t\t\t\n\t\t\t\t{providerName}\n\t\t\t\n\t\t\n\t);\n};\n","import { FC } from 'react';\nimport styled, { css } from 'styled-components';\nimport { Badge, BadgeStyled, BadgeType } from '@ui/badge';\nimport { ArrowIcon } from '@icons/slots/ArrowIcon';\nimport { generateUrl, ROUTE } from 'src/common/routes';\nimport {\n\tStyledAspectRatioInner,\n\tStyledAspectRatioWrapper,\n} from 'src/common/components/AspectRatioWrapper/AspectRatioWrapper.styled';\nimport { Slot } from 'src/modules/slots/store/slots.types';\nimport { PROVIDER_ADMIN_ID_FROM } from 'src/modules/slots/hooks/useFetchProviders';\nimport { BalanceConvertedCurrencies } from 'src/modules/balance/store/balance.constants';\nimport { BalanceAmount } from 'src/common/components/number/balanceAmount';\nimport { LinkTo } from 'src/common/components/default/LinkTo/LinkTo';\nimport { roundNumber } from 'src/common/methods/roundNumber/roundNumber';\nimport { SlotInfo } from 'src/modules/slots/components/SlotInfo';\nimport { SlotDropsAndWinsWatermark } from 'src/modules/slots/components/SlotDropsAndWinsWatermark';\nimport {\n\tGameImage,\n\tGameImageStyled,\n} from 'src/modules/slots/components/GameImage';\nimport { ProviderLogoStyled } from 'src/modules/slots/components/ProviderLogo';\n\nexport const SlotTile: FC = (game) => {\n\tconst {\n\t\tname,\n\t\timage_url,\n\t\tprovider_name,\n\t\tprovider_slug,\n\t\trtp_value,\n\t\tslug,\n\t\tview_aspect_ratio,\n\t\tprovider_id,\n\t\tamount_usd,\n\t} = game;\n\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{!!rtp_value && (\n\t\t\t\t\t\t\tRTP: {rtp_value}%\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t{amount_usd && (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)}\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t{/*
{JSON.stringify(game, undefined, 2)}
*/}\n\t\t\t\t{name && provider_slug && provider_name && (\n\t\t\t\t\t\n\t\t\t\t)}\n\t\t\t
\n\t\t\n\t);\n};\n\nconst StyledSlotTileContainer = styled.div`\n\tcursor: pointer;\n\tdisplay: flex;\n\tflex-direction: column;\n\twidth: 100%;\n`;\n\nconst StyledSlotsTileImage = styled.div`\n\talign-items: center;\n\tdisplay: flex;\n\theight: 100%;\n\tjustify-content: center;\n\twidth: 100%;\n\n\t${GameImageStyled} {\n\t\theight: 100%;\n\t}\n\n\t${ProviderLogoStyled} {\n\t\talign-items: center;\n\t\tdisplay: flex;\n\t\theight: 100%;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\n\t\timg,\n\t\tsvg {\n\t\t\twidth: 80%;\n\t\t}\n\t}\n`;\n\nconst StyledSlotTileInfo = styled.div`\n\talign-items: center;\n\tbackground-color: rgba(0, 0, 0, 0.7);\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tjustify-content: center;\n\topacity: 0;\n\tposition: absolute;\n\ttransition: 300ms;\n\twidth: 100%;\n\tz-index: 2;\n`;\n\nconst StyledSlotTileRTP = styled.div`\n\tbottom: 10px;\n\tfont-family: ${(props) => props.theme.text.fonts.Regular};\n\tfont-size: 8px;\n\tposition: absolute;\n\tright: 20px;\n`;\n\nexport const StyledSlotTileFeatured = styled.div`\n\tbackground-color: #030f1e;\n\tborder-radius: 12px;\n\tflex-grow: 1;\n\theight: auto;\n\toverflow: hidden;\n\tposition: relative;\n\n\t&:hover {\n\t\t${StyledSlotTileInfo} {\n\t\t\topacity: 1;\n\t\t}\n\n\t\t${StyledAspectRatioInner} {\n\t\t\ttransform: scale(1.05);\n\t\t}\n\n\t\t${BadgeStyled} {\n\t\t\tbottom: -30px;\n\t\t}\n\t}\n`;\n\nconst StyledImageWrapper = styled(StyledAspectRatioWrapper)<{\n\t$src: string;\n\t$isBadge?: boolean;\n}>`\n\tposition: relative;\n\n\t&:before {\n\t\tbackground: url(${(props) => props.$src});\n\t\tbackground-size: cover;\n\t\tbackground-size: 100% 100%;\n\t\tfilter: blur(10px);\n\t}\n\n\t${StyledAspectRatioInner} {\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t}\n\n\t${BadgeStyled} {\n\t\tbottom: 8px;\n\t\tleft: 8px;\n\t\tposition: absolute;\n\t\tz-index: 3;\n\t}\n\n\t${(props) =>\n\t\tprops.$isBadge\n\t\t\t? css`\n\t\t\t\t\tbox-shadow: inset 0 -20px 40px -20px black;\n\t\t\t\t\tposition: relative;\n\n\t\t\t\t\t:after {\n\t\t\t\t\t\t//box-shadow: inset 0 -20px 40px -20px black;\n\t\t\t\t\t\tbackground: linear-gradient(to top, #0e1f33 0%, transparent 70%);\n\t\t\t\t\t\tcontent: '';\n\t\t\t\t\t\tdisplay: block;\n\t\t\t\t\t\theight: 100%;\n\t\t\t\t\t\tleft: 0;\n\t\t\t\t\t\tposition: absolute;\n\t\t\t\t\t\ttop: 0;\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\tz-index: 1;\n\t\t\t\t\t}\n\t\t\t `\n\t\t\t: null}\n`;\n","import { FunctionComponent, useCallback } from 'react';\nimport styled from 'styled-components';\nimport {\n\ttrans,\n\ttransSlots,\n} from '@legacyApp/client/modules/translation/translate';\nimport { InputWrapperContainer } from '@legacyApp/client/components/input/inputWrapper.container';\nimport { simpleTrans } from '@legacyApp/client/modules/translation/translationService';\nimport { boxNoHeight } from '@legacyApp/client/modules/style/defaults';\nimport { Loader } from '@legacyApp/client/components/loader/loader';\nimport { TransNamespace } from '@legacyApp/client/modules/translation/TransNamespace';\nimport { useGetDataArray } from '@legacyApp/hooks/fetch/useGetDataArray';\nimport { useFetchSearchTerm } from '../../hooks/useFetchSearchTerm';\nimport { useFetchGames } from '../../hooks/useFetchGames';\nimport { StyledBetModal } from '../../../modals/components/BetModal/BetModal.styled';\nimport { Slot } from '../../store/slots.types';\nimport { SlotsSearchResult } from './SlotsSearchResult';\n\nexport const StyledNoResults = styled.div`\n\tdisplay: flex;\n\tjustify-content: center;\n\tmargin: 1rem;\n`;\n\nexport const useFetchSearchDefault = () => {\n\tconst { callback } = useFetchGames();\n\tconst gamesCallback = useCallback(\n\t\t() =>\n\t\t\tcallback(\n\t\t\t\t{\n\t\t\t\t\torderBy: 'top',\n\t\t\t\t\tcount: 5,\n\t\t\t\t},\n\t\t\t\t{ fromState: true },\n\t\t\t),\n\t\t[callback],\n\t);\n\tconst { data: list } = useGetDataArray('top', gamesCallback);\n\n\treturn {\n\t\tlist,\n\t};\n};\n\nconst SlotsSearchModal: FunctionComponent = () => {\n\tconst { results, loading, setTerm, term } = useFetchSearchTerm();\n\tconst { list } = useFetchSearchDefault();\n\n\treturn (\n\t\t
\n\t\t\t

{trans({ label: 'Search' })}

\n\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t{term.length ? (\n\t\t\t\t\t\tresults?.length ? (\n\t\t\t\t\t\t\tresults.map((slot) => (\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t))\n\t\t\t\t\t\t) : loading ? null : (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{trans({ label: 'No results' })}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t)\n\t\t\t\t\t) : null}\n\t\t\t\t\n\t\t\t\t{!results?.length && !!list?.length && (\n\t\t\t\t\t\n\t\t\t\t\t\t

\n\t\t\t\t\t\t\t{transSlots({ label: 'Try our recommended games' })}:\n\t\t\t\t\t\t

\n\t\t\t\t\t\t{list.map((slot) => (\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t))}\n\t\t\t\t\t
\n\t\t\t\t)}\n\t\t\t\n\t\t
\n\t);\n};\n\nexport const StyledSearchResultBox = styled.div`\n\t${boxNoHeight};\n\tmin-height: 30px;\n\tposition: relative;\n`;\n\nexport default SlotsSearchModal;\n","import { FunctionComponent } from 'react';\nimport styled from 'styled-components';\nimport { LinkTo } from '@common/components/default/LinkTo/LinkTo';\nimport { useAppDispatch } from '@legacyApp/hooks/store/useAppDispatch';\nimport { closeModal } from '../../../modals/store/modal.actions';\nimport { Slot } from '../../store/slots.types';\nimport { generateSlotUrl } from '../../services/Slots.service';\nimport { SlotDropsAndWinsWatermark } from '../SlotDropsAndWinsWatermark';\nimport { StyledSlotTileFeatured } from '../SlotTile';\nimport { GameImage, GameImageStyled } from '../GameImage';\nimport { ProviderLogoStyled } from '../ProviderLogo';\n\nexport const SlotsSearchResult: FunctionComponent<{\n\tslot: Slot;\n}> = ({ slot }) => {\n\tconst dispatch = useAppDispatch();\n\treturn (\n\t\t\n\t\t\t dispatch(closeModal())}\n\t\t\t>\n\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\t{slot.name}\n\t\t\t\t\t\t{slot.provider_name}\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\n\t\t
\n\t);\n};\n\nexport const StyledResult = styled.div`\n\t&:not(:last-of-type) {\n\t\tborder-bottom: 1px solid rgba(255, 255, 255, 0.4);\n\t}\n`;\n\nexport const StyledResultLayout = styled.div`\n\talign-items: center;\n\tdisplay: grid;\n\tfont-family: ${(props) => props.theme.text.fonts.Regular};\n\tgap: 1px 24px;\n\tgrid-template-areas: '. .';\n\tgrid-template-columns: 0.3fr 0.7fr;\n\tgrid-template-rows: 1fr;\n\tjustify-content: center;\n\tpadding: 1.5rem 1rem;\n\twidth: 100%;\n`;\n\nexport const StyledResultName = styled.div`\n\tfont-size: 18px;\n`;\n\nexport const StyledResultProvider = styled.div`\n\tfont-size: 12px;\n\topacity: 0.4;\n`;\n\nexport const StyledSlotsImage = styled.div`\n\tdisplay: grid;\n\twidth: 100%;\n\n\t${GameImageStyled} {\n\t\twidth: 100%;\n\t}\n\n\t${ProviderLogoStyled} {\n\t\talign-items: center;\n\t\tdisplay: flex;\n\t\theight: 80px;\n\t\tjustify-content: center;\n\t\twidth: 100%;\n\n\t\timg,\n\t\tsvg {\n\t\t\twidth: 80%;\n\t\t}\n\t}\n`;\n","import { createContext } from 'react';\nimport { ProviderDTO } from '../store/slots.types';\n\nexport const SlotsProvidersContext = createContext<{\n\tproviders: {\n\t\tlist: ProviderDTO[];\n\t\tcount: number;\n\t};\n\tsetProviders: any;\n}>({\n\tproviders: {\n\t\tlist: [],\n\t\tcount: null,\n\t},\n\tsetProviders: (value) => value,\n});\n","import { useCallback, useRef } from 'react';\nimport { FetchProps, useFetchApi } from '@legacyApp/hooks/fetch/useFetchApi';\nimport { UseGetDataArrayCallback } from '@legacyApp/hooks/fetch/useGetDataArray';\nimport {\n\tgenerateSlotGameListUrl,\n\tSlotGameListQuery,\n} from '../services/Slots.service';\nimport { normalizeSlots } from '../services/Slots.mapper';\nimport { Slot } from '../store/slots.types';\n\nexport const useFetchGames = () => {\n\tconst { fetch: fetchApi, cancel } = useFetchApi();\n\tconst pages = useRef([]);\n\n\tconst callback: UseGetDataArrayCallback =\n\t\tuseCallback(\n\t\t\tasync (query: SlotGameListQuery, props?: FetchProps) => {\n\t\t\t\tconst page = query.page || 1;\n\t\t\t\tcancel();\n\t\t\t\treturn await fetchApi({\n\t\t\t\t\turl: generateSlotGameListUrl(query),\n\t\t\t\t\tdisableErrorHandler: true,\n\t\t\t\t\t...(props || {}),\n\t\t\t\t})\n\t\t\t\t\t.then((response) => {\n\t\t\t\t\t\tif (!response) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tdata: null,\n\t\t\t\t\t\t\t\tcount: null,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (page === 1) {\n\t\t\t\t\t\t\tpages.current = [];\n\t\t\t\t\t\t}\n\t\t\t\t\t\tpages.current[page] = normalizeSlots(\n\t\t\t\t\t\t\tresponse?.data?.list || response?.list || [],\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst data = [].concat(...pages.current);\n\t\t\t\t\t\tdata.shift();\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tdata,\n\t\t\t\t\t\t\tcount: response?.data?.length || response?.length || 0,\n\t\t\t\t\t\t};\n\t\t\t\t\t})\n\t\t\t\t\t.catch(() => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tdata: [],\n\t\t\t\t\t\t\tcount: 0,\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\t\t\t},\n\t\t\t[cancel, fetchApi],\n\t\t);\n\n\treturn {\n\t\tcallback,\n\t};\n};\n","import { useCallback, useContext } from 'react';\nimport { useFetchApiPromise } from '@legacyApp/hooks/fetch/useFetchApi';\nimport { UseGetDataArrayCallback } from '@legacyApp/hooks/fetch/useGetDataArray';\nimport { useUserIsAdmin, useUserName } from '@common/selectors/user.selectors';\nimport { ProviderDTO } from '../store/slots.types';\nimport { generateFetchSlotProvidersUrl } from '../services/Slots.service';\nimport { SlotsProvidersContext } from '../context/SlotsProvidersContext';\n\nexport const PROVIDER_ADMIN_ID_FROM = 1000;\nexport const USERS_ALLOWED_TO_SEE_ADMIN_PROVIDERS = ['fundist1', 'dymekk12'];\n\nexport const useFetchProviders = () => {\n\tconst fetchApi = useFetchApiPromise();\n\tconst contextProviders = useContext(SlotsProvidersContext);\n\tconst userIsAdmin = useUserIsAdmin();\n\tconst userName = useUserName();\n\n\tconst callback: UseGetDataArrayCallback = useCallback(\n\t\tasync (take?: number) => {\n\t\t\tconst { list, count } = await fetchApi({\n\t\t\t\turl: generateFetchSlotProvidersUrl({\n\t\t\t\t\t...((userIsAdmin ||\n\t\t\t\t\t\tUSERS_ALLOWED_TO_SEE_ADMIN_PROVIDERS.indexOf(userName) > -1) && {\n\t\t\t\t\t\tisAdmin: true,\n\t\t\t\t\t}),\n\t\t\t\t\t...(take && { take }),\n\t\t\t\t}),\n\t\t\t\tfromState: true,\n\t\t\t\tdisableErrorHandler: true,\n\t\t\t})\n\t\t\t\t.then(\n\t\t\t\t\t(\n\t\t\t\t\t\tresult:\n\t\t\t\t\t\t\t| { list: ProviderDTO[]; count: number }\n\t\t\t\t\t\t\t| { data: ProviderDTO[] },\n\t\t\t\t\t) => {\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\ttypeof result === 'object' &&\n\t\t\t\t\t\t\t'data' in result &&\n\t\t\t\t\t\t\tresult?.data?.length\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tlist: result.data,\n\t\t\t\t\t\t\t\tcount: result.data.length,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\ttypeof result === 'object' &&\n\t\t\t\t\t\t\t'list' in result &&\n\t\t\t\t\t\t\tresult?.list?.length\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\tlist: result.list,\n\t\t\t\t\t\t\t\tcount: result?.count,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn contextProviders?.providers;\n\t\t\t\t\t},\n\t\t\t\t)\n\t\t\t\t.catch((error) => {\n\t\t\t\t\tconsole.error(error);\n\t\t\t\t\treturn contextProviders?.providers;\n\t\t\t\t});\n\n\t\t\tif (contextProviders?.setProviders) {\n\t\t\t\tcontextProviders.setProviders(\n\t\t\t\t\t{ list, count } || contextProviders?.providers,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tdata: list || contextProviders?.providers?.list,\n\t\t\t\tcount: count || contextProviders?.providers?.count,\n\t\t\t};\n\t\t},\n\t\t[contextProviders, fetchApi, userIsAdmin],\n\t);\n\n\treturn {\n\t\tcallback,\n\t\toptions: {\n\t\t\tdata: contextProviders?.providers?.list,\n\t\t\tcount: contextProviders?.providers?.count,\n\t\t},\n\t};\n};\n","import { useCallback, useState } from 'react';\nimport { useFetchApi } from '@legacyApp/hooks/fetch/useFetchApi';\nimport { useTimeout } from '@legacyApp/hooks/app/useTimeout';\nimport { Slot, SlotSearchFetchData } from '../store/slots.types';\nimport { generateSearchUrl } from '../services/Slots.service';\nimport { normalizeSlots } from '../services/Slots.mapper';\n\nconst DEFAULT_LOADING = false;\nconst DEFAULT_RESULTS = [];\n\nexport const useFetchSearchTerm = () => {\n\tconst { fetch, cancel } = useFetchApi();\n\tconst { setTimeout } = useTimeout();\n\n\tconst [term_, setTerm] = useState('');\n\tconst [loading_, setLoading] = useState(DEFAULT_LOADING);\n\tconst [results, setResults] = useState(DEFAULT_RESULTS);\n\n\tconst fetchSearch = useCallback(\n\t\tasync (term: string): Promise => {\n\t\t\tcancel();\n\t\t\treturn await fetch({\n\t\t\t\turl: generateSearchUrl(term),\n\t\t\t}).then((value) => value);\n\t\t},\n\t\t[cancel, fetch],\n\t);\n\n\tconst setTermCallback = useCallback(\n\t\t(term) => {\n\t\t\tsetTerm(term);\n\t\t\tif (term && term.length > 1) {\n\t\t\t\tsetLoading(true);\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tfetchSearch(term).then((response) => {\n\t\t\t\t\t\tif (response?.error) {\n\t\t\t\t\t\t\treturn setLoading(false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst slots = normalizeSlots(response?.data || []);\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tsetLoading(false);\n\t\t\t\t\t\t\tsetResults(slots);\n\t\t\t\t\t\t}, 500);\n\t\t\t\t\t});\n\t\t\t\t}, 300);\n\t\t\t} else {\n\t\t\t\tsetResults(DEFAULT_RESULTS);\n\t\t\t}\n\t\t},\n\t\t[fetchSearch, setTimeout],\n\t);\n\n\treturn {\n\t\tloading: loading_,\n\t\tresults,\n\t\tsetTerm: setTermCallback,\n\t\tterm: term_,\n\t};\n};\n","import { Observable, of } from 'rxjs';\nimport { Mapper } from '@common/types/mapper.types';\nimport { Slot, SlotDTO } from '../store/slots.types';\n\nexport const mapSlotDTMtoSlot = (unmappedSlot: SlotDTO): Slot => {\n\treturn {\n\t\t...unmappedSlot,\n\t\tview_aspect_ratio: (eval(unmappedSlot.view_aspect_ratio) as number) || 1,\n\t};\n};\n\nexport const normalizeSlots = (unmappedSlots: SlotDTO[]): Slot[] => {\n\tif (!unmappedSlots.length) {\n\t\treturn [];\n\t}\n\n\treturn unmappedSlots.map(mapSlotDTMtoSlot);\n};\n\nexport class SlotsMapper implements Mapper {\n\tprivate mapSlots(unmappedSlots: SlotDTO[]) {\n\t\treturn unmappedSlots.map(mapSlotDTMtoSlot);\n\t}\n\n\tpublic map(unmappedSlots: SlotDTO[]): Observable {\n\t\tif (!unmappedSlots.length) {\n\t\t\treturn of([]);\n\t\t}\n\t\tconst mappedSlots: Slot[] = this.mapSlots(unmappedSlots);\n\t\treturn of(mappedSlots);\n\t}\n}\n","import { FC, PropsWithChildren } from 'react';\nimport styled from 'styled-components';\nimport { BadgeTypeMixin } from '@ui/badge/mixins/BadgeType.mixin';\nimport { BadgeSizeMixin } from '@ui/badge/mixins/BadgeSize.mixin';\nimport classnames from 'classnames';\nimport { Size } from '@uiTypes/Size';\n\nexport enum BadgeType {\n\tSUCCESS = 'success',\n\tRAINBOW = 'rainbow',\n\tNEUTRAL = 'neutral',\n\tORANGE = 'orange',\n}\n\nexport interface BadgeProps {\n\ttype?: BadgeType;\n\tsize?: Size;\n\tclassName?: string;\n}\n\nexport const Badge: FC> = ({\n\tchildren,\n\ttype,\n\tsize,\n\tclassName,\n}) => {\n\treturn (\n\t\t\n\t\t\t{children}\n\t\t\n\t);\n};\n\nexport interface BadgeStyledProps {\n\t$type: BadgeType;\n\t$size?: Size;\n}\n\nexport const BadgeStyled = styled.div.attrs((props) => ({\n\tclassName: props.$type,\n}))`\n\talign-items: center;\n\tborder-radius: 20px;\n\tdisplay: inline-flex;\n\tjustify-content: center;\n\ttransition: 300ms;\n\twidth: auto;\n\n\t${BadgeTypeMixin};\n\t${BadgeSizeMixin};\n`;\n","import { BadgeStyledProps, BadgeType } from '@ui/badge';\nimport { css } from 'styled-components';\n\nexport const BadgeTypeMixin = (props: BadgeStyledProps) => {\n\tconst { $type } = props;\n\n\tif ($type === BadgeType.RAINBOW) {\n\t\treturn css`\n\t\t\tbackground: var(--color-misc-rainbow);\n\t\t\tcolor: var(--color-white);\n\t\t`;\n\t}\n\n\tif ($type === BadgeType.SUCCESS) {\n\t\treturn css`\n\t\t\tbackground-color: var(--color-other-success);\n\t\t\tcolor: var(--color-white);\n\t\t`;\n\t}\n\n\tif ($type === BadgeType.ORANGE) {\n\t\treturn css`\n\t\t\tbackground-color: var(--color-other-orange);\n\t\t\tcolor: var(--color-white);\n\t\t`;\n\t}\n\n\tif ($type === BadgeType.NEUTRAL) {\n\t\treturn css`\n\t\t\tbackground-color: var(--color-dark-300);\n\t\t\tcolor: var(--color-white);\n\t\t`;\n\t}\n\n\treturn css`\n\t\tbackground-color: var(--color-misc-secondary-button);\n\t\tcolor: var(--color-white);\n\t`;\n};\n","import { BadgeStyledProps } from '@ui/badge';\nimport { css } from 'styled-components';\nimport { Size } from '@uiTypes/Size';\n\nexport const BadgeSizeMixin = (props: BadgeStyledProps) => {\n\tconst { $size } = props;\n\n\tif ($size === Size.MEDIUM) {\n\t\treturn css`\n\t\t\tpadding: 0 6px;\n\t\t`;\n\t}\n\n\treturn css`\n\t\tpadding: 2px 8px;\n\t`;\n};\n"],"names":["CheckboxStyle","styled","className","boxNoHeight","CheckboxWrapperStyle","StyledCheckboxBox","props","color","isColor","theme","colors","active","isError","negative","css","useTimeout","timeoutHandler","useRef","_setTimeout","useCallback","callback","timeout","current","clearTimeout","setTimeout","useOnMount","useGetDataArray","key","options","defaults","useMemo","loaded","data","count","loading","useState","setLoaded","setLoading","setData","setCount","prevKey","usePrevious","update","isFunction","error","console","useEffect","length","StyledAspectRatioWrapper","height","maxHeight","overflow","ratio","defaultProps","StyledAspectRatioInner","LoaderListWrapper","list","listElement","loaderWrapper","preloadLength","preloadElement","listElementCallback","noDataElement","map","Wrapper","Fragment","sequenceArray","el","index","ArrowIcon","Svg","content","d","transform","fill","width","StyledLimboCounter","$screenWidth","fontSize","$length","$noTarget","getMobileFontSize","media","maxWidthTablet","maxWidthVerySmall","PlinkoResultStyled","BetDetails","user","id","published_at","Icon","game","isMobile","useAppMobile","Icon_","name","BetDetailsStyled","BetDetailsIdStyled","style","trans","label","formatToFullDate","HiddenDataStyled","StyledBetModal","StyledGameSlider","media_v2","max_tablet_medium","GameImage","image_url","provider_slug","GameImageStyled","src","alt","slug","FallbackImage","microgaming","ProviderLogo","ProviderLogoStyled","fallbackImg","parseImageSrc","SlotDropsAndWinsWatermark","tags","indexOf","categories","findIndex","category","checkIsDropsAndWins","StyledSlotWaterMark","StyledSlotInfo","StyledSlotInfoName","SlotInfo","slotName","providerSlug","providerName","href","generateSlotProviderUrl","SlotTile","provider_name","rtp_value","view_aspect_ratio","provider_id","amount_usd","passHref","forceATag","generateUrl","PROVIDER_ADMIN_ID_FROM","ROUTE","StyledSlotTileContainer","StyledSlotTileFeatured","StyledSlotTileInfo","StyledSlotTileRTP","StyledImageWrapper","$isBadge","$src","StyledSlotsTileImage","type","BadgeType","noFormat","value","roundNumber","toFixed","balanceConverted","BalanceConvertedCurrencies","text","fonts","Regular","BadgeStyled","StyledNoResults","useFetchSearchDefault","useFetchGames","gamesCallback","orderBy","fromState","StyledSearchResultBox","useFetchSearchTerm","results","setTerm","term","onChangeDelayed","noTranslatePlaceholder","placeholder","simpleTrans","undefined","TransNamespace","slot","game_id","operator_id","transSlots","SlotsSearchResult","dispatch","useAppDispatch","StyledResult","generateSlotUrl","onClick","closeModal","StyledResultLayout","StyledSlotsImage","StyledResultName","StyledResultProvider","SlotsProvidersContext","createContext","providers","setProviders","useFetchApi","fetchApi","fetch","cancel","pages","query","page","url","generateSlotGameListUrl","disableErrorHandler","then","response","normalizeSlots","concat","shift","USERS_ALLOWED_TO_SEE_ADMIN_PROVIDERS","useFetchProviders","useFetchApiPromise","contextProviders","useContext","userIsAdmin","useUserIsAdmin","userName","useUserName","take","generateFetchSlotProvidersUrl","isAdmin","result","DEFAULT_RESULTS","term_","loading_","setResults","fetchSearch","generateSearchUrl","slots","mapSlotDTMtoSlot","unmappedSlot","eval","unmappedSlots","SlotsMapper","of","mappedSlots","this","mapSlots","Badge","children","size","classnames","$size","$type","RAINBOW","SUCCESS","ORANGE","NEUTRAL","Size"],"mappings":"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","debug_id":"8f89e3c8-c3e0-51d7-ab7b-702e53480586"}