{"version":3,"file":"js/1886.80d4e9aeeaa261c0.js","mappings":"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","sources":["webpack://@sazka/web/./js/app/lotteries/online/shared/composables/use-wager-store.ts","webpack://@sazka/web/./js/app/lotteries/online/shared/game.ts"],"sourcesContent":["import { defineStore } from \"pinia\";\r\n\r\nexport const useWagerStore = defineStore(\"wager\", {\r\n state: () => ({\r\n stake: 0,\r\n }),\r\n});\r\n","import { Lottery } from \"@/lotteries/model/lottery\";\r\nimport { LotteryUtils } from \"@sazka/lotteries/js/utils/lottery-utils\";\r\nimport { LotterySkinHelper } from \"@/lotteries/views/lottery-sport-page/lottery-skin-helper\";\r\nimport { refreshSelectBox } from \"@/shared/components/select-box\";\r\nimport { StringUtils } from \"@sazka/utils/string-utils\";\r\nimport { UrlUtils } from \"@sazka/utils/url\";\r\nimport { AnalyticsHelper } from \"./analytics/analytics-helper\";\r\nimport { loadBoardsFromQuery } from \"./bet-from-query\";\r\nimport { Board } from \"./board\";\r\nimport { Cookie } from \"./cookie\";\r\nimport { Dialog } from \"./dialog\";\r\nimport { DurationKeno } from \"./duration-keno\";\r\nimport { GameConfig } from \"./game-config\";\r\nimport { onlineLotteries } from \"./online-lotteries\";\r\nimport { Wager } from \"./wager\";\r\nimport { Upsell } from \"../shared/upsell\";\r\nimport { useWagerDurationStore } from \"../shared/composables/use-wager-duration\";\r\nimport { DurationState } from \"./duration-state\";\r\nimport { useWagerStore } from \"./composables/use-wager-store\";\r\n\r\nconst durationStore = useWagerDurationStore();\r\nconst wagerStore = useWagerStore();\r\n\r\nconst depositSelects = [\"#drpDeposit\", \"#drpDepositMobile\", \"#drpBetAmount\"];\r\nexport abstract class Game {\r\n GameName: Lottery;\r\n GameDisplayName: string;\r\n wager: Wager;\r\n config: GameConfig;\r\n messages: any;\r\n durationKeno: DurationKeno;\r\n IsValid: boolean;\r\n warningMessage: string;\r\n tutorialMode = false;\r\n upsell = null;\r\n isQuickWager = false;\r\n\r\n constructor(cnfg: GameConfig, wager?: Wager) {\r\n this.GameName = cnfg.Name;\r\n this.GameDisplayName = LotteryUtils.lotteryDisplayName(this.GameName);\r\n this.config = cnfg;\r\n this.wager = wager;\r\n\r\n const skin = UrlUtils.getQueryString(\"skin\");\r\n if (skin) {\r\n LotterySkinHelper.activateSkin(skin);\r\n }\r\n\r\n if (this.GameName == \"extra-renta\" || this.GameName == \"stastnych-10\")\r\n this.upsell = new Upsell(\r\n this.GameName,\r\n () => {\r\n return onlineLotteries.store.getJson(this.config.CookieName);\r\n },\r\n () => {\r\n this.updateWagerColumns();\r\n }\r\n );\r\n\r\n AnalyticsHelper.pushGamePage();\r\n\r\n durationStore.$subscribe(() => {\r\n this.changeDuration();\r\n });\r\n\r\n wagerStore.$subscribe(() => {\r\n this.changeStake();\r\n });\r\n }\r\n\r\n /** Inits game object (html, wager states rtc.) */\r\n init(): void {\r\n this.initInternal();\r\n }\r\n\r\n /** Sets up jquery event handlers - click, change etc. */\r\n loadHandlers(): void {\r\n this.loadHandlersInternal();\r\n }\r\n\r\n /** Updates wager's html markup with current state */\r\n updateWagerHtml(wager?: Wager) {\r\n this.updateWagerHtmlInternal(wager);\r\n }\r\n\r\n /** Updates board's html markup with current state */\r\n updateBoardHtml(board: Board, destroy = false) {\r\n this.updateBoardHtmlInternal(board, destroy);\r\n }\r\n\r\n /** Returns text, which is used as board label */\r\n getBoardLabel(board: Board, destroy = false): string {\r\n return this.getBoardLabelInternal(board, destroy);\r\n }\r\n\r\n /** Updates dialog's html markup with current state */\r\n updateDialogHtml(triggerChanges = false) {\r\n this.updateDialogHtmlInternal(triggerChanges);\r\n }\r\n\r\n /** Updates dialog's html markup with current state */\r\n updateDialogChechboxes() {\r\n this.updateDialogCheckboxesInternal();\r\n }\r\n\r\n /** Checks if wager is valid and enables/disables wager button */\r\n wagerIsValid(wager: Wager, onlyPriceParams: boolean): boolean {\r\n return this.wagerIsValidInternal(wager, onlyPriceParams);\r\n }\r\n\r\n /**\r\n * Removes button, which adds new board\r\n */\r\n removeAddButton() {\r\n this.removeAddButtonInternal();\r\n }\r\n\r\n removeAddButtonMobile() {\r\n this.removeAddButtonMobileInternal();\r\n }\r\n\r\n /** Method initiates button for adding new board*/\r\n initAddButton($columnsWrapper?: JQuery) {\r\n this.initAddButtonInternal($columnsWrapper);\r\n }\r\n\r\n /** Initializes wager from cookie*/\r\n initFromCookie(): void {\r\n this.initFromCookieInternal();\r\n }\r\n\r\n /** Checks if specified boad is valid as regular board*/\r\n boardIsValid(board: Board): boolean {\r\n return board.IsValid;\r\n }\r\n\r\n /** Checks if specified boad is valid as system board*/\r\n boardIsSystemValid(board: Board): boolean {\r\n return this.boardIsSystemValidInternal(board);\r\n }\r\n\r\n closeTutorialMode() {\r\n console.log(\"close tutorial mode\");\r\n }\r\n\r\n updateWagerColumns() {\r\n return this.updateWagerColumnsInternal();\r\n }\r\n\r\n protected initInternal(): void {\r\n this.initFromCookie();\r\n const bet = loadBoardsFromQuery(this.config.Name);\r\n if (bet) {\r\n this.wager.ShowCompleteState = bet.ShowCompleteState;\r\n\r\n if (bet.Numbers?.length) {\r\n this.wager.Numbers = bet.Numbers;\r\n this.wager.AddonPlayed = bet.AddonPlayed;\r\n this.wager.AddonNumbers = bet.AddonNumbers;\r\n }\r\n if (bet.Stake) {\r\n this.wager.Stake = bet.Stake;\r\n }\r\n\r\n Cookie.saveWager(this.wager);\r\n this.initFromCookie();\r\n }\r\n\r\n while ((this.wager?.Numbers?.length ?? 0) > this.config.BoardMaxCount) {\r\n this.wager.Numbers.pop();\r\n }\r\n\r\n this.initButton();\r\n\r\n this.recalculateTotalPrice();\r\n\r\n this.messages = typeof loadGameMessages == \"function\" ? loadGameMessages() : [];\r\n this.loadHandlers();\r\n }\r\n\r\n protected loadHandlersInternal(): void {\r\n // General\r\n $(document).on(\"change\", \"#check-include-chance\", (e) => this.addonChange(e));\r\n $(document).on(\"click\", \"#change-chance-number\", () => this.addonRegenerate());\r\n $(document).on(\"click\", \".mini-ticket-box.active\", (e) => this.clickEditBoard(e));\r\n\r\n $(document).on(\"click\", \"#btn-game-column-add-mobile\", () => onlineLotteries.dialog.open());\r\n $(\".numbers-chance-wrapper\").on(\"change\", 'input[data-test=\"addon-number\"]', (e) =>\r\n this.onAddonNumberChange(e)\r\n );\r\n }\r\n\r\n protected updateWagerHtmlInternal(wager?: Wager) {\r\n if (!wager) {\r\n wager = onlineLotteries.game.wager;\r\n }\r\n\r\n // update boards html\r\n for (const board of wager.Numbers) {\r\n this.updateBoardHtml(board);\r\n }\r\n\r\n for (let i = wager.Numbers.length; i < this.config.BoardMaxCount; i++) {\r\n this.updateBoardHtml(\r\n new Board(i, $(onlineLotteries.game.config.ColumnsWrapperId).find(\"[data-columnindex=\" + i + \"]\")),\r\n true\r\n );\r\n }\r\n\r\n // update properties\r\n $(\"#ddlMultiplier\")\r\n .val(wager.Multiplier as any)\r\n .change();\r\n\r\n // update addon game html\r\n if (wager.AddonNumbers != null && wager.AddonNumbers.length > 0) {\r\n const $inputs = $(\"#chance-numbers\").find(\"input\");\r\n for (let i = 0; i < $inputs.length; i++) {\r\n $inputs.eq(i).val(wager.AddonNumbers[i] as any);\r\n }\r\n $(\"#check-include-chance\").prop(\"checked\", true);\r\n }\r\n\r\n $(\"#check-include-chance\").prop(\"checked\", wager.AddonPlayed);\r\n if (wager.AddonPlayed) {\r\n $(\".numbers-chance-wrapper\").addClass(\"active\");\r\n } else {\r\n $(\".numbers-chance-wrapper\").removeClass(\"active\");\r\n }\r\n\r\n if (this.GameName == \"extra-renta\" || this.GameName == \"stastnych-10\") {\r\n this.upsell.recheck();\r\n }\r\n }\r\n\r\n protected updateBoardHtmlInternal(board: Board, destroy = false): void {\r\n if (!board?.$board) return;\r\n\r\n // shortcut\r\n const config: GameConfig = onlineLotteries.game.config;\r\n\r\n // html selectors\r\n const $checkboxesPrimary = board.$board.find(config.PrimaryBoardCheckboxSelector);\r\n const $checkboxesAdditional = board.$board.find(config.AdditionalBoardCheckboxSelector);\r\n\r\n // setting primary checkbox state\r\n $checkboxesPrimary.prop(\"checked\", false).removeAttr(\"data-test\");\r\n if (!destroy && board.Primary) {\r\n board.Primary.forEach((element) => {\r\n $checkboxesPrimary\r\n .eq(element - this.config.PrimaryMinValue)\r\n .prop(\"checked\", true)\r\n .attr(\"data-test\", \"selected\");\r\n });\r\n }\r\n\r\n // setting additional checkbox state\r\n if (config.AdditionalEnabled) {\r\n $checkboxesAdditional.prop(\"checked\", false).removeAttr(\"data-test\");\r\n if (!destroy && board.Additional) {\r\n board.Additional.forEach((element) => {\r\n $checkboxesAdditional\r\n .eq(element - this.config.AdditionalMinValue)\r\n .prop(\"checked\", true)\r\n .attr(\"data-test\", \"selected\");\r\n });\r\n }\r\n }\r\n\r\n // add classes to board\r\n if (destroy || !board.Primary || !board.IsValid) {\r\n board.$board.removeClass(\"active\").removeAttr(\"data-test\");\r\n } else {\r\n board.$board.addClass(\"active\").attr(\"data-test\", \"active\");\r\n }\r\n\r\n board.$board.find(\".ticket-info\").text(this.getBoardLabel(board, destroy));\r\n }\r\n\r\n protected getBoardLabelInternal(board: Board, destroy = false): string {\r\n if (!board.Primary || board.Primary.length == 0 || destroy) {\r\n return \"\";\r\n } else {\r\n /// board description text\r\n let statusLineText = LotteryUtils.getNumberWithLabel(board.Primary.length);\r\n statusLineText += board.Stake > 0 ? \", vklad \" + board.Stake / 100 + \" KÄ\" : \"\";\r\n statusLineText += board.KralovskaHra ? \", královská hra\" : \"\";\r\n return statusLineText;\r\n }\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n protected updateDialogHtmlInternal(triggerChanges: boolean): void {\r\n const config: GameConfig = onlineLotteries.game.config;\r\n const dialog: Dialog = onlineLotteries.dialog;\r\n\r\n this.updateDialogChechboxes();\r\n\r\n if (dialog.board) {\r\n // s10 - numbers\r\n const inputCounts = [\"#drpInputCount\", \"#drpInputCountMobile\"];\r\n inputCounts.forEach((x) => {\r\n const dprInputCount = dialog.$dialog.find(x);\r\n dprInputCount.val(dialog.board.PrimaryCount as any);\r\n refreshSelectBox(dprInputCount);\r\n });\r\n\r\n // s10, keno - stake\r\n depositSelects.forEach((x) => {\r\n const drpStake = dialog.$dialog.find(x);\r\n drpStake.val((dialog.board.Stake / 100) as any);\r\n refreshSelectBox(drpStake);\r\n });\r\n\r\n // s10 - kralovska hra\r\n dialog.$dialog.find(\"#dialog-check-king-game\").prop(\"checked\", dialog.board.KralovskaHra);\r\n dialog.$dialog.find(\"#dialog-check-king-game-mobile\").prop(\"checked\", dialog.board.KralovskaHra);\r\n\r\n // keno - numbers\r\n const kenoInputsCount = $(\".keno-wager-count input\");\r\n kenoInputsCount.prop(\"checked\", false);\r\n kenoInputsCount\r\n .filter(`[value=${dialog.board.PrimaryCount as any}]`)\r\n .prop(\"checked\", true)\r\n .attr(\"data-test\", \"selected\");\r\n\r\n dialog.$dialog.removeClass(\"full\");\r\n\r\n const dialogLabels = [\"#dialog-column-number-mobile\", \"#dialog-column-number\"];\r\n\r\n dialogLabels.forEach((x) => {\r\n dialog.$dialog.find(x).text((dialog.board.Index + 1).toString());\r\n });\r\n\r\n dialog.$dialog.find(\"#dialog-column-id\").val((dialog.board.Index + 1).toString());\r\n\r\n // keno dialog header and bet price label\r\n const $dialogHeader = $(\"#dialog-column-header\");\r\n const $dialogBetPriceLabel = $(\"#bet-label-text\");\r\n dialog.$dialog.find($dialogHeader).text(`${dialog.board.Index == 0 ? \"PrvnÃ\" : \"Druhé\"} hracà pole`);\r\n dialog.$dialog\r\n .find($dialogBetPriceLabel)\r\n .text(`Za kolik chcete vsadit ${dialog.board.Index == 0 ? \"v prvnÃm\" : \"ve druhém\"} hracÃm poli?`);\r\n\r\n // quick inputs primary\r\n const quickInputs = dialog.$dialog.find(\"#dialog-column-inputs input\");\r\n quickInputs.each((index, elem) => {\r\n const val = (dialog.board.Primary[index] || \"\").toString();\r\n // TODO: Replace Tooltip with DsTooltip\r\n $(elem).val(val).removeClass(\"error\").tooltip(\"dispose\");\r\n val ? $(elem).addClass(\"full\") : $(elem).removeClass(\"full\");\r\n index >= dialog.board.PrimaryCount ? $(elem).addClass(\"d-none\") : $(elem).removeClass(\"d-none\");\r\n });\r\n\r\n dialog.board.Index >= config.BoardMaxCount - 1\r\n ? dialog.$dialog.addClass(\"last\")\r\n : dialog.$dialog.removeClass(\"last\");\r\n // show count of input to select\r\n dialog.$dialog.find(\"#board-count\").text(LotteryUtils.getNumberWithLabel(dialog.board.PrimaryCount));\r\n } else {\r\n // s10 - numbers\r\n const inputSelect = dialog.$dialog.find(\"#drpInputsCount\");\r\n inputSelect.val(config.PrimaryCount as any);\r\n refreshSelectBox(inputSelect);\r\n\r\n // s10 - stake\r\n depositSelects.forEach((x) => dialog.$dialog.find(x).val((config.DefaultStake / 100) as any));\r\n // s10 - kralovska hra\r\n dialog.$dialog.find(\"#dialog-check-king-game\").prop(\"checked\", config.DefaultKralovskaHra);\r\n\r\n // quick inputs\r\n dialog.$dialog.find(\"#dialog-column-inputs input\").each((index, element) => {\r\n $(element).val(\"\");\r\n });\r\n\r\n dialog.$dialog.removeClass(\"full\");\r\n\r\n dialog.$dialog.find(\"#dialog-column-number\").text(\"\");\r\n dialog.$dialog.find(\"#dialog-column-id\").val(\"\");\r\n dialog.$dialog.removeClass(\"last\");\r\n }\r\n dialog.reinitButtons();\r\n }\r\n\r\n protected updateDialogCheckboxesInternal(): void {\r\n const config: GameConfig = onlineLotteries.game.config;\r\n const dialog: Dialog = onlineLotteries.dialog;\r\n\r\n // updates primary checkboxes\r\n let $checkboxes = dialog.$dialog.find(config.PrimaryDialogCheckboxSelector);\r\n $checkboxes.prop(\"checked\", false).removeClass(\"checked\");\r\n if (dialog.board) {\r\n dialog.board.Primary.forEach((element) => {\r\n // we are looking for element with index-1 of its value\r\n $checkboxes\r\n .eq(element - this.config.PrimaryMinValue)\r\n .prop(\"checked\", true)\r\n .addClass(\"checked\");\r\n });\r\n }\r\n\r\n // updates additional checkboxes\r\n if (config.AdditionalEnabled) {\r\n $checkboxes = dialog.$dialog.find(config.AdditionalDialogCheckboxSelector);\r\n $checkboxes.prop(\"checked\", false).removeClass(\"checked\");\r\n\r\n if (dialog.board) {\r\n dialog.board.Additional.forEach((element) => {\r\n $checkboxes\r\n .eq(element - config.AdditionalMinValue)\r\n .prop(\"checked\", true)\r\n .addClass(\"checked\");\r\n });\r\n }\r\n }\r\n }\r\n\r\n initButton(): void {\r\n this.initButtonInternal();\r\n }\r\n\r\n protected initButtonInternal(): void {\r\n const $columnsWrapper = $(this.config.ColumnsWrapperId);\r\n onlineLotteries.game.initAddButton($columnsWrapper);\r\n if (this.wager.IsValid) {\r\n $(\"#btn-game-send\").removeClass(\"disabled\");\r\n $(\"#date-validation-message\").hide();\r\n $(document).off(\"click\", \"#btn-game-send\");\r\n $(document).on(\"click\", \"#btn-game-send\", () => onlineLotteries.clickWager());\r\n } else {\r\n $(\"#btn-game-send\").addClass(\"disabled\");\r\n $(\"#date-validation-message\").show();\r\n $(document).off(\"click\", \"#btn-game-send\");\r\n }\r\n }\r\n\r\n protected removeAddButtonInternal() {\r\n const btnId = \"btn-game-column-add\";\r\n $(\"#\" + btnId).remove();\r\n }\r\n\r\n protected removeAddButtonMobileInternal() {\r\n const mobileBtnId = \"btn-game-column-add-mobile\";\r\n $(\"#\" + mobileBtnId).addClass(\"d-none\");\r\n }\r\n\r\n protected initAddButtonInternal($columnsWrapper?: JQuery) {\r\n if ($columnsWrapper == null) {\r\n $columnsWrapper = $(onlineLotteries.game.config.ColumnsWrapperId);\r\n }\r\n const btnId = \"btn-game-column-add\";\r\n this.removeAddButton();\r\n const $nextBtn = $(\r\n `<a class=\"btn btn-primary btn-next-column\">${\r\n this.GameName == \"keno\" ? \"PÅ™idat pole\" : \"PÅ™idat sloupec\"\r\n }</a>`\r\n );\r\n $nextBtn.attr(\"id\", btnId);\r\n const $lastActiveColumn = $columnsWrapper.find(\".mini-ticket-box.active\").last();\r\n const $column = $lastActiveColumn.length\r\n ? $lastActiveColumn.next(\".mini-ticket-box\")\r\n : $columnsWrapper.find(\".mini-ticket-box:not(.active)\").first();\r\n // Check if isn't last column\r\n if ($column.length > 0) {\r\n $column.append($nextBtn);\r\n $(\"#\" + btnId).click((e) => onlineLotteries.dialog.clickOpen(e));\r\n $(\"#btn-game-column-add-mobile\").removeClass(\"d-none\").addClass(\"d-sm-none\");\r\n } else {\r\n $(\"#btn-game-column-add-mobile\").addClass(\"d-none\").removeClass(\"d-sm-none\");\r\n }\r\n\r\n if (this.GameName == \"extra-renta\" || this.GameName == \"stastnych-10\") {\r\n this.upsell.recheck();\r\n }\r\n\r\n onlineLotteries.markLatestColumn();\r\n }\r\n\r\n protected initFromCookieInternal(): void {\r\n const wager = Cookie.read();\r\n\r\n // if this.wager is undefined or null - initiate empty values\r\n if (!wager) {\r\n this.wager = new Wager(this.config.AddonEnabled);\r\n\r\n if (this.config.AddonEnabled) {\r\n this.addonInit();\r\n }\r\n } else {\r\n this.wager = wager;\r\n }\r\n\r\n // generate addon numbers if not present\r\n\r\n if (this.config.AddonEnabled && this.wager.AddonNumbers?.length == 0) {\r\n this.addonInit();\r\n }\r\n\r\n if (this.wager.Stake) {\r\n wagerStore.stake = this.wager.Stake;\r\n }\r\n\r\n this.initDurationFromCookie();\r\n\r\n this.updateWagerHtml();\r\n\r\n const valid = this.wager.revalidate(this.config);\r\n this.recalculateTotalPrice(valid);\r\n\r\n this.initButton();\r\n this.initGameHtml();\r\n }\r\n\r\n protected initGameHtml(): void {\r\n if (!this.wager.ShowCompleteState) {\r\n return;\r\n }\r\n\r\n if (this.wager.IsSystem) {\r\n $(this.config.WrapperAllId).addClass(\"active\");\r\n $(this.config.GameTypeId).removeClass(\"manual\").addClass(\"system\");\r\n } else {\r\n $(this.config.WrapperAllId).addClass(\"active\");\r\n $(this.config.GameTypeId).removeClass(\"system\").addClass(\"manual\");\r\n }\r\n\r\n this.wager.ShowCompleteState = false;\r\n Cookie.saveWager();\r\n }\r\n\r\n addonInit(): void {\r\n if (!$(\"#chance-numbers\").hasClass(\"from-cookie\")) {\r\n this.addonRegenerate();\r\n }\r\n }\r\n\r\n addonChange(e: JQuery.ChangeEvent): void {\r\n const $elem = $(e.currentTarget);\r\n if ($elem.is(\":checked\")) {\r\n $(\".numbers-chance-wrapper\").addClass(\"active\");\r\n this.wager.AddonPlayed = true;\r\n } else {\r\n $(\".numbers-chance-wrapper\").removeClass(\"active\");\r\n this.wager.AddonPlayed = false;\r\n }\r\n\r\n this.recalculateTotalPrice();\r\n Cookie.saveWager();\r\n }\r\n\r\n addonRegenerate(): number[] {\r\n $(\".numbers-chance-wrapper\").addClass(\"active\");\r\n const $inputs = $(\"#chance-numbers\").find(\"input\");\r\n\r\n const addon = [];\r\n for (let i = 0; i < $inputs.length; i++) {\r\n const random = Math.floor(Math.random() * (this.config.AddonMaxValue + 1));\r\n addon.push(random);\r\n $inputs.eq(i).val(random.toString());\r\n }\r\n\r\n this.wager.AddonNumbers = addon;\r\n Cookie.saveWager(this.wager);\r\n return addon;\r\n }\r\n\r\n recalculateTotalPrice(valid?: boolean): boolean {\r\n if (typeof valid == \"undefined\") {\r\n valid = this.wagerIsValid(this.wager, true);\r\n }\r\n\r\n return valid;\r\n }\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n wagerIsSystemValid(wager: Wager, onlyPriceParams = false): boolean {\r\n return true;\r\n }\r\n\r\n changeTotalPrice(val: number) {\r\n this.changeTotalPriceInternal(val);\r\n }\r\n\r\n clickEditBoard(e: JQuery.ClickEvent): void {\r\n const index = $(e.currentTarget).data(\"columnindex\");\r\n onlineLotteries.dialog.open(this.wager.Numbers[index]);\r\n }\r\n\r\n changeTotalPriceInternal(val: number) {\r\n $(\"#total-price\").html(StringUtils.formatCurrency(Math.round(val / 100)));\r\n if (onlineLotteries.game.wager && onlineLotteries.game.GameName != Lottery.rychla6) {\r\n onlineLotteries.game.wager.Cost = val;\r\n }\r\n }\r\n\r\n initDuration(state?: DurationState, duration?: number, selectedDraws?: string[]): void {\r\n durationStore.initDuration(state, duration, selectedDraws);\r\n this.changeDuration();\r\n }\r\n\r\n initWager(stake: number): void {\r\n wagerStore.stake = stake;\r\n this.changeStake();\r\n }\r\n\r\n initDurationFromCookie(): void {\r\n const drawNames = [];\r\n if (this.wager.Afternoon) {\r\n drawNames.push(\"afternoon\");\r\n }\r\n\r\n if (this.wager.Evening) {\r\n drawNames.push(\"evening\");\r\n }\r\n\r\n if (this.wager.Mon) {\r\n drawNames.push(\"mon\");\r\n }\r\n\r\n if (this.wager.Thu) {\r\n drawNames.push(\"thu\");\r\n }\r\n\r\n durationStore.initDuration(\r\n this.wager.DurationChoice,\r\n this.wager.Duration,\r\n drawNames,\r\n this.wager.Notification,\r\n this.wager.SubscriptionEnd,\r\n this.wager.SubscriptionName\r\n );\r\n\r\n if (this.config.HasDurationInDays) {\r\n durationStore.setDurationLengthToDays();\r\n }\r\n\r\n this.changeDuration();\r\n }\r\n\r\n isDurationValid(): boolean {\r\n if (!this.config.HasDurationComponent) {\r\n return true;\r\n }\r\n\r\n return durationStore.isDurationValid(this.config.HasDurationInDays, this.config.HasDrawOptions);\r\n }\r\n\r\n changeDuration() {\r\n this.wager.Duration = this.config.HasDurationInDays\r\n ? durationStore.getDurationLengthFromDays\r\n : durationStore.getDurationLength;\r\n this.wager.Afternoon = durationStore.drawNames?.includes(\"afternoon\");\r\n this.wager.Evening = durationStore.drawNames?.includes(\"evening\");\r\n this.wager.Mon = durationStore.drawNames?.includes(\"mon\");\r\n this.wager.Thu = durationStore.drawNames?.includes(\"thu\");\r\n this.wager.DurationChoice = durationStore.durationType;\r\n this.wager.IsValidDuration = this.isDurationValid();\r\n this.wager.Notification = durationStore.notification;\r\n this.wager.SubscriptionEnd = durationStore.subscriptionEnd;\r\n this.wager.SubscriptionName = durationStore.subscriptionName;\r\n this.initButton();\r\n Cookie.saveWager();\r\n\r\n this.recalculateTotalPrice();\r\n }\r\n\r\n changeStake() {\r\n this.wager.Stake = wagerStore.stake;\r\n this.initButton();\r\n Cookie.saveWager();\r\n\r\n this.recalculateTotalPrice();\r\n }\r\n\r\n /**\r\n * Checks if wager is valid and enables/disables wager button\r\n */\r\n protected wagerIsValidInternal(wager: Wager, onlyPriceParams: boolean): boolean {\r\n const valid = wager.IsValid;\r\n\r\n if (!onlyPriceParams) {\r\n if (valid) {\r\n $(\"#btn-game-send\").removeClass(\"disabled\");\r\n } else {\r\n $(\"#btn-game-send\").addClass(\"disabled\");\r\n }\r\n }\r\n\r\n return valid;\r\n }\r\n\r\n /**\r\n * Checks if wager is valid and enables/disables wager button\r\n */\r\n protected boardIsSystemValidInternal(board: Board): boolean {\r\n const config = onlineLotteries.game.config;\r\n let valid = true;\r\n try {\r\n // primary numbers validation\r\n valid = board.Primary.length == board.PrimaryCount;\r\n\r\n if (board.Additional.length != 5) {\r\n valid = false;\r\n }\r\n\r\n let nulls = true;\r\n for (const additional of board.Additional) {\r\n if (additional != 0) {\r\n nulls = false;\r\n }\r\n }\r\n\r\n valid = valid && !nulls;\r\n\r\n board.Primary.forEach(function (value) {\r\n valid = valid && value <= config.PrimaryMaxValue;\r\n valid = valid && value >= config.PrimaryMinValue;\r\n });\r\n } catch (e) {\r\n return false;\r\n }\r\n\r\n return valid;\r\n }\r\n\r\n protected addFillingToSession(value: string) {\r\n const storedValues = onlineLotteries.store.getItem(this.config.CookieFillingName)?.split(\",\") ?? [];\r\n if (storedValues.indexOf(value) >= 0) {\r\n return;\r\n }\r\n\r\n storedValues.push(value);\r\n onlineLotteries.store.setItem(this.config.CookieFillingName, storedValues.join(\",\"), \"analytics\");\r\n }\r\n\r\n protected onAddonNumberChange(e: JQuery.ChangeEvent): void {\r\n const $input = $(e.currentTarget);\r\n const newValue = parseInt($input.val() as string);\r\n const inputId = $input.attr(\"id\");\r\n\r\n const index = parseInt(inputId.replace(\"chance-number-\", \"\")) - 1;\r\n\r\n if (!isNaN(newValue) && index >= 0 && index < this.wager.AddonNumbers.length) {\r\n this.wager.AddonNumbers[index] = newValue;\r\n\r\n Cookie.saveWager(this.wager);\r\n }\r\n }\r\n\r\n protected updateWagerColumnsInternal() {\r\n this.wager.addRandomColumns();\r\n this.wager.revalidate(this.config);\r\n this.updateWagerHtml(this.wager);\r\n this.removeAddButton();\r\n this.removeAddButtonMobile();\r\n onlineLotteries.store.setJson(this.config.CookieName, this.wager, \"essential\");\r\n this.upsell.recheck();\r\n this.recalculateTotalPrice();\r\n this.addFillingToSession(\"randomFull\");\r\n }\r\n}\r\n"],"names":["useWagerStore","defineStore","state","stake","durationStore","useWagerDurationStore","wagerStore","depositSelects","Game","constructor","cnfg","wager","_defineProperty","this","GameName","Name","GameDisplayName","LotteryUtils","lotteryDisplayName","config","skin","UrlUtils","getQueryString","LotterySkinHelper","activateSkin","upsell","Upsell","onlineLotteries","store","getJson","CookieName","updateWagerColumns","AnalyticsHelper","pushGamePage","$subscribe","changeDuration","changeStake","init","initInternal","loadHandlers","loadHandlersInternal","updateWagerHtml","updateWagerHtmlInternal","updateBoardHtml","board","destroy","updateBoardHtmlInternal","getBoardLabel","getBoardLabelInternal","updateDialogHtml","triggerChanges","updateDialogHtmlInternal","updateDialogChechboxes","updateDialogCheckboxesInternal","wagerIsValid","onlyPriceParams","wagerIsValidInternal","removeAddButton","removeAddButtonInternal","removeAddButtonMobile","removeAddButtonMobileInternal","initAddButton","$columnsWrapper","initAddButtonInternal","initFromCookie","initFromCookieInternal","boardIsValid","IsValid","boardIsSystemValid","boardIsSystemValidInternal","closeTutorialMode","console","log","updateWagerColumnsInternal","bet","loadBoardsFromQuery","_bet$Numbers","ShowCompleteState","Numbers","length","AddonPlayed","AddonNumbers","Stake","Cookie","saveWager","_this$wager$Numbers$l","_this$wager","BoardMaxCount","pop","initButton","recalculateTotalPrice","messages","loadGameMessages","$","document","on","e","addonChange","addonRegenerate","clickEditBoard","dialog","open","onAddonNumberChange","game","i","Board","ColumnsWrapperId","find","val","Multiplier","change","$inputs","eq","prop","addClass","removeClass","recheck","$board","$checkboxesPrimary","PrimaryBoardCheckboxSelector","$checkboxesAdditional","AdditionalBoardCheckboxSelector","removeAttr","Primary","forEach","element","PrimaryMinValue","attr","AdditionalEnabled","Additional","AdditionalMinValue","text","statusLineText","getNumberWithLabel","KralovskaHra","inputCounts","x","dprInputCount","$dialog","PrimaryCount","refreshSelectBox","drpStake","kenoInputsCount","filter","dialogLabels","Index","toString","$dialogHeader","$dialogBetPriceLabel","quickInputs","each","index","elem","tooltip","inputSelect","DefaultStake","DefaultKralovskaHra","reinitButtons","$checkboxes","PrimaryDialogCheckboxSelector","AdditionalDialogCheckboxSelector","initButtonInternal","hide","off","clickWager","show","btnId","remove","mobileBtnId","$nextBtn","$lastActiveColumn","last","$column","next","first","append","click","clickOpen","markLatestColumn","_this$wager$AddonNumb","read","Wager","AddonEnabled","addonInit","initDurationFromCookie","valid","revalidate","initGameHtml","IsSystem","WrapperAllId","GameTypeId","hasClass","$elem","currentTarget","is","addon","random","Math","floor","AddonMaxValue","push","wagerIsSystemValid","changeTotalPrice","changeTotalPriceInternal","data","html","StringUtils","formatCurrency","round","Lottery","rychla6","Cost","initDuration","duration","selectedDraws","initWager","drawNames","Afternoon","Evening","Mon","Thu","DurationChoice","Duration","Notification","SubscriptionEnd","SubscriptionName","HasDurationInDays","setDurationLengthToDays","isDurationValid","HasDurationComponent","HasDrawOptions","_durationStore$drawNa","_durationStore$drawNa2","_durationStore$drawNa3","_durationStore$drawNa4","getDurationLengthFromDays","getDurationLength","includes","durationType","IsValidDuration","notification","subscriptionEnd","subscriptionName","nulls","additional","value","PrimaryMaxValue","addFillingToSession","_onlineLotteries$stor","_onlineLotteries$stor2","storedValues","getItem","CookieFillingName","split","indexOf","setItem","join","$input","newValue","parseInt","inputId","replace","isNaN","addRandomColumns","setJson"],"sourceRoot":""}