{"version":3,"file":"static/chunks/55665-3034b6a546f11e7e.js","mappings":"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","sources":["webpack://_N_E/../../node_modules/lodash/_Symbol.js","webpack://_N_E/../../node_modules/lodash/_baseGetTag.js","webpack://_N_E/../../node_modules/lodash/_baseTrim.js","webpack://_N_E/../../node_modules/lodash/_freeGlobal.js","webpack://_N_E/../../node_modules/lodash/_getRawTag.js","webpack://_N_E/../../node_modules/lodash/_objectToString.js","webpack://_N_E/../../node_modules/lodash/_root.js","webpack://_N_E/../../node_modules/lodash/_trimmedEndIndex.js","webpack://_N_E/../../node_modules/lodash/debounce.js","webpack://_N_E/../../node_modules/lodash/isObject.js","webpack://_N_E/../../node_modules/lodash/isObjectLike.js","webpack://_N_E/../../node_modules/lodash/isSymbol.js","webpack://_N_E/../../node_modules/lodash/now.js","webpack://_N_E/../../node_modules/lodash/toNumber.js","webpack://_N_E/../../node_modules/use-count-up/lib/index.module.js","webpack://_N_E/./src/components/core/Roulette/Prize/index.tsx","webpack://_N_E/../../packages/common/src/hooks/useRoulette/index.ts","webpack://_N_E/./src/components/core/Roulette/index.tsx","webpack://_N_E/./src/components/core/Roulette/props.ts","webpack://_N_E/../../packages/common/src/enums/roulette-type.ts","webpack://_N_E/./src/components/core/Roulette/Prize/styles.module.scss","webpack://_N_E/./src/components/core/Roulette/styles.module.scss"],"sourcesContent":["var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var trimmedEndIndex = require('./_trimmedEndIndex');\n\n/** Used to match leading whitespace. */\nvar reTrimStart = /^\\s+/;\n\n/**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\nfunction baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n}\n\nmodule.exports = baseTrim;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/** Used to match a single whitespace character. */\nvar reWhitespace = /\\s/;\n\n/**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\nfunction trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n}\n\nmodule.exports = trimmedEndIndex;\n","var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","var root = require('./_root');\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nmodule.exports = now;\n","var baseTrim = require('./_baseTrim'),\n isObject = require('./isObject'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = toNumber;\n","var D=Object.getOwnPropertySymbols;var z=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;var T=(e,t)=>{var r={};for(var n in e)z.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&D)for(var n of D(e))t.indexOf(n)<0&&G.call(e,n)&&(r[n]=e[n]);return r};import{useState as X,useRef as d,useCallback as Y}from\"react\";import{useEffect as Z,useLayoutEffect as _}from\"react\";var J=Object.defineProperty,H=Object.defineProperties,K=Object.getOwnPropertyDescriptors,j=Object.getOwnPropertySymbols,Q=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable,I=(e,t,r)=>t in e?J(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,x=(e,t)=>{for(var r in t||(t={}))Q.call(t,r)&&I(e,r,t[r]);if(j)for(var r of j(t))W.call(t,r)&&I(e,r,t[r]);return e},U=(e,t)=>H(e,K(t)),S=typeof window==\"undefined\"?Z:_,h=({isPlaying:e,duration:t,startAt:r=0,updateInterval:n=0,onComplete:i,onUpdate:y})=>{let[p,g]=X(r),v=d(r*-1e3),s=d(null),m=d(null),f=d(null),o=d({elapsedTimeRef:0,startAtRef:r,durationRef:t,updateIntervalRef:n});o.current=U(x({},o.current),{durationRef:t,updateIntervalRef:n});let c=a=>{let u=a/1e3;if(m.current===null){m.current=u,s.current=requestAnimationFrame(c);return}let{durationRef:l,elapsedTimeRef:F,updateIntervalRef:C,startAtRef:b}=o.current,O=u-m.current,E=F+O;m.current=u,o.current=U(x({},o.current),{elapsedTimeRef:E});let M=b+(C===0?E:(E/C|0)*C),N=b+E,A=typeof l==\"number\"&&N>=l;g(A?l:M),A||(s.current=requestAnimationFrame(c))},R=()=>{s.current&&cancelAnimationFrame(s.current),f.current&&clearTimeout(f.current),m.current=null},P=Y(a=>{let u=typeof a==\"number\"?a:r;R(),o.current=U(x({},o.current),{elapsedTimeRef:0,startAtRef:u}),g(u),e&&(s.current=requestAnimationFrame(c))},[e,r]);return S(()=>{if(y==null||y(p),t&&p>=t){v.current+=t*1e3;let{shouldRepeat:a=!1,delay:u=0,newStartAt:l}=(i==null?void 0:i(v.current/1e3))||{};a&&(f.current=setTimeout(()=>P(l),u*1e3))}},[p,t]),S(()=>(e&&(s.current=requestAnimationFrame(c)),R),[e]),{elapsedTime:p,reset:P}};var q={easeInCubic:(e,t,r,n)=>(e/=n,r*e*e*e+t),easeOutCubic:(e,t,r,n)=>(e/=n,e--,r*(e*e*e+1)+t),linear:(e,t,r,n)=>r*e/n+t},V=q.easeOutCubic,L=e=>typeof e==\"function\"?e:q[e];var ee=(e,t)=>{if(typeof e==\"number\")return typeof t==\"number\"?t:2},$=(e,t)=>e.replace(/\\B(?=(\\d{3})+(?!\\d))/g,t),k=e=>(e.toString().split(\".\")[1]||\"\").length,te=(e,t)=>{let r=k(e),n=k(t||1);return r>=n?r:n},w=({isCounting:e=!1,start:t=0,end:r,duration:n,decimalPlaces:i=te(t,r),decimalSeparator:y=\".\",thousandsSeparator:p=\"\",onComplete:g,easing:v=V,formatter:s,updateInterval:m,onUpdate:f})=>{let o=ee(r,n),c=a=>{let u;if(o===0&&typeof r==\"number\")u=r;else if(typeof r==\"number\"&&typeof o==\"number\"){let b=L(v),O=af(c(a)):void 0});return{value:c(R),reset:P}};var B=r=>{var n=r,{children:e}=n,t=T(n,[\"children\"]);let i=w(t);return typeof e==\"function\"?e(i):i.value};B.displayName=\"CountUp\";export{B as CountUp,w as useCountUp};\n","import { RoulettePrizeProps } from './props';\nimport styles from './styles.module.scss';\n\nexport default function RoulettePrize({\n customCard,\n data,\n position,\n}: RoulettePrizeProps) {\n if (typeof customCard != 'undefined') {\n return customCard(data);\n }\n\n return
{position}
;\n}\n","import { useEffect, useRef, useCallback } from 'react';\nimport { UseRouletteProps } from './props';\nimport { RouletteType } from '../../enums';\n\n/**\n * Custom hook to manage a roulette spinning animation.\n * This hook provides functionalities to handle the spinning and standby states of a roulette.\n *\n * @param {UseRouletteProps} props - The properties to configure the roulette behavior.\n * @param {number} props.prizeIndex - The index of the prize to stop at.\n * @param {number} props.spinningTime - The duration of the spinning animation in seconds.\n * @param {boolean} props.start - Flag to indicate if the roulette should start spinning.\n * @param {Function} [props.callback] - Optional callback function to be called after spinning ends.\n * @param {number} [props.firstItem=5] - The index of the first item to display in standby state.\n * @param {RouletteType} props.type - The type of roulette, affecting transition behavior.\n * @returns {Object} An object containing a ref to the roulette container.\n *\n * @example\n * // Usage example:\n * const { containerRef } = useRoulette({\n * prizeIndex: 3,\n * spinningTime: 2,\n * start: true,\n * callback: () => function('Spinning ended'),\n * firstItem: 0,\n * type: RouletteType.Standard,\n * });\n */\nexport function useRoulette({\n prizeIndex,\n spinningTime,\n start,\n callback,\n firstItem = 5,\n type,\n}: UseRouletteProps) {\n // Ref to the roulette container element\n const containerRef = useRef(null);\n\n // Padding between items in the roulette\n const paddingInline = 8;\n\n /**\n * Calculates the new position for the roulette based on the given position and children elements.\n *\n * @param {number} position - The target position index.\n * @param {HTMLDivElement[]} children - The list of child elements in the container.\n * @returns {number} The calculated new position in pixels.\n */\n const calculateNewPosition = useCallback(\n (position: number, children: HTMLDivElement[]): number => {\n if (!children.length || !containerRef.current) return 0;\n\n const childWidth = children[0].clientWidth + paddingInline;\n const containerWidth = containerRef.current.clientWidth;\n\n return -(position * childWidth) + containerWidth / 2 - childWidth / 2;\n },\n [paddingInline],\n );\n\n /**\n * Handles the standby state of the roulette, positioning it to the first item.\n */\n const handleStandByState = useCallback(() => {\n if (!containerRef.current) {\n return;\n }\n\n const children = Array.from(\n containerRef.current.children,\n ) as HTMLDivElement[];\n const newPosition = calculateNewPosition(firstItem, children);\n\n containerRef.current.style.left = `${newPosition}px`;\n containerRef.current.style.transition =\n type == RouletteType.Infinity ? '0s' : '1s ease-in';\n }, [firstItem, calculateNewPosition, type]);\n\n /**\n * Handles the start of the spinning animation, moving the roulette to the prize index.\n */\n const handleStartSpinning = useCallback(() => {\n if (!containerRef.current) {\n return;\n }\n\n const container = containerRef.current;\n const children = Array.from(container.children) as HTMLDivElement[];\n const newPosition = calculateNewPosition(prizeIndex, children);\n\n container.style.left = `${newPosition}px`;\n container.style.transition = `left ${spinningTime}s ease-out`;\n\n const onTransitionEnd = () => {\n callback?.();\n container.removeEventListener('transitionend', onTransitionEnd);\n };\n\n container.addEventListener('transitionend', onTransitionEnd);\n }, [prizeIndex, spinningTime, callback, calculateNewPosition]);\n\n /**\n * Determines the current state of the roulette and triggers the appropriate action.\n */\n function handleRouletteState() {\n if (start) {\n handleStartSpinning();\n } else {\n handleStandByState();\n }\n }\n\n // Effect to handle the roulette state changes based on the start flag\n useEffect(handleRouletteState, [\n start,\n handleStartSpinning,\n handleStandByState,\n ]);\n\n return {\n containerRef,\n };\n}\n\nexport type { UseRouletteProps };\n","import styles from './styles.module.scss';\nimport { RouletteProps, RouletteType } from './props';\nimport { useMemo } from 'react';\nimport RoulettePrize from './Prize';\nimport { useRoulette } from '@starsoft/common/hooks';\n\nexport default function Roulette({\n customCard,\n onPrizeDefined,\n prizeIndex,\n prizes,\n spinningTime,\n start,\n firstItem,\n hideCenterPin,\n type = RouletteType.Default,\n isPaperColor,\n isTransparent,\n centerSpin,\n}: RouletteProps) {\n const { containerRef } = useRoulette({\n prizeIndex,\n spinningTime,\n start,\n firstItem,\n callback: onPrizeDefined,\n type,\n });\n\n const Cards = useMemo(\n () =>\n prizes.map((prize, index) => (\n \n )),\n [prizes, customCard],\n );\n\n return (\n \n
\n
\n {Cards}\n
\n
\n {!hideCenterPin &&
}\n {centerSpin && centerSpin}\n
\n );\n}\n","import { ReactNode } from 'react';\n\nexport enum RouletteType {\n Default = 'default',\n Infinity = 'infinity',\n}\nexport interface RouletteProps {\n prizes: T[];\n prizeIndex: number;\n customCard: (data: T) => React.ReactNode;\n start: boolean;\n spinningTime: number;\n onPrizeDefined?: VoidFunction;\n className?: string;\n firstItem?: number;\n hideCenterPin?: boolean;\n type?: RouletteType;\n isPaperColor?: boolean;\n isTransparent?: boolean;\n centerSpin?: ReactNode;\n}\n","export enum RouletteType {\n Default = 'default',\n Infinity = 'infinity',\n}\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"card\":\"styles_card__hNkY_\",\"skeleton-animation\":\"styles_skeleton-animation__DtPfm\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"styles_container___Q59M\",\"container--paper\":\"styles_container--paper__Rzcx7\",\"container--transparent\":\"styles_container--transparent__hKFor\",\"container__wrapper\":\"styles_container__wrapper__b8_YK\",\"container__wrapper__pin\":\"styles_container__wrapper__pin__W5sSb\",\"container__wrapper__list\":\"styles_container__wrapper__list__EcZa0\",\"skeleton-animation\":\"styles_skeleton-animation__rYUqs\"};"],"names":["Symbol","root","module","exports","__webpack_require__","getRawTag","objectToString","symToStringTag","toStringTag","undefined","value","Object","trimmedEndIndex","reTrimStart","string","slice","replace","freeGlobal","g","objectProto","prototype","hasOwnProperty","nativeObjectToString","toString","isOwn","call","tag","unmasked","e","result","freeSelf","self","Function","reWhitespace","index","length","test","charAt","isObject","now","toNumber","nativeMax","Math","max","nativeMin","min","func","wait","options","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","invokeFunc","time","args","thisArg","apply","shouldInvoke","timeSinceLastCall","timeSinceLastInvoke","timerExpired","timeWaiting","trailingEdge","setTimeout","debounced","isInvoking","arguments","clearTimeout","cancel","flush","type","baseGetTag","isObjectLike","Date","baseTrim","isSymbol","NAN","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","other","valueOf","isBinary","J","propertyIsEnumerable","defineProperty","H","defineProperties","K","getOwnPropertyDescriptors","j","getOwnPropertySymbols","Q","W","I","t","r","enumerable","configurable","writable","x","U","S","window","react__WEBPACK_IMPORTED_MODULE_0__","useEffect","useLayoutEffect","h","isPlaying","duration","startAt","updateInterval","n","onComplete","i","onUpdate","y","p","useState","v","useRef","s","m","f","o","elapsedTimeRef","startAtRef","durationRef","updateIntervalRef","current","c","a","u","requestAnimationFrame","l","F","C","b","E","M","N","A","R","cancelAnimationFrame","P","useCallback","shouldRepeat","delay","newStartAt","elapsedTime","reset","q","easeInCubic","easeOutCubic","linear","V","L","ee","$","k","split","te","w","isCounting","start","end","decimalPlaces","decimalSeparator","thousandsSeparator","easing","formatter","round","toFixed","RoulettePrize","param","customCard","data","position","jsx_runtime","jsx","div","className","styles","Roulette","onPrizeDefined","prizeIndex","prizes","spinningTime","firstItem","hideCenterPin","RouletteType","Default","isPaperColor","isTransparent","centerSpin","containerRef","useRoulette","callback","calculateNewPosition","children","childWidth","clientWidth","containerWidth","handleStandByState","newPosition","Array","from","style","left","concat","transition","Infinity","handleStartSpinning","container","onTransitionEnd","removeEventListener","addEventListener","Cards","useMemo","map","prize","jsxs","ref"],"sourceRoot":""}