{"version":3,"file":"popular-multi-bets.feature-nvr8cwku.js","sources":["packages/sports/web/app/src/popular-bets/popular-bets-pod-event-logo/popular-bets-pod-event-logo.component.html","packages/sports/web/app/src/popular-bets/popular-bets-pod-event-logo/popular-bets-pod-event-logo.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-services/popular-bets-pod-option.service.ts","packages/sports/web/app/src/popular-bets/popular-bets-bet-builder-options/popular-bets-bet-builder-options.component.html","packages/sports/web/app/src/popular-bets/popular-bets-bet-builder-options/popular-bets-bet-builder-options.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-bet-builder-pod-header/popular-bets-bet-builder-pod-header.component.html","packages/sports/web/app/src/popular-bets/popular-bets-bet-builder-pod-header/popular-bets-bet-builder-pod-header.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-heights.ts","node_modules/@rx-angular/cdk/fesm2022/cdk-zone-configurations.mjs","node_modules/@rx-angular/template/fesm2022/template-unpatch.mjs","packages/sports/web/app/src/popular-bets/popular-bets.models.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod-add-to-betslip/popular-bets-pod-add-to-betslip.component.html","packages/sports/web/app/src/popular-bets/popular-bets-pod-add-to-betslip/popular-bets-pod-add-to-betslip.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-services/popular-bets-expand-collapse.service.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod-show-more/popular-bets-pod-show-more.component.html","packages/sports/web/app/src/popular-bets/popular-bets-pod-show-more/popular-bets-pod-show-more.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod-summary/popular-bets-pod-summary.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-services/popular-bets-pod-event-participant.service.ts","packages/sports/web/app/src/popular-bets/popular-bets-services/popular-bets-pod-event-logo.service.ts","packages/sports/web/app/src/popular-bets/popular-bets-bet-builder-pod/popular-bets-bet-builder-pod.component.html","packages/sports/web/app/src/popular-bets/popular-bets-bet-builder-pod/popular-bets-bet-builder-pod.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-gesture-provider.ts","packages/sports/web/app/src/popular-bets/popular-bets-module-header/popular-bets-module-header.component.html","packages/sports/web/app/src/popular-bets/popular-bets-module-header/popular-bets-module-header.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod-background/popular-bets-pod-background.directive.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod-event/popular-bets-pod-event.component.html","packages/sports/web/app/src/popular-bets/popular-bets-pod-event/popular-bets-pod-event.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod-header/popular-bets-pod-header.component.html","packages/sports/web/app/src/popular-bets/popular-bets-pod-header/popular-bets-pod-header.component.ts","packages/sports/web/app/src/popular-bets/popular-bets-pod/popular-bets-pod.component.html","packages/sports/web/app/src/popular-bets/popular-bets-pod/popular-bets-pod.component.ts","packages/sports/web/app/src/popular-bets/popular-multi-bets-widget/popular-multi-bets-widget.component.html","packages/sports/web/app/src/popular-bets/popular-multi-bets-widget/popular-multi-bets-widget.component.ts","packages/sports/web/app/src/popular-bets/popular-multi-bets-widget/widget-registration.service.ts","packages/sports/web/app/src/popular-bets/popular-multi-bets-widget/popular-multi-bets.feature.ts"],"sourcesContent":["@switch (logoDetails().logoType) {\n @case ('TeamLogo') {\n \n }\n @case ('CompetitionLogo') {\n \"competition-logo\"\n }\n @case ('SportsLogo') {\n \n }\n @case ('ShieldIcon') {\n
\n \"shield-logo\"\n
\n }\n @case ('OpenBullets') {\n \n }\n @case ('RadioOff') {\n \n }\n}\n","import { NgOptimizedImage } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, computed, inject, input } from '@angular/core';\n\nimport { SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { ParticipantImageComponent } from '@frontend/sports/participant-image/feature';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\nimport { PopularBetsPodEventLogoDetails } from '../popular-bets.models';\n\n@Component({\n selector: 'ms-popular-bets-pod-event-logo',\n standalone: true,\n templateUrl: './popular-bets-pod-event-logo.component.html',\n styleUrl: './popular-bets-pod-event-logo.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ParticipantImageComponent, IconCustomComponent, NgOptimizedImage],\n})\nexport class PopularBetsPodEventLogoComponent {\n logoDetails = input.required();\n sportId = input.required();\n showLogoColor = input(true);\n messages = inject(SitecorePopularBetsConfig).messages;\n\n private readonly className = computed(() => {\n switch (this.logoDetails().logoType) {\n case 'OpenBullets':\n return 'popular-bets-option__bullet-icon';\n case 'RadioOff':\n return 'popular-bets-option__radio-off';\n default:\n return 'popular-bets-option__event-logo';\n }\n });\n\n @HostBinding('class')\n get hostClassName(): string {\n return this.className();\n }\n\n get bulletIconName(): string {\n return this.messages.BulletIconName || 'theme-open-bullet';\n }\n\n get bulletIconSize(): number {\n return +this.messages.BulletIconSize || 10;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { FixtureViewType } from '@cds/betting-offer';\nimport { EventModel, EventParticipant, EventParticipantType } from '@frontend/sports/betting-offer/feature/model';\nimport { ShortNameModule } from '@frontend/sports/betting-offer/feature/short-team-names';\nimport { PopularBetsConfig, Sitecore, SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\n\nimport { EventNameMapperService } from '../../event-details-common/event-name-mapper.service';\n\n@Injectable()\nexport class PopularBetsPodOptionService {\n opponentConfigWithLowerCaseKeys: {\n [key: string]: boolean;\n } = {};\n\n marketNameConfigWithLowerCaseKeys: {\n [key: string]: boolean;\n } = {};\n\n constructor(\n private sitecore: Sitecore,\n public sitecorePopularBetsConfig: SitecorePopularBetsConfig,\n private eventNameMapper: EventNameMapperService,\n private popularBetsConfig: PopularBetsConfig,\n ) {\n this.opponentConfigWithLowerCaseKeys = this.initializeConfigWithLowerCaseKeys(this.popularBetsConfig.isOpponentNameEnabled);\n this.marketNameConfigWithLowerCaseKeys = this.initializeConfigWithLowerCaseKeys(this.popularBetsConfig.isMarketNameEnabled);\n }\n\n private getOptionOpponentName(event: EventModel, optionName: string, opponentParticipant: EventParticipant): string {\n if (!event.isTournamentGame()) {\n return this.getOpponentName(event, optionName, opponentParticipant);\n }\n\n return event.name;\n }\n\n private getOpponentName(event: EventModel, optionName: string, opponentParticipant: EventParticipant): string {\n const isAwayTeamOption = opponentParticipant.type === EventParticipantType.Home;\n\n const indicator =\n event.viewType === FixtureViewType.American && isAwayTeamOption\n ? this.sitecore.globalMessages.AwayIndicator\n : this.sitecorePopularBetsConfig.messages.OpponentIndicator;\n const name = optionName;\n const opponentParticipantName = this.eventNameMapper.getParticipantName(event, opponentParticipant, ShortNameModule.PopularBets);\n\n return `${name} (${indicator} ${opponentParticipantName})`;\n }\n\n private initializeConfigWithLowerCaseKeys(item: { [key: string]: boolean }): Record {\n return Object.fromEntries(Object.entries(item).map(([key, value]) => [key.toLowerCase(), value]));\n }\n\n getOpponentEnabledByPodType(podType: PopularBetsPodTypes): boolean {\n return this.opponentConfigWithLowerCaseKeys[podType.toLowerCase()];\n }\n\n getMarketNameEnabledByPodType(podType: PopularBetsPodTypes): boolean {\n return this.marketNameConfigWithLowerCaseKeys[podType.toLowerCase()];\n }\n\n getOpponentSelection(event: EventModel, optionName: string, eventTitle: string, opponentParticipant?: EventParticipant) {\n if (!opponentParticipant) {\n return this.optionEventTitle(optionName, eventTitle);\n }\n\n return this.getOptionOpponentName(event, optionName, opponentParticipant);\n }\n\n getSelection(\n event: EventModel,\n optionName: string,\n eventTitle: string,\n podType: PopularBetsPodTypes,\n opponentParticipant?: EventParticipant,\n ): string {\n const showMarketName = this.getMarketNameEnabledByPodType(podType);\n const showOpponent = this.getOpponentEnabledByPodType(podType);\n const optionMarketName = showMarketName ? event.optionGroups[0].name : '';\n const optionOpponent = showOpponent ? this.getOpponentSelection(event, optionName, eventTitle, opponentParticipant) : '';\n const optionEventTitle = showMarketName && !showOpponent ? this.optionEventTitle(optionName, eventTitle) : '';\n\n return [optionMarketName, optionOpponent || optionEventTitle || optionName].filter(Boolean).join(' - ');\n }\n\n private optionEventTitle(optionName: string, eventTitle: string): string {\n return `${optionName} (${eventTitle})`;\n }\n\n getOptionMarketName(marketName: string, optionName: string, podType: PopularBetsPodTypes): string {\n if (this.getMarketNameEnabledByPodType(podType)) {\n return [marketName, optionName].filter(Boolean).join(' - ');\n }\n\n return optionName;\n }\n}\n","\n \n
{{ getSelectionInfo(option) }}
\n\n","import { SlicePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, computed, input } from '@angular/core';\n\nimport { ShortNameModule } from '@frontend/sports/betting-offer/feature/short-team-names';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { RxFor } from '@rx-angular/template/for';\n\nimport { EventNameMapperService } from '../../event-details-common/event-name-mapper.service';\nimport { PopularBetsPodEventLogoComponent } from '../popular-bets-pod-event-logo/popular-bets-pod-event-logo.component';\nimport { PopularBetsPodOptionService } from '../popular-bets-services/popular-bets-pod-option.service';\nimport { IBetBuilderOptionDetail } from '../popular-bets.models';\n\n@Component({\n selector: 'ms-popular-bets-bet-builder-options',\n standalone: true,\n templateUrl: './popular-bets-bet-builder-options.component.html',\n styleUrl: './popular-bets-bet-builder-options.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [RxFor, SlicePipe, PopularBetsPodEventLogoComponent],\n})\nexport class PopularBetsBetBuilderOptionsComponent {\n @HostBinding('class') className = 'popular-bets-bet-builder-options';\n\n options = input.required();\n visibleOptionsLimit = input.required();\n isEpcotEnabled = input.required();\n showMoreLessButtonVisible = input.required();\n totalEventCount = input.required();\n event = input.required();\n private showOpponent: boolean;\n\n readonly shouldShowConnector = computed(() => {\n const allLegsVisible = this.totalEventCount() - this.visibleOptionsLimit() <= 0;\n return !allLegsVisible && this.showMoreLessButtonVisible() && !this.isEpcotEnabled();\n });\n\n constructor(\n private podOptionService: PopularBetsPodOptionService,\n private eventNameMapper: EventNameMapperService,\n ) {\n this.showOpponent = this.podOptionService.getOpponentEnabledByPodType(PopularBetsPodTypes.SGP);\n }\n\n trackOption(index: number): number {\n return index;\n }\n\n get eventTitle(): string {\n return this.eventNameMapper.map(this.event(), false, ShortNameModule.PopularBets);\n }\n\n getSelectionInfo(option: IBetBuilderOptionDetail): string {\n if (!option) {\n return '';\n }\n\n if (!this.showOpponent) {\n return option.name;\n }\n\n return this.podOptionService.getOpponentSelection(this.event(), option.name, this.eventTitle, option.opponentParticipant);\n }\n}\n","
\n \n @if (hasLogo()) {\n
\n \n
\n {{ logoSeparatorText }}\n
\n \n
\n } @else {\n
\n {{ eventTitle }}\n
\n }\n
\n
\n @if (event().startDate) {\n \n }\n
\n","import { ChangeDetectionStrategy, Component, HostBinding, OnInit, ViewChild, ViewContainerRef, computed, input } from '@angular/core';\n\nimport { EventParticipant } from '@frontend/sports/betting-offer/feature/model';\nimport { ShortNameModule } from '@frontend/sports/betting-offer/feature/short-team-names';\nimport { SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { ParticipantImageComponent } from '@frontend/sports/participant-image/feature';\nimport { isEmpty } from 'lodash-es';\n\nimport { EventNameMapperService } from '../../event-details-common/event-name-mapper.service';\nimport { TimerModule } from '../../timers/timer.module';\n\n@Component({\n selector: 'ms-popular-bets-bet-builder-pod-header',\n standalone: true,\n imports: [TimerModule, ParticipantImageComponent],\n templateUrl: './popular-bets-bet-builder-pod-header.component.html',\n styleUrl: './popular-bets-bet-builder-pod-header.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopularBetsBetBuilderPodHeaderComponent implements OnInit {\n @ViewChild('badgeContainer', { read: ViewContainerRef }) container: ViewContainerRef;\n @HostBinding('class') className = 'popular-bets-bet-builder-pod-header';\n\n showBadge = input.required();\n event = input.required();\n showLogo = input.required();\n titleColor = input();\n logoSeparatorText: string;\n\n hasLogo = computed(\n () =>\n this.showLogo() &&\n this.event().participants.every((participant: EventParticipant) => {\n const hasLogo = !isEmpty(participant.image?.logo);\n const hasJersey = !isEmpty(participant.image?.jersey);\n return hasLogo || hasJersey;\n }),\n );\n\n constructor(\n public sitecorePopularBetsConfig: SitecorePopularBetsConfig,\n private eventNameMapper: EventNameMapperService,\n ) {\n this.logoSeparatorText = this.sitecorePopularBetsConfig.messages.LogoSeperator;\n }\n\n ngOnInit() {\n if (this.showBadge()) this.loadSGPBadgeComponent();\n }\n\n async loadSGPBadgeComponent() {\n const { SGPBadgeComponent } = await import('../../betbuilder/components/badge/sgp-badge/sgp-badge.component');\n this.container.clear();\n this.container.createComponent(SGPBadgeComponent);\n }\n\n get eventTitle(): string {\n return this.eventNameMapper.map(this.event(), false, ShortNameModule.PopularBets);\n }\n}\n","/* eslint-disable @typescript-eslint/no-magic-numbers */\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\n\nimport { IPodHeightConfigModel } from './popular-bets.models';\n\nconst DEFAULT_POD_WIDTH = 284;\nconst DEFAULT_POD_LIST_GAP = 8;\n\ninterface PodHeights {\n HEADER: number;\n SUMMARY_TEXT: number;\n SUMMARY_TEXT_WITH_ODDS: number;\n LEG: number;\n LEG_WITH_ODDS: number;\n GAP_BETWEEN_LEG: number;\n GAP_BETWEEN_LEG_ODDS: number;\n ADD_TO_BETSLIP: number;\n}\n\ntype PodHeightsCollection = {\n [key in PopularBetsPodTypes]: PodHeights;\n};\n\nconst POD_HEIGHTS_DEFAULT: PodHeightsCollection = {\n [PopularBetsPodTypes.Parlay]: {\n HEADER: 21,\n SUMMARY_TEXT: 42,\n SUMMARY_TEXT_WITH_ODDS: 55,\n LEG_WITH_ODDS: 55,\n LEG: 42,\n GAP_BETWEEN_LEG: 0,\n GAP_BETWEEN_LEG_ODDS: 0,\n ADD_TO_BETSLIP: 55,\n },\n [PopularBetsPodTypes.SGP]: {\n HEADER: 36,\n SUMMARY_TEXT: 28,\n SUMMARY_TEXT_WITH_ODDS: 28,\n LEG: 28,\n LEG_WITH_ODDS: 55,\n GAP_BETWEEN_LEG: 8,\n GAP_BETWEEN_LEG_ODDS: 8,\n ADD_TO_BETSLIP: 56,\n },\n};\n\nconst POD_HEIGHTS_EPCOT_PARLAY: PodHeights = {\n HEADER: 44,\n SUMMARY_TEXT: 50,\n SUMMARY_TEXT_WITH_ODDS: 50,\n LEG_WITH_ODDS: 36,\n LEG: 26,\n GAP_BETWEEN_LEG: 10,\n GAP_BETWEEN_LEG_ODDS: 12,\n ADD_TO_BETSLIP: 44,\n};\n\nconst POD_HEIGHTS_EPCOT: PodHeightsCollection = {\n [PopularBetsPodTypes.Parlay]: POD_HEIGHTS_EPCOT_PARLAY,\n [PopularBetsPodTypes.SGP]: POD_HEIGHTS_EPCOT_PARLAY,\n};\n\nfunction getPodHeights(config: IPodHeightConfigModel): PodHeights {\n const { isEpcotEnabled, podType, isAllPodAreSameType, showOptionPick, isAnyPodHasSummary } = config;\n\n const podHeightsConfig = isEpcotEnabled ? POD_HEIGHTS_EPCOT : POD_HEIGHTS_DEFAULT;\n const selectedPodHeights = isAllPodAreSameType\n ? { ...podHeightsConfig[podType] }\n : { ...podHeightsConfig[podType], HEADER: Math.max(podHeightsConfig.SGP.HEADER, podHeightsConfig.Parlay.HEADER) };\n\n if (podType === PopularBetsPodTypes.Parlay && showOptionPick) {\n selectedPodHeights.LEG = selectedPodHeights.LEG_WITH_ODDS;\n selectedPodHeights.SUMMARY_TEXT = selectedPodHeights.SUMMARY_TEXT_WITH_ODDS;\n selectedPodHeights.GAP_BETWEEN_LEG = selectedPodHeights.GAP_BETWEEN_LEG_ODDS;\n }\n\n if (!isAllPodAreSameType && podType === PopularBetsPodTypes.SGP) {\n selectedPodHeights.GAP_BETWEEN_LEG = podHeightsConfig.Parlay.GAP_BETWEEN_LEG;\n selectedPodHeights.GAP_BETWEEN_LEG = showOptionPick\n ? selectedPodHeights.GAP_BETWEEN_LEG_ODDS\n : Math.max(podHeightsConfig.SGP.GAP_BETWEEN_LEG, podHeightsConfig.Parlay.GAP_BETWEEN_LEG);\n selectedPodHeights.LEG = showOptionPick ? selectedPodHeights.LEG_WITH_ODDS : Math.max(podHeightsConfig.SGP.LEG, podHeightsConfig.Parlay.LEG);\n selectedPodHeights.SUMMARY_TEXT = showOptionPick\n ? selectedPodHeights.SUMMARY_TEXT_WITH_ODDS\n : Math.max(podHeightsConfig.SGP.SUMMARY_TEXT, podHeightsConfig.Parlay.SUMMARY_TEXT);\n }\n\n if (!isAnyPodHasSummary) {\n selectedPodHeights.SUMMARY_TEXT = 0;\n }\n\n return selectedPodHeights;\n}\n\nfunction getMinPodHeight(config: IPodHeightConfigModel): number {\n const { HEADER, SUMMARY_TEXT, ADD_TO_BETSLIP } = getPodHeights(config);\n const minimumListHeight = getMinListHeight(config);\n\n return HEADER + SUMMARY_TEXT + minimumListHeight + ADD_TO_BETSLIP;\n}\n\nfunction getMinListHeight(config: IPodHeightConfigModel): number {\n const { rows } = config;\n const { GAP_BETWEEN_LEG, LEG } = getPodHeights(config);\n const totalGapHeight = GAP_BETWEEN_LEG * (rows - 1);\n\n return rows * LEG + totalGapHeight;\n}\n\nfunction getMinPodListWidth(numberOfPods: number): number {\n return numberOfPods ? DEFAULT_POD_WIDTH * numberOfPods + DEFAULT_POD_LIST_GAP * (numberOfPods - 1) : 0;\n}\n\nexport { getMinListHeight, getMinPodHeight, getMinPodListWidth };\n","// Standard Events\n// Focus Events\nconst focusEvents = ['blur', 'focus', 'focusin', 'focusout'];\n/**\n * Mouse Events\n * (MouseEvent)[https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent]\n */\nconst mouseEvents = ['mousedown', 'dblclick', 'mouseenter', 'mouseleave', 'mousemove', 'mouseout', 'mouseover', 'mouseup', 'click'];\n/**\n * Wheel Events\n * (WheelEvent)[https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent]\n */\nconst wheelEvents = [\n// (WheelEvent)[https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent]\n'wheel', 'mousewheel'];\n// Input Events\nconst inputEvents = ['input', 'invalid', 'change', 'reset', 'select', 'submit'];\n/**\n * @deprecated\n */\nconst formControlsEvents = inputEvents;\n// [KeyboardEvent](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent)\nconst keyboardEvents = ['keydown', 'keypress', 'keyup'];\n// [VR]()\nconst vrEvents = ['vrdisplayactivate', 'vrdisplayblur', 'vrdisplayconnect', 'vrdisplaydeactivate', 'vrdisplaydisconnect', 'vrdisplayfocus', 'vrdisplaypointerrestricted', 'vrdisplaypointerunrestricted', 'vrdisplaypresentchange'];\n// [MSGesture]()\nconst mSGestureEvents = ['MSGestureChange', 'MSGestureDoubleTap', 'MSGestureEnd', 'MSGestureHold', 'MSGestureStart', 'MSGestureTap', 'MSInertiaStart', 'MSPointerCancel', 'MSPointerDown', 'MSPointerEnter', 'MSPointerLeave', 'MSPointerMove', 'MSPointerOut', 'MSPointerOver', 'MSPointerUp'];\n// [xPrint](https://developer.mozilla.org/en-US/docs/Web/API/Window/afterprint_event)\nconst printEvents = ['afterprint', 'beforeprint'];\n// [network]()\nconst networkEvents = ['offline', 'online'];\n// [network]()\nconst audioEvents = ['canplay', 'canplaythrough', 'pause', 'play', 'playing', 'volumechange'];\n// Composition Events\nconst compositionEvents = ['compositionstart', 'compositionupdate', 'compositionend'];\n/**\n * Touch Events\n * [PointerEvent](https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent)\n * [TouchEvent](https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent)\n */\nconst touchEvents = [\n// [PointerEvent](https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent)\n'pointerover', 'pointerenter', 'pointerdown', 'pointermove',\n// 'pointerrawupdate',\n'pointerup', 'pointercancel', 'pointerout', 'pointerleave', 'gotpointercapture', 'lostpointercapture', 'pointerup',\n// [TouchEvent](https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent)\n'touchstart', 'touchend', 'touchmove', 'touchcancel',\n// [DragEvent](https://developer.mozilla.org/en-US/docs/Web/API/DragEvent)\n'drag', 'dragend', 'dragexit', 'dragenter', 'dragleave', 'dragover', 'dragstart', 'drop'];\nconst globalEvents = ['contextmenu', 'resize', 'scroll', 'abort', 'load', 'loadeddata', 'loadedmetadata', 'loadstart', 'unload', 'error'];\nconst websocketEvents = ['close', 'error', 'message', 'open'];\n/**\n * Basic XHR Events\n * [Load](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/load_event)\n * [Error](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/error_event)\n * There are more events you may want to unpatch https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest\n */\n// XHREvent (group is here to make it easier to target XHR in angular applications. It contains redundant events e.g. 'error')\nconst xhrEvents = ['load', 'error'];\n// @TODO\nconst windowEvents = ['compassneedscalibration', 'durationchange', 'emptied', 'ended', 'orientationchange', 'ratechange', 'seeked', 'seeking', 'stalled', 'suspend', 'timeupdate', 'waiting'];\n/**\n * All Events combined\n */\nconst allEvents = Array.from(new Set([...focusEvents, ...mouseEvents, ...wheelEvents, ...inputEvents, ...keyboardEvents, ...inputEvents, ...vrEvents, ...mSGestureEvents, ...printEvents, ...networkEvents, ...audioEvents, ...compositionEvents, ...touchEvents, ...globalEvents, ...websocketEvents, ...xhrEvents, ...windowEvents]));\nconst convenienceMethods = config => ({\n unpatchXHR: () => {\n config.global.disable.XHR();\n config.events.disable.UNPATCHED_EVENTS([...xhrEvents]);\n },\n useUnpatchedPassiveScrollEvents: () => {\n config.events.disable.PASSIVE_EVENTS(['scroll']);\n config.events.disable.UNPATCHED_EVENTS(['scroll']);\n }\n});\nconst zoneGlobalDisableConfigurationsKeys = ['EventEmitter', 'fs', 'node_timers', 'nextTick', 'crypto', 'defineProperty', 'registerElement', 'EventTargetLegacy', 'timers', 'requestAnimationFrame', 'blocking', 'EventTarget', 'FileReader', 'MutationObserver', 'IntersectionObserver', 'on_property', 'customElements', 'XHR', 'geolocation', 'canvas', 'ZoneAwarePromise'];\nconst zoneGlobalEventsConfigurationsKeys = ['UNPATCHED_EVENTS', 'PASSIVE_EVENTS'];\nconst zoneGlobalSettingsConfigurationsKeys = ['DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION'];\nconst zoneRuntimeConfigurationsKeys = ['ignoreConsoleErrorUncaughtError'];\nconst zoneTestDisableConfigurationsKeys = ['jasmine', 'mocha', 'jest'];\nconst zoneTestSettingsConfigurationsKeys = ['fakeAsyncDisablePatchingClock', 'fakeAsyncAutoFakeAsyncWhenClockPatched', 'supportWaitUnResolvedChainedPromise'];\nconst zoneDisable = '__Zone_disable_';\nconst zoneSymbol = '__zone_symbol__';\n/**\n * https://angular.io/guide/zone#setting-up-zonejs\n **/\nfunction assertZoneConfig() {\n if (window.Zone !== undefined) {\n // @TODO link to docs\n console.error('zone-flags file needs to get imported before zone.js');\n }\n}\nconst addDisableFlag = prop => ({\n [prop]: () => {\n assertZoneConfig();\n return window[zoneDisable + prop] = true;\n }\n});\nconst addSymbolFlag = prop => ({\n [prop]: () => {\n assertZoneConfig();\n return window[zoneSymbol + prop] = true;\n }\n});\nconst addArraySymbolFlag = prop => ({\n [prop]: eventNames => {\n assertZoneConfig();\n const w = window;\n return w[zoneSymbol + prop] = [...(Array.isArray(w[zoneSymbol + prop]) ? w[zoneSymbol + prop] : []), ...eventNames];\n }\n});\nconst reduceToObject = methodsArray => {\n return methodsArray.reduce((map, item) => ({\n ...map,\n ...item\n }), {});\n};\n/**\n * factory function to create a `RxZoneConfig` object.\n *\n * @Example\n * import { globalEvents,xhrEvent, zoneConfig} from '@rx-angular/cdk/zone-flags';\n *\n * const zoneConfig = createZoneFlagsConfigurator();\n *\n * zoneConfig.global.disable.requestAnimationFrame();\n * zoneConfig.global.disable.timers();\n * zoneConfig.events.disable.UNPATCHED_EVENTS([...globalEvents, ...xhrEvent]);\n *\n */\nfunction createZoneFlagsConfigurator() {\n const cfg = globalThis;\n const configProps = [...[...zoneGlobalDisableConfigurationsKeys, ...zoneTestDisableConfigurationsKeys].map(prop => zoneDisable + prop), ...[...zoneGlobalSettingsConfigurationsKeys, ...zoneTestSettingsConfigurationsKeys, ...zoneGlobalEventsConfigurationsKeys, ...zoneRuntimeConfigurationsKeys].map(prop => zoneSymbol + prop)];\n // append as global method for easy debugging\n cfg.__rxa_zone_config__log = () => {\n configProps.forEach(flag => {\n cfg[flag] && console.log(flag, cfg[flag]);\n });\n };\n const zoneConfigObj = {\n global: {\n disable: reduceToObject([...zoneGlobalDisableConfigurationsKeys.map(addDisableFlag), ...zoneGlobalSettingsConfigurationsKeys.map(addSymbolFlag)])\n },\n test: {\n disable: reduceToObject([...zoneTestDisableConfigurationsKeys.map(addDisableFlag), ...zoneTestSettingsConfigurationsKeys.map(addSymbolFlag)])\n },\n events: {\n disable: reduceToObject(zoneGlobalEventsConfigurationsKeys.map(addArraySymbolFlag))\n },\n runtime: {\n disable: reduceToObject(zoneRuntimeConfigurationsKeys.map(addSymbolFlag))\n }\n };\n return {\n ...zoneConfigObj,\n ...convenienceMethods(zoneConfigObj)\n };\n}\n/**\n * An object for typed zone-flags configuration.\n *\n * @Example\n *\n * create file `zone-flags.ts` parallel to your `polyfills.ts` and insert following content:\n * ```typescript\n * import { globalEvents, xhrEvent, zoneConfig} from '@rx-angular/cdk/zone-flags';\n *\n * zoneConfig.global.disable.requestAnimationFrame();\n * zoneConfig.global.disable.timers();\n * zoneConfig.events.disable.UNPATCHED_EVENTS([...globalEvents, ...xhrEvent]);\n * ```\n * In `polyfills.ts` above the zone import, import `zone-flags.ts`\n *\n * ```typescript\n * import './zone-flags';\n * // Zone JS is required by default for Angular itself.\n * import 'zone.js';\n * ```\n *\n */\nconst zoneConfig = createZoneFlagsConfigurator();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { allEvents, audioEvents, compositionEvents, focusEvents, formControlsEvents, globalEvents, inputEvents, keyboardEvents, mSGestureEvents, mouseEvents, networkEvents, printEvents, touchEvents, vrEvents, websocketEvents, wheelEvents, windowEvents, xhrEvents, zoneConfig };\n","import * as i0 from '@angular/core';\nimport { Directive, Input } from '@angular/core';\nimport { getZoneUnPatchedApi } from '@rx-angular/cdk/internals/core';\nimport { focusEvents, mouseEvents, wheelEvents, inputEvents, keyboardEvents, touchEvents } from '@rx-angular/cdk/zone-configurations';\nimport { Subscription, BehaviorSubject } from 'rxjs';\nconst zonePatchedEvents = [...focusEvents, ...mouseEvents, ...wheelEvents, ...inputEvents, ...keyboardEvents, ...touchEvents];\n/**\n *\n * @description\n *\n * This function takes an elem and event and re-applies the listeners from the passed event to the\n * passed element with the zone un-patched version of it.\n *\n * @param elem {HTMLElement} - The elem to re-apply the listeners to.\n * @param event {string} - The name of the event from which to re-apply the listeners.\n *\n * @returns void\n */\nfunction unpatchEventListener(element, event) {\n // `EventTarget` is patched only in the browser environment, thus\n // running this code on the server-side will throw an exception:\n // `TypeError: element.eventListeners is not a function`.\n if (typeof element.eventListeners !== 'function') {\n return;\n }\n const eventListeners = element.eventListeners(event);\n // Return if no event listeners are present\n if (!Array.isArray(eventListeners) || eventListeners.length === 0) {\n return;\n }\n const addEventListener = getZoneUnPatchedApi(element, 'addEventListener').bind(element);\n const listeners = [];\n eventListeners.forEach(listener => {\n // Remove and reapply listeners with patched API\n element.removeEventListener(event, listener);\n // Reapply listeners with un-patched API\n addEventListener(event, listener);\n listeners.push(listener);\n });\n return listeners;\n}\n/**\n * @Directive RxUnpatch\n *\n * @description\n *\n * The `unpatch` directive helps in partially migrating to zone-less apps as well as getting rid\n * of unnecessary renderings through zones `addEventListener` patches.\n * It can be used on any element you apply event bindings.\n *\n * The current way of binding events to the DOM is to use output bindings:\n * ```html\n * \n * ```\n *\n * The problem is that every event registered over `()` syntax, e.g. `(click)`\n * marks the component and all its ancestors as dirty and re-renders the whole component tree.\n * This is because zone.js patches the native browser API and whenever one of the patched APIs is used it re-renders.\n *\n * So even if your button is not related to a change that needs a re-render the app will re-render completely.\n * This leads to bad performance. This is especially helpful if you work with frequently fired events like 'mousemove'\n *\n * `unpatch` directive solves that problem.\n *\n * Included Features:\n * - by default un-patch all registered listeners of the host it is applied on\n * - un-patch only a specified set of registered event listeners\n * - works zone independent (it directly checks the widow for patched APIs and un-patches them without the use of `runOutsideZone` which brings more performance)\n * - Not interfering with any logic executed by the registered callback\n *\n * @usageNotes\n *\n * The `unpatch` directive can be used like shown here:\n * ```html\n * \n * \n * ```\n *\n * @publicApi\n */\nlet RxUnpatch = /*#__PURE__*/(() => {\n class RxUnpatch {\n host;\n /**\n * @description\n * List of events that the element should be unpatched from. When input is empty or undefined,\n * the element is unpatched from all zone-patched events.\n *\n * Full list of zone-patched browser events can be found in\n * [this document](https://github.com/angular/angular/blob/master/packages/zone.js/STANDARD-APIS.md#browser).\n *\n */\n events;\n subscription = new Subscription();\n events$ = new BehaviorSubject(zonePatchedEvents);\n listeners = new Map();\n constructor(host) {\n this.host = host;\n }\n ngOnChanges({\n events\n }) {\n if (events && Array.isArray(this.events)) {\n this.events$.next(this.events);\n }\n }\n ngAfterViewInit() {\n this.subscription = this.events$.subscribe(events => {\n this.reapplyUnPatchedEventListeners(events);\n });\n }\n ngOnDestroy() {\n this.subscription.unsubscribe();\n for (const [event, listeners = []] of this.listeners) {\n listeners.forEach(listener => {\n this.host.nativeElement.removeEventListener(event, listener);\n });\n }\n }\n reapplyUnPatchedEventListeners(events) {\n for (const event of events) {\n const listeners = unpatchEventListener(this.host.nativeElement, event);\n this.listeners.set(event, listeners);\n }\n }\n /** @nocollapse */\n static ɵfac = function RxUnpatch_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || RxUnpatch)(i0.ɵɵdirectiveInject(i0.ElementRef));\n };\n /** @nocollapse */\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: RxUnpatch,\n selectors: [[\"\", \"unpatch\", \"\"]],\n inputs: {\n events: [0, \"unpatch\", \"events\"]\n },\n standalone: true,\n features: [i0.ɵɵNgOnChangesFeature]\n });\n }\n return RxUnpatch;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { RxUnpatch };\n","import { BetBuilderFixture } from '@cds/betting-offer/domain-specific/bet-builder';\nimport { PopularBetsOptionTeamInfo } from '@cds/betting-offer/domain-specific/popular-bets';\nimport { EventParticipant, EventParticipantImage, SportModel } from '@frontend/sports/betting-offer/feature/model';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { TrackingSource } from '@frontend/sports/tracking/feature';\nimport {\n BetBuilderBadgePosition,\n PopularBetsPodBackgroundImage,\n PopularBetsPodTheme,\n PopularBetsPodTypes,\n} from '@frontend/sports/types/components/popular-bets';\n\nimport { BetBuilderMarket } from '../betbuilder/model/bet-builder.model';\n\nexport enum AddToBetslipState {\n Default = 'default',\n Disabled = 'disabled',\n Selected = 'selected',\n Locked = 'locked',\n}\n\nexport enum PickSelectionType {\n Single = 'single',\n All = 'all',\n}\n\nexport type PopularBetsLogoTypes = 'TeamLogo' | 'CompetitionLogo' | 'SportsLogo' | 'ShieldIcon' | 'EmptyIcon' | 'OpenBullets' | 'RadioOff';\n\nexport interface PopularBetsPodEventLogoDetails {\n logoType: PopularBetsLogoTypes;\n participantLogo?: EventParticipantImage;\n fallbackLogoUrl?: string;\n}\n\nexport interface MultiBetsViewModel {\n payload: PodEventsModel[];\n title: string;\n titleIconClass: string;\n minHeight: number;\n minWidth: number;\n showHeader: boolean;\n}\n\nexport interface PodEventsModel {\n events: GridEvent[];\n counter: number;\n sport: SportModel | undefined;\n expand: boolean;\n visibleOptionsLimit: number;\n showMoreLessButtonVisible: boolean;\n showOptionPick: boolean;\n eventsCount: number;\n eventsHideCount?: number;\n podId?: string;\n tracking: TrackingSource;\n title?: string;\n eventStartDate?: Date;\n defaultNoOfLegs: number;\n isOptionPickEnabled: boolean;\n podType: PopularBetsPodTypes;\n isAllPodAreSameType: boolean;\n preCreatedMarket?: BetBuilderMarket;\n preCreatedOptions?: IPreCreatedOption[];\n preCreatedOffer?: BetBuilderFixture;\n summary?: string;\n betBuilderBadgePosition: BetBuilderBadgePosition;\n backgroundStyle?: string;\n enableLogoHeader: boolean;\n backgroundImage?: PopularBetsPodBackgroundImage;\n podTheme: PopularBetsPodTheme;\n titleColor?: string;\n podOptionTeamInfo: PopularBetsOptionTeamInfo[];\n}\n\nexport interface IPreCreatedOption {\n name: string;\n optionId: number;\n}\n\nexport interface IExpandCollapse {\n isExpanded: boolean;\n noOfLegs: number;\n}\n\nexport interface ButtonProperties {\n state: AddToBetslipState;\n text: string;\n}\n\nexport interface IPodHeightConfigModel {\n rows: number;\n isEpcotEnabled: boolean;\n podType: PopularBetsPodTypes;\n isAllPodAreSameType: boolean;\n showOptionPick: boolean;\n isAnyPodHasSummary?: boolean;\n}\n\nexport interface IBetBuilderOptionDetail {\n name: string;\n logoDetails: PopularBetsPodEventLogoDetails;\n opponentParticipant?: EventParticipant;\n}\n","@if (settingsInitialized$ | async) {\n \n}\n\n
\n {{ stake | msCurrency: true }} {{ sitecorePopularBetsConfig.messages.StakeReturns }} {{ winnings | msCurrency: true }}\n
\n
\n","import { AsyncPipe, NgClass, NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges, inject, signal } from '@angular/core';\n\nimport { BetBuilderFixture, SuspensionState } from '@cds/betting-offer/domain-specific/bet-builder';\nimport { PopularBetsConfig, ReturnsMessageConfig, SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { CurrencyPipe } from '@frontend/sports/common/core/feature/money';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { ModalDialogService } from '@frontend/sports/modal/feature';\nimport { NativePrice, NativePriceFormatterPipe } from '@frontend/sports/odds/feature/native-price';\nimport { TrackingSource } from '@frontend/sports/tracking/feature';\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { BettingSettingsService, IUserBettingSettings, UserService } from '@frontend/sports/user/feature';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\nimport { RxStrategyProvider } from '@rx-angular/cdk/render-strategies';\nimport { RxUnpatch } from '@rx-angular/template/unpatch';\nimport { IPickTracking } from 'packages/sports/common/betslip/core/picks/pick-models';\nimport { Observable, Subject, Subscription, exhaustMap, first, map, merge, partition, tap } from 'rxjs';\n\nimport { BetBuilderMarket } from '../../betbuilder/model/bet-builder.model';\nimport { BetBuilderPickIdType } from '../../common/betslip/betslip-betbuilder-services/bet-builder-betslip-service.model';\nimport { BetslipConnectorService } from '../../common/betslip/betslip-connector.service';\nimport { ClearBetslipComponent } from '../../common/betslip/clear-betslip/clear-betslip.component';\nimport { Selection } from '../../common/betslip/model';\nimport { SummaryCalculatorService } from '../../common/betslip/summary-calculator.service';\nimport { PickSourceProvider } from '../../option-pick/pick-source.provider';\nimport { ModularPickSourceService } from '../../widget/core/modular-pick-source.service';\nimport { AddToBetslipState, ButtonProperties, IPreCreatedOption } from '../popular-bets.models';\n\n@Component({\n standalone: true,\n imports: [NgClass, CurrencyPipe, NgTemplateOutlet, RxUnpatch, IconCustomComponent, AsyncPipe],\n selector: 'ms-popular-bets-pod-add-to-betslip',\n templateUrl: './popular-bets-pod-add-to-betslip.component.html',\n styleUrl: './popular-bets-pod-add-to-betslip.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n SummaryCalculatorService,\n UserService,\n BetslipConnectorService,\n NativePriceFormatterPipe,\n { provide: PickSourceProvider, useClass: ModularPickSourceService },\n ],\n})\nexport class PopularBetsPodAddToBetslipComponent implements OnInit, OnChanges, OnDestroy {\n @Input() enableSinglePickSelection: boolean;\n @Input() podEvents: GridEvent[];\n @Input() tracking: TrackingSource;\n @Input() isEpcotEnabled: boolean;\n @Input() podType: PopularBetsPodTypes;\n @Input() betBuilderMarket: BetBuilderMarket;\n @Input() betBuilderOptions: IPreCreatedOption[];\n @Input() preCreatedOffer: BetBuilderFixture;\n\n stake: number;\n winnings?: number;\n totalOdds?: string;\n defaultButtonOverride: boolean = this.popularBetsConfig.defaultButtonOverride;\n\n private selections: Selection[];\n readonly clickAddToBetslip = new Subject();\n private pickSelectionSubscription: Subscription;\n private isAllPicksAddedToBetslip = false;\n private betBuilderPickIds: BetBuilderPickIdType[] = [];\n settingsInitialized$: Observable>;\n buttonProperties = signal({\n state: AddToBetslipState.Default,\n text: this.sitecorePopularBetsConfig.messages?.AddToBetslip || '',\n });\n\n private ngZone = inject(NgZone);\n\n constructor(\n private summaryCalculatorService: SummaryCalculatorService,\n public sitecorePopularBetsConfig: SitecorePopularBetsConfig,\n private userService: UserService,\n private betslipConnector: BetslipConnectorService,\n private modalDialog: ModalDialogService,\n private pickSource: PickSourceProvider,\n private strategy: RxStrategyProvider,\n private multiReturnsMessageConfig: ReturnsMessageConfig,\n private bettingSettingsService: BettingSettingsService,\n private popularBetsConfig: PopularBetsConfig,\n ) {\n const [addToBetslip$, removeFromBetslip$] = partition(this.clickAddToBetslip, () => !this.isAllPicksAddedToBetslip);\n\n merge(\n addToBetslip$.pipe(\n map(() => {\n return this.betslipConnector.canBeAdded(this.podEvents.length);\n }),\n exhaustMap((canBeAdded) => {\n return canBeAdded ? this.scheduleAddToBetslip$ : this.scheduleOpenDialog$;\n }),\n ),\n\n removeFromBetslip$.pipe(\n exhaustMap(() => {\n return this.scheduleRemoveFromBetslip$;\n }),\n ),\n ).subscribe();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.podEvents && !changes.podEvents.firstChange) {\n this.setSelections();\n this.calculateSummary();\n this.updateButtonState();\n }\n }\n\n ngOnInit(): void {\n this.settingsInitialized$ = this.bettingSettingsService.bettingSettings$.pipe(\n first(),\n tap((bettingSettings) => {\n this.stake = this.getDefaultStake(bettingSettings.defaultStake);\n this.calculateSummary();\n this.updateButtonState();\n }),\n );\n this.setSelections();\n this.subscribeForPickChange();\n }\n\n get isButtonLocked(): boolean {\n return this.buttonProperties().state === AddToBetslipState.Locked;\n }\n\n private get isBetBuilderOptions() {\n return this.podType === PopularBetsPodTypes.SGP && this.betBuilderOptions?.length > 0;\n }\n\n private get isBetBuilderMarkets() {\n return this.podType === PopularBetsPodTypes.SGP && this.preCreatedOffer.precreatedMarketsInfo?.length > 0;\n }\n\n private get isBetBuilder() {\n return this.podType === PopularBetsPodTypes.SGP;\n }\n\n private get preCreatedOptionOdds(): NativePrice {\n return NativePrice.fromNativePrice(this.preCreatedOffer.precreatedGroupedInfo[0].builderOptionPricing.odds);\n }\n\n private isGroupedMarketSuspened(): boolean {\n if (this.isBetBuilder && this.preCreatedOffer.precreatedGroupedInfo) {\n const suspendedOptions = this.podEvents[0].optionGroups.flatMap((og) => og.options?.filter((o) => !o.online));\n const isSuspendedOffer = this.preCreatedOffer.precreatedGroupedInfo[0]?.options?.some((o) =>\n suspendedOptions?.some((vo) => vo.id === o.id),\n );\n\n const isSuspendedPricing =\n this.preCreatedOffer.precreatedGroupedInfo[0]?.builderOptionPricing.suspensionState === SuspensionState.MarketSuspended;\n\n return isSuspendedPricing || isSuspendedOffer;\n }\n\n return false;\n }\n\n private hasLiveOrLockedRestrictions(): boolean {\n const isAnyEventLive = this.podEvents.some((event) => event.live);\n const optionGroups = this.podEvents.flatMap((event) => event.optionGroups);\n const isAnyMarketLocked = optionGroups.some((og) => !og.online);\n const isAnyOptionLocked = optionGroups.flatMap((og) => og.options).some((o) => !o.online);\n\n return isAnyEventLive || isAnyMarketLocked || isAnyOptionLocked;\n }\n\n onButtonClick(): void {\n const { state } = this.buttonProperties();\n if (state !== AddToBetslipState.Locked && state !== AddToBetslipState.Disabled) {\n this.clickAddToBetslip.next();\n }\n }\n\n private subscribeForPickChange(): void {\n this.betBuilderPickIds = this.getBetBuilderPickIds();\n\n const pickSelected$ = this.betslipConnector.getPicksSelected(this.isBetBuilder ? [] : this.selections, this.betBuilderPickIds);\n\n this.pickSelectionSubscription = pickSelected$?.subscribe((pick) => {\n this.isAllPicksAddedToBetslip = pick.every((isPickSelected) => isPickSelected);\n this.updateButtonState();\n });\n }\n\n private scheduleOpenDialog$ = this.strategy.schedule(\n () => {\n this.modalDialog.openDialog(ClearBetslipComponent, { settings: { cssClass: 'clear-betslip-dialog' } });\n },\n { scope: this, patchZone: this.ngZone },\n );\n\n private scheduleAddToBetslip$ = this.strategy.schedule(\n () => {\n const tracking = this.getPickTracking();\n\n if (this.isBetBuilder) {\n this.betslipConnector.addBetBuilderPickToBetslip(\n this.podEvents[0],\n this.betBuilderMarket,\n tracking,\n this.betBuilderPickIds,\n this.preCreatedOffer,\n );\n\n return;\n }\n this.betslipConnector.addToBetslip(this.selections, this.stake, tracking);\n },\n { scope: this, patchZone: this.ngZone },\n );\n\n private scheduleRemoveFromBetslip$ = this.strategy.schedule(\n () => {\n if (this.isBetBuilder) {\n const event = this.podEvents[0];\n\n this.betslipConnector.removeBetBuilderPick(\n this.preCreatedOffer,\n this.betBuilderPickIds,\n event.id,\n this.betBuilderMarket?.option.longId,\n );\n\n return;\n }\n this.betslipConnector.removeFromBetslip(this.selections);\n },\n { scope: this, patchZone: this.ngZone },\n );\n\n private getBetBuilderPickIds(): BetBuilderPickIdType[] {\n if (this.isBetBuilder) {\n const event = this.podEvents[0];\n return this.betslipConnector.getBetBuilderPicks(\n this.preCreatedOffer,\n this.betBuilderMarket,\n event.id,\n event.betBuilderTradingV2FixtureId,\n this.preCreatedOffer?.precreatedGroupedInfo[0],\n event.optionGroups,\n );\n }\n return [];\n }\n\n private getPickTracking(): IPickTracking {\n const picksTracking = this.pickSource.get('PopularMultiBets');\n picksTracking.betDetails = this.tracking.betDetails;\n picksTracking.variant = this.tracking.variant;\n picksTracking.contentPosition = this.tracking.position?.toString();\n\n return picksTracking;\n }\n\n private getDefaultStake(defaultStake?: number): number {\n return defaultStake ? defaultStake : this.multiReturnsMessageConfig.defaultStakes[this.userService.currency.toLowerCase()] || 0;\n }\n\n private updateButtonState(): void {\n const buttonState = this.getButtonState();\n this.buttonProperties.set({\n state: buttonState,\n text: this.getButtonText(buttonState),\n });\n }\n\n private getButtonText(state: AddToBetslipState): string {\n if (state === AddToBetslipState.Selected) {\n return this.enableSinglePickSelection\n ? this.sitecorePopularBetsConfig.messages?.AddedAllToBetslip || ''\n : this.sitecorePopularBetsConfig.messages?.AddedToBetslip || '';\n }\n\n return this.enableSinglePickSelection\n ? this.sitecorePopularBetsConfig.messages?.AddAllToBetslip || ''\n : this.sitecorePopularBetsConfig.messages?.AddToBetslip || '';\n }\n\n private getButtonState(): AddToBetslipState {\n if (this.isAllPicksAddedToBetslip) {\n return AddToBetslipState.Selected;\n }\n\n if ((this.podType === PopularBetsPodTypes.Parlay || this.isBetBuilderMarkets) && this.hasLiveOrLockedRestrictions()) {\n return this.isEpcotEnabled ? AddToBetslipState.Locked : AddToBetslipState.Disabled;\n }\n\n if (this.isBetBuilderOptions && this.isGroupedMarketSuspened()) {\n return this.isEpcotEnabled ? AddToBetslipState.Locked : AddToBetslipState.Disabled;\n }\n\n return AddToBetslipState.Default;\n }\n\n private calculateSummary(): void {\n if (this.isBetBuilderOptions) {\n this.totalOdds = this.summaryCalculatorService.getTotalOddsForGroup(this.preCreatedOptionOdds);\n this.winnings = this.summaryCalculatorService.calculateWinningsForGroup(this.stake, this.preCreatedOptionOdds);\n } else {\n this.totalOdds = this.summaryCalculatorService.getTotalOdds(this.selections.map((t) => t.option?.nativePrice).filter(Boolean));\n this.winnings = this.summaryCalculatorService.calculateWinnings(\n this.selections.map((t) => t.option?.nativePrice).filter(Boolean),\n this.stake,\n );\n }\n }\n\n private setSelections(): void {\n this.selections = this.podEvents.map((event) => {\n const optionGroup = event.optionGroups[0];\n const option = optionGroup.options[0];\n\n return {\n id: `${event.id}-${option.id}`,\n event,\n optionGroup,\n option,\n };\n });\n }\n\n ngOnDestroy(): void {\n this.pickSelectionSubscription?.unsubscribe();\n this.clickAddToBetslip.complete();\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { Subject } from 'rxjs';\n\nimport { IExpandCollapse } from '../popular-bets.models';\n\n@Injectable()\nexport class PopularBetsExpandCollapseService {\n private triggerExpandCollapse$ = new Subject();\n\n setExpandCollapse(isExpanded: boolean, noOfLegs: number): void {\n this.triggerExpandCollapse$.next({ isExpanded, noOfLegs });\n }\n\n getExpandCollapse(): Subject {\n return this.triggerExpandCollapse$;\n }\n}\n","@if (isEpcotEnabled) {\n
\n \n
\n} @else {\n \n}\n\n\n
\n {{ showMoreLessText }} \n
\n
\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, DestroyRef, EventEmitter, Input, OnInit, Output, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { interpolateDoubleBracesString } from '@frontend/sports/common/core/utils/string';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\nimport { delay } from 'rxjs';\n\nimport { PopularBetsExpandCollapseService } from '../popular-bets-services/popular-bets-expand-collapse.service';\nimport { IExpandCollapse } from '../popular-bets.models';\n\n@Component({\n standalone: true,\n imports: [NgTemplateOutlet, IconCustomComponent],\n selector: 'ms-popular-bets-pod-show-more',\n templateUrl: './popular-bets-pod-show-more.component.html',\n styleUrls: ['./popular-bets-pod-show-more.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopularBetsPodShowMoreComponent implements OnInit {\n @Input() totalCount: number;\n @Input() defaultCount: number;\n @Input() isEpcotEnabled: boolean;\n @Output() expandChange: EventEmitter = new EventEmitter();\n\n private destroyRef = inject(DestroyRef);\n private waitTillTransition = 300;\n showMoreLessText: string;\n isExpanded: boolean;\n\n constructor(\n private sitecorePopularBetsConfig: SitecorePopularBetsConfig,\n private popularBetsExpandCollapseService: PopularBetsExpandCollapseService,\n private changeDetectorRef: ChangeDetectorRef,\n ) {}\n\n ngOnInit(): void {\n this.showMoreLessText = this.getShowMoreLessText();\n this.popularBetsExpandCollapseService\n .getExpandCollapse()\n .pipe(delay(this.waitTillTransition), takeUntilDestroyed(this.destroyRef))\n .subscribe((data: IExpandCollapse) => {\n this.isExpanded = this.totalCount <= data.noOfLegs;\n this.showMoreLessText = this.getShowMoreLessText();\n this.changeDetectorRef.detectChanges();\n });\n }\n\n onShowMoreLessButtonToggle(): void {\n this.expandChange.emit(!this.isExpanded);\n }\n\n private getShowMoreLessText(): string {\n if (this.isExpanded) {\n return interpolateDoubleBracesString(this.sitecorePopularBetsConfig.messages?.Hide, { noOfLegs: this.totalCount - this.defaultCount });\n }\n\n return interpolateDoubleBracesString(this.sitecorePopularBetsConfig.messages?.SeeAll, { noOfLegs: this.totalCount });\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'ms-popular-bets-pod-summary',\n standalone: true,\n template: '
{{ summary() }}
',\n styleUrl: './popular-bets-pod-summary.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopularBetsPodSummaryComponent {\n summary = input.required();\n}\n","import { Injectable } from '@angular/core';\n\nimport { OfferSource } from '@cds';\nimport { PopularBetsOptionTeamInfo } from '@cds/betting-offer/domain-specific/popular-bets';\nimport { EventOption, EventParticipant } from '@frontend/sports/betting-offer/feature/model';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\n\n@Injectable()\nexport class PopularBetsPodEventParticipantService {\n private getOptionPlayerId(eventOption: EventOption, offerSource: OfferSource): number | undefined {\n return offerSource === OfferSource.V1 ? eventOption.playerId : eventOption.optionPlayerId;\n }\n\n getOptionTeamId(eventOption: EventOption, optionTeamInfo: PopularBetsOptionTeamInfo[]): number | undefined {\n return optionTeamInfo.find((option) => option.optionId === eventOption.id)?.teamId;\n }\n\n private findParticipantById(\n participants: EventParticipant[],\n optionPlayerId: number,\n event: GridEvent,\n isOpponent: boolean = false,\n isTeamIdMapped: boolean = false,\n ): EventParticipant | undefined {\n const getId = (p: EventParticipant) => (isTeamIdMapped || event.offerSource === OfferSource.V1 ? p.id : p.fixtureParticipantId);\n\n return participants.find((p) => (isOpponent ? getId(p) !== optionPlayerId : getId(p) === optionPlayerId));\n }\n\n getOpponentParticipantFromOption(\n eventOption: EventOption,\n event: GridEvent,\n podOptionTeamInfo?: PopularBetsOptionTeamInfo[],\n ): EventParticipant | undefined {\n const optionTeamId = podOptionTeamInfo ? this.getOptionTeamId(eventOption, podOptionTeamInfo) : undefined;\n const playerId = !optionTeamId ? this.getOptionPlayerId(eventOption, event.offerSource) : null;\n const participantId = optionTeamId ?? playerId;\n if (!participantId) return undefined;\n\n return this.findParticipantById(event.participants, participantId, event, true, optionTeamId ? true : false);\n }\n\n mapEventWithFilteredParticipants(event: GridEvent): EventParticipant[] {\n if (event.participants.length > 2) {\n return event.participants.filter((p) => p.source === event.offerSource);\n }\n return event.participants;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { OfferSource } from '@cds';\nimport { PopularBetsOptionTeamInfo } from '@cds/betting-offer/domain-specific/popular-bets';\nimport { EventOption, EventParticipant, EventParticipantImage } from '@frontend/sports/betting-offer/feature/model';\nimport { EpcotConfig, ImagesConfig, PopularBetsConfig, SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { ImageRootPath } from '@frontend/sports/participant-image/feature';\nimport { FallbackImage } from '@frontend/sports/participant-image/feature/provider';\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { PopularBetsFallbackLogoModel } from '@frontend/sports/types/models/popular-bets';\nimport { UtilsService } from '@frontend/vanilla/core';\n\nimport { PopularBetsPodEventLogoDetails } from '../popular-bets.models';\nimport { PopularBetsPodEventParticipantService } from './popular-bets-pod-event-participant.service';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class PopularBetsPodEventLogoService {\n private logosDict: {\n [sportId: number]: {\n sportLogo?: PopularBetsFallbackLogoModel;\n competitionLogos: { [competitionId: number]: PopularBetsFallbackLogoModel };\n };\n } = {};\n\n private logoConfigWithLowerCaseKeys: {\n [key: string]: string[];\n } = {};\n\n constructor(\n private sitecorePopularBetsConfig: SitecorePopularBetsConfig,\n private popularBetsConfig: PopularBetsConfig,\n private imagesConfig: ImagesConfig,\n private utilsService: UtilsService,\n private epcotConfig: EpcotConfig,\n private participantService: PopularBetsPodEventParticipantService,\n ) {\n this.processConfigs();\n }\n\n private processConfigs(): void {\n this.initializeLogoConfigWithLowerCaseKeys();\n this.preprocessCompetitionLogos();\n }\n\n getLogoDetailsForPodEvent(\n eventOption: EventOption,\n event: GridEvent,\n podType: PopularBetsPodTypes,\n podOptionTeamInfo?: PopularBetsOptionTeamInfo[],\n ): PopularBetsPodEventLogoDetails {\n if (!this.logoConfigWithLowerCaseKeys[podType.toLowerCase()]?.length) {\n this.processConfigs();\n }\n\n const logoConfigurationForPodType = this.logoConfigWithLowerCaseKeys[podType.toLowerCase()];\n\n // Early return based on config and epcot conditions\n if (!logoConfigurationForPodType?.length && this.epcotConfig.isEnabled) {\n return { logoType: 'OpenBullets' };\n }\n\n if (!this.epcotConfig.isEnabled && podType === PopularBetsPodTypes.SGP) {\n return { logoType: 'RadioOff' };\n }\n\n // Find the first valid logo details based on the logo configuration\n for (const logoType of logoConfigurationForPodType) {\n const logoDetails = this.getLogoDetailsByLogoType(logoType, eventOption, event, podOptionTeamInfo);\n if (logoDetails) return logoDetails;\n }\n\n // Return found logo details or default to 'RadioOff'\n return { logoType: 'RadioOff' };\n }\n\n private initializeLogoConfigWithLowerCaseKeys(): void {\n for (const [key, value] of Object.entries(this.popularBetsConfig.logoConfigurationForPodType)) {\n this.logoConfigWithLowerCaseKeys[key.toLowerCase()] = value;\n }\n }\n\n private preprocessCompetitionLogos(): void {\n for (const item of this.sitecorePopularBetsConfig.logos) {\n const { sportId, competitionId } = item;\n\n const dicRef = (this.logosDict[sportId] ??= { sportLogo: undefined, competitionLogos: {} });\n if (!competitionId) {\n dicRef.sportLogo = item;\n } else {\n dicRef.competitionLogos[competitionId] = item;\n }\n }\n }\n\n private getLogoDetailsByLogoType(\n logoType: string,\n eventOption: EventOption,\n event: GridEvent,\n podOptionTeamInfo?: PopularBetsOptionTeamInfo[],\n ): PopularBetsPodEventLogoDetails | null {\n switch (logoType) {\n case 'TeamLogo':\n return this.getTeamLogoDetails(eventOption, event, podOptionTeamInfo);\n case 'CompetitionLogo':\n return this.getCompetitionLogoDetails(event);\n case 'ShieldIcon':\n return this.getShieldIconDetails(event);\n case 'SportsLogo':\n return { logoType: 'SportsLogo' };\n default:\n return null;\n }\n }\n\n private getTeamLogoDetails(\n eventOption: EventOption,\n event: GridEvent,\n podOptionTeamInfo?: PopularBetsOptionTeamInfo[],\n ): PopularBetsPodEventLogoDetails | null {\n const participantLogo = this.getParticipantLogo(eventOption, event, podOptionTeamInfo);\n return participantLogo && { logoType: 'TeamLogo', participantLogo };\n }\n\n private getCompetitionLogoDetails(event: GridEvent): PopularBetsPodEventLogoDetails | null {\n const competitionLogoUrl = this.getCompetitionLogoUrl(event);\n return competitionLogoUrl ? { logoType: 'CompetitionLogo', fallbackLogoUrl: this.getCompetitionLogoUrl(event) } : null;\n }\n\n private getShieldIconDetails(event: GridEvent): PopularBetsPodEventLogoDetails {\n return {\n logoType: 'ShieldIcon',\n fallbackLogoUrl: this.utilsService.format(\n this.imagesConfig.participantImageUrl,\n ImageRootPath.Live,\n event.sport.id,\n FallbackImage.EpcotDefault,\n ),\n };\n }\n\n private getParticipantLogo(\n eventOption: EventOption,\n event: GridEvent,\n podOptionTeamInfo?: PopularBetsOptionTeamInfo[],\n ): EventParticipantImage | null {\n const optionTeamId = podOptionTeamInfo ? this.participantService.getOptionTeamId(eventOption, podOptionTeamInfo) : null;\n const participantId = optionTeamId ?? (event.offerSource === OfferSource.V1 ? eventOption.playerId : eventOption.optionPlayerId);\n\n if (!participantId) return null;\n\n const participant = event.participants.find((p: EventParticipant) =>\n // TeamId always maps to p.id. If TeamId exists or the source is V1, check p.id;\n // otherwise, check p.fixtureParticipantId for V2.\n optionTeamId || event.offerSource === OfferSource.V1 ? p.id === participantId : p.fixtureParticipantId === participantId,\n );\n\n return participant?.image?.logo || participant?.image?.jersey ? participant.image : null;\n }\n\n private getCompetitionLogoUrl(event: GridEvent): string | undefined {\n const { sport, league } = event;\n const competitionId = league.parentLeagueId ?? league.id;\n\n return this.logosDict[sport.id]?.competitionLogos[competitionId]?.src ?? this.logosDict[sport.id]?.sportLogo?.src;\n }\n}\n","
\n \n @if (pod.summary) {\n \n }\n
\n \n
\n
\n
\n @if (pod.showMoreLessButtonVisible) {\n \n }\n\n \n
\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, OnChanges, OnInit, SimpleChanges, inject } from '@angular/core';\n\nimport { interpolateDoubleBracesString } from '@frontend/sports/common/core/utils/string';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { BetBuilderBadgePosition, PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { isEmpty } from 'lodash-es';\n\nimport { PopularBetsBetBuilderOptionsComponent } from '../popular-bets-bet-builder-options/popular-bets-bet-builder-options.component';\nimport { PopularBetsBetBuilderPodHeaderComponent } from '../popular-bets-bet-builder-pod-header/popular-bets-bet-builder-pod-header.component';\nimport { getMinListHeight } from '../popular-bets-heights';\nimport { PopularBetsPodAddToBetslipComponent } from '../popular-bets-pod-add-to-betslip/popular-bets-pod-add-to-betslip.component';\nimport { PopularBetsPodShowMoreComponent } from '../popular-bets-pod-show-more/popular-bets-pod-show-more.component';\nimport { PopularBetsPodSummaryComponent } from '../popular-bets-pod-summary/popular-bets-pod-summary.component';\nimport { PopularBetsExpandCollapseService } from '../popular-bets-services/popular-bets-expand-collapse.service';\nimport { PopularBetsPodEventLogoService } from '../popular-bets-services/popular-bets-pod-event-logo.service';\nimport { PopularBetsPodEventParticipantService } from '../popular-bets-services/popular-bets-pod-event-participant.service';\nimport { IBetBuilderOptionDetail, IPodHeightConfigModel, PodEventsModel } from '../popular-bets.models';\n\n@Component({\n selector: 'ms-popular-bets-bet-builder-pod',\n standalone: true,\n templateUrl: './popular-bets-bet-builder-pod.component.html',\n styleUrl: './popular-bets-bet-builder-pod.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n PopularBetsBetBuilderPodHeaderComponent,\n PopularBetsBetBuilderOptionsComponent,\n PopularBetsPodShowMoreComponent,\n PopularBetsPodAddToBetslipComponent,\n PopularBetsPodSummaryComponent,\n ],\n})\nexport class PopularBetsBetBuilderPodComponent implements OnInit, OnChanges {\n @HostBinding('class') className = 'popular-bets-bet-builder-pod';\n\n @Input() pod: PodEventsModel;\n @Input() isEpcotEnabled: boolean;\n @Input() visiblePodLegs: number;\n\n protected event: GridEvent;\n protected showBadge: boolean;\n options: IBetBuilderOptionDetail[] = [];\n minHeight: number;\n private minPodHeightConfig: IPodHeightConfigModel = {\n rows: 5,\n isEpcotEnabled: false,\n podType: PopularBetsPodTypes.Parlay,\n isAllPodAreSameType: false,\n showOptionPick: false,\n };\n\n private popularBetsExpandCollapseService = inject(PopularBetsExpandCollapseService);\n private eventLogoService = inject(PopularBetsPodEventLogoService);\n private participantService = inject(PopularBetsPodEventParticipantService);\n\n ngOnChanges({ pod, visiblePodLegs }: SimpleChanges): void {\n if (pod && pod.currentValue !== pod.previousValue) {\n this.updatePodEvent(this.pod.events[0]);\n this.options = this.getOptionGroups();\n }\n\n if (visiblePodLegs && visiblePodLegs.currentValue !== visiblePodLegs.previousValue) {\n this.pod.visibleOptionsLimit = visiblePodLegs.currentValue;\n }\n\n this.updatePodHeightConfig();\n }\n\n ngOnInit(): void {\n this.showBadge = this.pod.betBuilderBadgePosition === BetBuilderBadgePosition.OnPod;\n }\n\n private getOptionGroups(): IBetBuilderOptionDetail[] {\n const { preCreatedOptions } = this.pod;\n const { optionGroups } = this.event;\n\n if (!isEmpty(preCreatedOptions)) {\n return preCreatedOptions!.map((preCreatedOption) => {\n const eventOption = optionGroups.flatMap((group) => group.options).find((option) => option.id === preCreatedOption.optionId);\n const existingOption = this.options.find((opt) => opt.name == preCreatedOption.name);\n const opponentParticipant = this.participantService.getOpponentParticipantFromOption(\n eventOption!,\n this.event,\n this.pod.podOptionTeamInfo,\n );\n return {\n name: preCreatedOption.name,\n logoDetails:\n existingOption?.logoDetails ??\n this.eventLogoService.getLogoDetailsForPodEvent(\n eventOption!,\n this.event,\n PopularBetsPodTypes.SGP,\n this.pod.podOptionTeamInfo,\n ),\n opponentParticipant: opponentParticipant,\n };\n });\n }\n\n const optionNames = optionGroups[0].name.split(';');\n const existingOption = this.options.find((opt) => opt.name == optionGroups[0].options[0].name);\n const opponentParticipant = this.participantService.getOpponentParticipantFromOption(optionGroups[0].options[0], this.event);\n if (existingOption) {\n return optionNames.map((name) => ({ name, logoDetails: existingOption.logoDetails, opponentParticipant }));\n }\n const logoDetails = this.eventLogoService.getLogoDetailsForPodEvent(optionGroups[0].options[0], this.event, PopularBetsPodTypes.SGP);\n return optionNames.map((name) => ({ name, logoDetails, opponentParticipant }));\n }\n\n onShowMoreLessButtonToggle(expand: boolean): void {\n this.pod.expand = expand;\n this.pod.visibleOptionsLimit = expand ? this.options.length : this.pod.defaultNoOfLegs;\n\n this.popularBetsExpandCollapseService.setExpandCollapse(expand, this.pod.visibleOptionsLimit);\n }\n\n getTrackingDetails(length: number) {\n return {\n ...this.pod.tracking,\n betDetails: interpolateDoubleBracesString(this.pod.tracking.betDetails, { length }),\n };\n }\n\n private updatePodEvent(event: GridEvent) {\n event.participants = this.participantService.mapEventWithFilteredParticipants(event);\n this.event = event;\n }\n\n private updatePodHeightConfig() {\n this.minPodHeightConfig = {\n rows: this.pod.visibleOptionsLimit,\n isEpcotEnabled: this.isEpcotEnabled,\n showOptionPick: this.pod.isOptionPickEnabled,\n podType: this.pod.podType,\n isAllPodAreSameType: this.pod.isAllPodAreSameType,\n };\n this.minHeight = getMinListHeight(this.minPodHeightConfig);\n }\n}\n","import { Injectable } from '@angular/core';\nimport { HammerGestureConfig } from '@angular/platform-browser';\n\nimport { TouchMouseInput } from 'hammerjs';\n\n@Injectable()\nexport class PopularBetsHammerGestureConfigProvider extends HammerGestureConfig {\n private swipeVelocity = 0.01;\n\n override overrides = {\n swipe: {\n direction: Hammer.DIRECTION_HORIZONTAL,\n velocity: this.swipeVelocity,\n },\n };\n\n override options = {\n inputClass: TouchMouseInput,\n };\n}\n","@if (titleIconClass) {\n \n}\n@if (title) {\n {{ title }}\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\n@Component({\n standalone: true,\n imports: [IconCustomComponent],\n selector: 'ms-popular-bets-module-header',\n templateUrl: './popular-bets-module-header.component.html',\n styleUrls: ['./popular-bets-module-header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopularBetsModuleHeaderComponent {\n @Input() title: string;\n @Input() titleIconClass: string;\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\nimport { PopularBetsPodTheme } from '@frontend/sports/types/components/popular-bets';\n\nimport { PodEventsModel } from '../popular-bets.models';\n\n@Directive({\n selector: '[msPopularBetsPodBackground]',\n standalone: true,\n})\nexport class PopularBetsPodBackgroundDirective {\n @Input() pod!: PodEventsModel;\n\n @HostBinding('style.background')\n get background() {\n const { backgroundImage, backgroundStyle } = this.pod;\n return backgroundImage?.src ? 'none' : backgroundStyle || '';\n }\n\n @HostBinding('class')\n get themeClass() {\n const hasBackground = Boolean(this.pod.backgroundImage?.src || this.pod.backgroundStyle);\n const lightTheme = 'pod-light-theme';\n const darkTheme = 'pod-dark-theme';\n\n if (this.pod.podTheme === PopularBetsPodTheme.Light) return lightTheme;\n if (this.pod.podTheme === PopularBetsPodTheme.Dark) return darkTheme;\n if (hasBackground) return darkTheme;\n\n return 'pod-light-theme';\n }\n}\n","@if (!isEpcotEnabled()) {\n @if (!showOptionPick()) {\n \n }\n
\n @if (logoDetails()) {\n \n }\n
\n {{ selectionInfo() }}\n @if (!showSelectionInfo) {\n
\n {{ eventTitle() }} |\n \n
\n }\n
\n
\n \n} @else {\n
\n
\n @if (logoDetails()) {\n \n }\n
\n {{ selectionInfo() }}\n @if (!showSelectionInfo) {\n {{ eventTitle() }}\n }\n
\n
\n \n
\n}\n\n\n @if (showOptionPick() && option()) {\n \n @if (!(optionGroup().online && option().online)) {\n \n } @else {\n
\n \n
\n }\n \n }\n
\n","import { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Signal, computed, input } from '@angular/core';\n\nimport { PopularBetsOptionTeamInfo } from '@cds/betting-offer/domain-specific/popular-bets';\nimport { EventOption, EventOptionGroup } from '@frontend/sports/betting-offer/feature/model';\nimport { ShortNameModule } from '@frontend/sports/betting-offer/feature/short-team-names';\nimport { FontResizerComponent } from '@frontend/sports/common/core/feature/font-resizer';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { NativePriceFormatterPipe } from '@frontend/sports/odds/feature/native-price';\nimport { TrackingSource } from '@frontend/sports/tracking/feature';\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\nimport { EventNameMapperService } from '../../event-details-common/event-name-mapper.service';\nimport { GridModule } from '../../grid/grid.module';\nimport { EventPickComponent } from '../../option-pick/event-pick.component';\nimport { PopularBetsPodEventLogoComponent } from '../popular-bets-pod-event-logo/popular-bets-pod-event-logo.component';\nimport { PopularBetsPodEventLogoService } from '../popular-bets-services/popular-bets-pod-event-logo.service';\nimport { PopularBetsPodEventParticipantService } from '../popular-bets-services/popular-bets-pod-event-participant.service';\nimport { PopularBetsPodOptionService } from '../popular-bets-services/popular-bets-pod-option.service';\n\n@Component({\n standalone: true,\n imports: [\n NgTemplateOutlet,\n FontResizerComponent,\n GridModule,\n EventPickComponent,\n PopularBetsPodEventLogoComponent,\n IconCustomComponent,\n NativePriceFormatterPipe,\n ],\n selector: 'ms-popular-bets-pod-event',\n templateUrl: './popular-bets-pod-event.component.html',\n styleUrls: ['./popular-bets-pod-event.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopularBetsPodEventComponent {\n @HostBinding('class') className = 'popular-bets-pod-event-connector';\n @HostBinding('class.odds-selection-hidden') get isOddsSelectionHidden(): boolean {\n return !this.showOptionPick();\n }\n\n event = input.required();\n showOptionPick = input.required();\n tracking = input.required();\n isEpcotEnabled = input.required();\n podOptionTeamInfo = input.required();\n\n private showOpponent = this.podOptionService.getOpponentEnabledByPodType(PopularBetsPodTypes.Parlay);\n private showMarketName = this.podOptionService.getMarketNameEnabledByPodType(PopularBetsPodTypes.Parlay);\n\n constructor(\n private eventNameMapper: EventNameMapperService,\n private eventLogoService: PopularBetsPodEventLogoService,\n private participantService: PopularBetsPodEventParticipantService,\n private podOptionService: PopularBetsPodOptionService,\n ) {}\n\n optionGroup: Signal = computed(() => this.event().optionGroups[0] ?? null);\n option: Signal = computed(() => this.optionGroup()?.options[0] ?? null);\n logoDetails = computed(() => {\n const option = this.option();\n if (option) {\n return this.eventLogoService.getLogoDetailsForPodEvent(option, this.event(), PopularBetsPodTypes.Parlay, this.podOptionTeamInfo());\n }\n return null;\n });\n\n opponentParticipant = computed(() => {\n const option = this.option();\n if (option) {\n return this.participantService.getOpponentParticipantFromOption(this.option()!, this.event(), this.podOptionTeamInfo());\n }\n return undefined;\n });\n\n eventTitle = computed(() => this.eventNameMapper.map(this.event(), false, ShortNameModule.PopularBets));\n\n get showSelectionInfo(): boolean {\n return this.showOpponent || this.showMarketName;\n }\n\n selectionInfo = computed(() => {\n const currentOption = this.option();\n if (!currentOption) {\n return '';\n }\n\n return this.podOptionService.getSelection(\n this.event(),\n currentOption.name,\n this.eventTitle(),\n PopularBetsPodTypes.Parlay,\n this.opponentParticipant(),\n );\n });\n}\n","@if (isEpcotEnabled) {\n
\n @if (pod.eventStartDate) {\n \n }\n @if (pod.title) {\n
{{ pod.title }}
\n }\n
\n} @else {\n @if (pod.counter || pod.sport) {\n
\n @if (pod.sport) {\n
\n \n {{ pod.sport.name }}\n
\n }\n @if (pod.counter) {\n
\n {{ pod.counter }}\n {{ sitecorePopularBetsConfig.messages?.BetCounter }}\n
\n }\n
\n }\n}\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\nimport { TimerModule } from '../../timers/timer.module';\nimport { PodEventsModel } from '../popular-bets.models';\n\n@Component({\n selector: 'ms-popular-bets-pod-header',\n standalone: true,\n templateUrl: './popular-bets-pod-header.component.html',\n styleUrl: './popular-bets-pod-header.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass, TimerModule, IconCustomComponent],\n})\nexport class PopularBetsPodHeaderComponent {\n @Input() isEpcotEnabled: boolean;\n @Input() pod: PodEventsModel;\n\n constructor(public sitecorePopularBetsConfig: SitecorePopularBetsConfig) {}\n}\n","
\n \n @if (pod.summary) {\n \n }\n
\n \n
\n
\n
\n @if (pod.showMoreLessButtonVisible) {\n \n }\n\n \n
\n","import { SlicePipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, HostBinding, Input, OnChanges, SimpleChanges } from '@angular/core';\n\nimport { interpolateDoubleBracesString } from '@frontend/sports/common/core/utils/string';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { RxFor } from '@rx-angular/template/for';\n\nimport { getMinListHeight } from '../popular-bets-heights';\nimport { PopularBetsPodAddToBetslipComponent } from '../popular-bets-pod-add-to-betslip/popular-bets-pod-add-to-betslip.component';\nimport { PopularBetsPodEventComponent } from '../popular-bets-pod-event/popular-bets-pod-event.component';\nimport { PopularBetsPodHeaderComponent } from '../popular-bets-pod-header/popular-bets-pod-header.component';\nimport { PopularBetsPodShowMoreComponent } from '../popular-bets-pod-show-more/popular-bets-pod-show-more.component';\nimport { PopularBetsPodSummaryComponent } from '../popular-bets-pod-summary/popular-bets-pod-summary.component';\nimport { PopularBetsExpandCollapseService } from '../popular-bets-services/popular-bets-expand-collapse.service';\nimport { PopularBetsPodEventParticipantService } from '../popular-bets-services/popular-bets-pod-event-participant.service';\nimport { IPodHeightConfigModel, PickSelectionType, PodEventsModel } from '../popular-bets.models';\n\n@Component({\n selector: 'ms-popular-bets-pod',\n standalone: true,\n imports: [\n RxFor,\n PopularBetsPodEventComponent,\n PopularBetsPodShowMoreComponent,\n PopularBetsPodAddToBetslipComponent,\n PopularBetsPodHeaderComponent,\n PopularBetsPodSummaryComponent,\n SlicePipe,\n ],\n templateUrl: './popular-bets-pod.component.html',\n styleUrl: './popular-bets-pod.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PopularBetsPodComponent implements OnChanges {\n @HostBinding('class') className = 'popular-bets-pod';\n @Input() isEpcotEnabled: boolean;\n @Input() pod: PodEventsModel;\n @Input() visiblePodLegs: number;\n minHeight: number;\n pickSelectionType = PickSelectionType;\n private minPodHeightConfig: IPodHeightConfigModel = {\n rows: 5,\n isEpcotEnabled: false,\n podType: PopularBetsPodTypes.Parlay,\n isAllPodAreSameType: false,\n showOptionPick: false,\n };\n\n constructor(\n private popularBetsExpandCollapseService: PopularBetsExpandCollapseService,\n private participantService: PopularBetsPodEventParticipantService,\n ) {}\n\n ngOnChanges({ pod, visiblePodLegs }: SimpleChanges): void {\n if (visiblePodLegs?.currentValue !== visiblePodLegs?.previousValue) {\n this.pod.visibleOptionsLimit = visiblePodLegs.currentValue;\n }\n\n if (pod && pod.currentValue !== pod.previousValue) {\n this.updateFixtureParticipants();\n }\n\n this.minPodHeightConfig = {\n rows: this.pod.visibleOptionsLimit,\n isEpcotEnabled: this.isEpcotEnabled,\n showOptionPick: this.pod.isOptionPickEnabled,\n podType: this.pod.podType,\n isAllPodAreSameType: this.pod.isAllPodAreSameType,\n };\n this.minHeight = getMinListHeight(this.minPodHeightConfig);\n }\n\n onShowMoreLessButtonToggle(expand: boolean): void {\n this.pod.expand = expand;\n this.pod.visibleOptionsLimit = expand ? this.pod.eventsCount : this.pod.defaultNoOfLegs;\n\n this.popularBetsExpandCollapseService.setExpandCollapse(expand, this.pod.visibleOptionsLimit);\n }\n\n trackByEvent(_: number, event: GridEvent): string {\n return `${event.id}-${event.optionGroups[0].options[0].id}`;\n }\n\n getTrackingDetails(type: string, index: number, length: number) {\n return {\n ...this.pod.tracking,\n betDetails: interpolateDoubleBracesString(this.pod.tracking.betDetails, { type, index, length }),\n };\n }\n\n updateFixtureParticipants() {\n this.pod.events.forEach((event) => {\n event.participants = this.participantService.mapEventWithFilteredParticipants(event);\n });\n }\n}\n","@if (viewModel$ | async; as viewModel) {\n
\n \n @if (viewModel.showHeader) {\n \n }\n \n
    \n
  • \n @if (pod.backgroundImage?.src) {\n \n }\n @if (shouldShowBetBuilderPod(pod)) {\n \n } @else {\n \n }\n
  • \n
\n \n
\n}\n","import { AsyncPipe, NgOptimizedImage } from '@angular/common';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, OnDestroy, OnInit, ViewChild, ViewContainerRef } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HAMMER_GESTURE_CONFIG } from '@angular/platform-browser';\n\nimport { FixtureFactory } from '@frontend/sports/betting-offer/feature/fixture-factories';\nimport { EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport { CDNCachingConfig, PopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { ScrollAdapterComponent, ScrollSpeed } from '@frontend/sports/common/core/feature/scroll-adapter';\nimport { interpolateDoubleBracesString } from '@frontend/sports/common/core/utils/string';\nimport { EventSubscription } from '@frontend/sports/event-subscription/feature/base-subscription';\nimport { EventSubscriptionService } from '@frontend/sports/event-subscription/feature/event-subscription';\nimport { EventFactory } from '@frontend/sports/grid/core/feature/factories';\nimport { GridEvent } from '@frontend/sports/grid/core/feature/model';\nimport { TrackingSource } from '@frontend/sports/tracking/feature';\nimport { BetBuilderBadgePosition, PopularBetsPodTypes } from '@frontend/sports/types/components/popular-bets';\nimport { WidgetContext, WidgetPage, WidgetType } from '@frontend/sports/types/components/widget';\nimport { PopularMultiBets, PopularMultiBetsPayload } from '@frontend/sports/types/components/widget/types';\nimport { DeviceService } from '@frontend/vanilla/core';\nimport { RxFor } from '@rx-angular/template/for';\nimport { cloneDeep, debounce, minBy } from 'lodash-es';\nimport { BehaviorSubject, Observable, Subject, asapScheduler, combineLatest, forkJoin, of } from 'rxjs';\nimport { filter, map, shareReplay } from 'rxjs/operators';\n\nimport { BetBuilderMarket } from '../../betbuilder/model/bet-builder.model';\nimport { BetBuilderMapperService } from '../../betbuilder/services/betbuilder-mapper.service';\nimport { EpcotConfigService } from '../../common/epcot-config.service';\nimport { WidgetContextService } from '../../widget/common/widget-context.service';\nimport { WidgetComponent } from '../../widget/core/widget-registry.service';\nimport { PopularBetsBetBuilderPodComponent } from '../popular-bets-bet-builder-pod/popular-bets-bet-builder-pod.component';\nimport { PopularBetsHammerGestureConfigProvider } from '../popular-bets-gesture-provider';\nimport { getMinPodHeight, getMinPodListWidth } from '../popular-bets-heights';\nimport { PopularBetsModuleHeaderComponent } from '../popular-bets-module-header/popular-bets-module-header.component';\nimport { PopularBetsPodBackgroundDirective } from '../popular-bets-pod-background/popular-bets-pod-background.directive';\nimport { PopularBetsPodComponent } from '../popular-bets-pod/popular-bets-pod.component';\nimport { PopularBetsExpandCollapseService } from '../popular-bets-services/popular-bets-expand-collapse.service';\nimport { PopularBetsPodEventLogoService } from '../popular-bets-services/popular-bets-pod-event-logo.service';\nimport { PopularBetsPodEventParticipantService } from '../popular-bets-services/popular-bets-pod-event-participant.service';\nimport { PopularBetsPodOptionService } from '../popular-bets-services/popular-bets-pod-option.service';\nimport { IExpandCollapse, IPodHeightConfigModel, IPreCreatedOption, MultiBetsViewModel, PodEventsModel } from '../popular-bets.models';\n\n@Component({\n standalone: true,\n imports: [\n AsyncPipe,\n RxFor,\n PopularBetsModuleHeaderComponent,\n PopularBetsPodComponent,\n ScrollAdapterComponent,\n PopularBetsBetBuilderPodComponent,\n PopularBetsPodBackgroundDirective,\n NgOptimizedImage,\n ],\n selector: 'ms-popular-multi-bets-widget',\n templateUrl: './popular-multi-bets-widget.component.html',\n styleUrls: ['popular-multi-bets-widget.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n PopularBetsExpandCollapseService,\n PopularBetsPodOptionService,\n PopularBetsPodEventParticipantService,\n PopularBetsPodEventLogoService,\n {\n provide: HAMMER_GESTURE_CONFIG,\n useClass: PopularBetsHammerGestureConfigProvider,\n },\n ],\n})\nexport class PopularMultiBetsWidgetComponent extends WidgetComponent implements OnDestroy, OnInit {\n @HostBinding('class') className = 'popular-multi-bets popular-bets-var-scope';\n @ViewChild(ScrollAdapterComponent) scrollComponent?: ScrollAdapterComponent;\n @ViewChild('badgeContainer', { read: ViewContainerRef }) container: ViewContainerRef;\n\n readonly isEpcotEnabled = this.epcotService.isEnabled();\n private minPodHeightConfig: IPodHeightConfigModel = {\n rows: 5,\n isEpcotEnabled: this.isEpcotEnabled,\n showOptionPick: false,\n podType: PopularBetsPodTypes.Parlay,\n isAllPodAreSameType: false,\n isAnyPodHasSummary: false,\n };\n\n readonly viewModel$ = new BehaviorSubject({\n title: '',\n titleIconClass: '',\n payload: [],\n minHeight: getMinPodHeight(this.minPodHeightConfig),\n minWidth: getMinPodListWidth(3),\n showHeader: false,\n });\n\n private eventSubscription?: EventSubscription;\n\n private readonly shouldIncludePayload = this.cdnCachingConfig.widgets.includes(WidgetType.PopularMultiBets);\n\n private config$ = this.popularBetsConfig.whenReady.pipe(\n map(() => this.popularBetsConfig),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n\n visiblePodLegs: number;\n defaultNoOfLegs = 0;\n isOptionPickEnabled = false;\n badgePosition = BetBuilderBadgePosition.OnModule;\n podType = PopularBetsPodTypes.Parlay;\n isAllPodAreSameType = false;\n isAnyPodHasSummary = false;\n isPodExpanded = false;\n itemsRendered = new Subject();\n scrollSpeed: ScrollSpeed;\n\n constructor(\n private popularBetsConfig: PopularBetsConfig,\n private eventSubscriptionService: EventSubscriptionService,\n private changeDetectorRef: ChangeDetectorRef,\n private context: WidgetContextService,\n private cdnCachingConfig: CDNCachingConfig,\n private eventFactory: EventFactory,\n private fixtureFactory: FixtureFactory,\n private epcotService: EpcotConfigService,\n private popularBetsExpandCollapseService: PopularBetsExpandCollapseService,\n private deviceService: DeviceService,\n private betBuilderMapperService: BetBuilderMapperService,\n private podOptionService: PopularBetsPodOptionService,\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.expandCollapsePod();\n this.itemsRendered.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => {\n this.scrollComponent?.setArrows();\n this.scrollSpeed = new ScrollSpeed({ default: 'slow' });\n });\n }\n\n protected override onData(data: PopularMultiBetsPayload): void {\n if (!data?.pods?.length) {\n this.getData()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((response) => this.renderData(response));\n } else {\n this.renderData(data);\n }\n }\n\n private renderData(data: PopularMultiBetsPayload) {\n this.isOptionPickEnabled = data.pods.some((p) => p.enableSinglePickSelection);\n this.isAnyPodHasSummary = data.pods.some((p) => p.summary);\n this.badgePosition = data.betBuilderBadgePosition;\n\n this.viewModel$.next({\n ...this.viewModel$.value,\n titleIconClass: data.titleIconClass ?? '',\n showHeader: !!data.title || !!data.titleIconClass,\n minWidth: getMinPodListWidth(data.pods.length),\n });\n\n if (data?.pods?.some((pod) => pod.fixtures.length)) {\n this.hasData = true;\n const firstPodType = data.pods[0].podType;\n this.isAllPodAreSameType = data.pods.every((p) => p.podType === firstPodType);\n this.podType = this.isAllPodAreSameType ? firstPodType : PopularBetsPodTypes.Parlay;\n\n if (this.podType === PopularBetsPodTypes.SGP && data.betBuilderBadgePosition === BetBuilderBadgePosition.OnModule) {\n this.loadBetBuilderBadgeComponent();\n }\n\n this.prepareViewModel(data).subscribe((pods) => {\n this.defaultNoOfLegs = pods[0].defaultNoOfLegs;\n this.subscribe(pods);\n this.minPodHeightConfig = {\n ...this.minPodHeightConfig,\n rows: pods[0].defaultNoOfLegs,\n showOptionPick: this.isOptionPickEnabled,\n podType: this.podType,\n isAllPodAreSameType: this.isAllPodAreSameType,\n isAnyPodHasSummary: this.isAnyPodHasSummary,\n };\n\n this.viewModel$.next({\n ...this.viewModel$.value,\n payload: pods,\n title: this.getPodTitle(pods[0], data.title),\n minHeight: getMinPodHeight(this.minPodHeightConfig),\n });\n this.setWidgetLoaded();\n this.collapsePods();\n });\n } else {\n this.hasData = false;\n this.setWidgetLoaded();\n this.logEmptyData();\n }\n }\n\n override getContext(): Partial {\n const context = { ...super.getContext() };\n\n return !this.shouldIncludePayload ? context : { ...context, shouldIncludePayload: this.shouldIncludePayload };\n }\n\n trackByPod(_: number, pod: PodEventsModel): string | undefined {\n return pod.podId;\n }\n\n private getData(): Observable {\n return this.context.getWidget(this.getContext(), false).pipe(\n filter(({ payload }) => payload !== undefined),\n map(({ payload }) => payload as PopularMultiBetsPayload),\n );\n }\n\n private prepareViewModel(data: PopularMultiBetsPayload): Observable {\n const biggestPod = Math.max(...data.pods.map((p) => p.fixtures.length));\n const podEventsObservables = data.pods.map((pod) => {\n if (pod.podType === PopularBetsPodTypes.SGP && pod.preCreatedOffer) {\n return of(pod.preCreatedOffer.map((offer) => this.fixtureFactory.create(offer.sourceFixture, offer.sourceId)));\n }\n\n return this.eventFactory.create(pod.fixtures);\n });\n\n return combineLatest([forkJoin(podEventsObservables), this.config$]).pipe(\n map(([eventsArray, config]) => {\n return eventsArray.map((events, index) => {\n return this.preparePodViewModelPayload(events, index, data.pods[index], config, biggestPod, data.visibleOptionsLimit);\n });\n }),\n );\n }\n\n private getBetBuilderPodLength(event: GridEvent, preCreatedOptions: IPreCreatedOption[]): number {\n if (preCreatedOptions?.length > 0) {\n return preCreatedOptions.length;\n }\n if (event.optionGroups) {\n return event.optionGroups[0]?.name?.split(';').length;\n }\n\n return 0;\n }\n\n private preparePodViewModelPayload(\n events: GridEvent[],\n position: number,\n pod: PopularMultiBets,\n config: PopularBetsConfig,\n biggestPod: number,\n visibleOptionsLimit: number,\n ): PodEventsModel {\n const preCreatedMarket = this.mapPreCreatedMarket(pod);\n const preCreatedOptions = this.getPreCreatedOptions(pod);\n\n const eventsCount = pod.podType === PopularBetsPodTypes.SGP ? this.getBetBuilderPodLength(events[0], preCreatedOptions) : events.length;\n const defaultLegs = Math.min(Math.max(eventsCount, biggestPod), visibleOptionsLimit);\n\n return {\n title: pod.title,\n events,\n counter: pod.counter > config.minCountForShowingCounter ? pod.counter : 0,\n sport: (pod.sportIds || pod.competitionIds) && this.isHomeOrMultiSportsLobby() ? events[0].sport : undefined,\n expand: false,\n visibleOptionsLimit: defaultLegs,\n showMoreLessButtonVisible: eventsCount > defaultLegs,\n showOptionPick: pod.enableSinglePickSelection,\n eventsCount,\n podId: pod.podId,\n tracking: this.getTrackingDetail(position, pod.podType, events.length),\n eventStartDate: this.getEarliestEventStartDate(events),\n defaultNoOfLegs: defaultLegs,\n isOptionPickEnabled: this.isOptionPickEnabled,\n podType: pod.podType,\n isAllPodAreSameType: this.isAllPodAreSameType,\n preCreatedMarket,\n preCreatedOptions,\n preCreatedOffer: pod.preCreatedOffer?.[0],\n summary: pod.summary,\n betBuilderBadgePosition: this.badgePosition,\n backgroundStyle: pod.backgroundStyle,\n enableLogoHeader: pod.enableLogoHeader,\n backgroundImage: pod.backgroundImage,\n podTheme: pod.podTheme,\n titleColor: pod.titleColor,\n podOptionTeamInfo: pod.popularBetsOptionTeamInfo,\n };\n }\n\n private getTrackingDetail(position: number, podType: PopularBetsPodTypes, noOfEvents: number): TrackingSource {\n const betDetailsBase =\n podType == PopularBetsPodTypes.SGP ? 'popular bet builder module - {{length}}' : 'popular bets - {{type}} - {{index}}p - {{length}}';\n\n return {\n source: '',\n betDetails: betDetailsBase,\n variant: noOfEvents.toString(),\n position,\n };\n }\n\n private subscribe(podPayload: PodEventsModel[]): void {\n this.unsubscribe();\n\n const callbacks = podPayload.flatMap((pod, podIndex) =>\n pod.events.map((event) => ({\n event,\n callback: debounce(this.getCallback(podIndex, event.id), 100),\n })),\n );\n\n if (callbacks.length) {\n this.eventSubscription = this.eventSubscriptionService.subscribe(callbacks);\n }\n }\n\n private getCallback(podIndex: number, eventId: string): (updatedEvent: EventModel) => void {\n return (updatedEvent) => {\n if (!updatedEvent) {\n return;\n }\n\n const currentPod = this.viewModel$.value.payload[podIndex];\n\n const eventIndex = currentPod.events.findIndex(({ id }) => id === eventId);\n if (eventIndex === -1) {\n return;\n }\n\n currentPod.events[eventIndex] = updatedEvent;\n this.viewModel$.value.payload[podIndex] = cloneDeep(currentPod);\n\n this.viewModel$.next({\n ...this.viewModel$.value,\n });\n this.changeDetectorRef.detectChanges();\n };\n }\n\n private isHomeOrMultiSportsLobby(): boolean {\n const contextPage = this.context.getContext().page;\n return contextPage === WidgetPage.HomeLobby || contextPage === WidgetPage.MultiSportsLobby;\n }\n\n private getEarliestEventStartDate(events: GridEvent[]): Date | undefined {\n return minBy(events, (e: GridEvent) => e.startDate)?.startDate;\n }\n\n private unsubscribe(): void {\n this.eventSubscription?.unsubscribe();\n }\n\n private getPodTitle(pod: PodEventsModel, title: string | undefined): string {\n return interpolateDoubleBracesString(title, { sport: this.isHomeOrMultiSportsLobby() ? '' : pod.events[0].sport.name });\n }\n\n private expandCollapsePod() {\n this.popularBetsExpandCollapseService\n .getExpandCollapse()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((data: IExpandCollapse) => {\n if (!data) return;\n\n this.visiblePodLegs = data.noOfLegs;\n this.isPodExpanded = data.isExpanded;\n this.minPodHeightConfig = {\n ...this.minPodHeightConfig,\n rows: this.visiblePodLegs,\n };\n this.viewModel$.next({\n ...this.viewModel$.value,\n minHeight: getMinPodHeight(this.minPodHeightConfig),\n });\n this.changeDetectorRef.detectChanges();\n });\n }\n\n collapsePods() {\n if (this.isPodExpanded) {\n this.popularBetsExpandCollapseService.setExpandCollapse(false, this.defaultNoOfLegs);\n }\n }\n\n async loadBetBuilderBadgeComponent() {\n const { BetBuilderBadgeComponent } = await import('../../betbuilder/components/badge/bet-builder-badge/betbuilder-badge.component');\n this.container.clear();\n const badgeComponent = this.container.createComponent(BetBuilderBadgeComponent);\n badgeComponent.changeDetectorRef.detectChanges();\n }\n\n onPodScroll() {\n this.collapsePods();\n }\n\n onPodSwipe() {\n if (this.deviceService.isMobile) {\n // TODO: More improvements in swipe behavior is planned in future. Need to identify other ways to wait till completion of scroll-snap\n // And the story is planned for the same to reduce the collapse time\n asapScheduler.schedule(() => this.collapsePods(), 500);\n }\n }\n\n shouldShowBetBuilderPod(pod: PodEventsModel): boolean {\n return pod.podType === PopularBetsPodTypes.SGP && pod.eventsCount > 0;\n }\n\n mapPreCreatedMarket(pod: PopularMultiBets): BetBuilderMarket | undefined {\n if (pod.podType === PopularBetsPodTypes.SGP && pod.preCreatedOffer?.length) {\n //Currently only one option can be configured for pod, change needed when we support multiple fixture and multiple options\n const { precreatedMarketsInfo } = pod.preCreatedOffer[0];\n if (precreatedMarketsInfo?.length) {\n const preCreated = this.betBuilderMapperService.mapFixture(pod.preCreatedOffer[0]);\n\n return (preCreated?.ambassadorsMarkets ?? []).concat(preCreated?.promotedMarkets ?? [], preCreated?.themedTabMarkets ?? [])[0];\n }\n }\n\n return undefined;\n }\n\n getPreCreatedOptions(pod: PopularMultiBets): IPreCreatedOption[] {\n if (pod.podType === PopularBetsPodTypes.SGP && pod.preCreatedOffer?.length) {\n //Currently only one option can be configured for pod, change needed when we support multiple fixture and multiple options\n const { precreatedGroupedInfo, sourceFixture } = pod.preCreatedOffer[0];\n if (precreatedGroupedInfo?.length) {\n const precreatedOptions = precreatedGroupedInfo[0].options;\n\n return precreatedOptions.flatMap((precreatedOption) =>\n sourceFixture.optionMarkets.flatMap((optionMarket) =>\n optionMarket.options\n .filter((option) => option.id === precreatedOption.id)\n .map((option) => {\n return {\n name: this.podOptionService.getOptionMarketName(\n optionMarket.name.value,\n option.name.value,\n PopularBetsPodTypes.SGP,\n ),\n optionId: option.id,\n };\n }),\n ),\n );\n }\n }\n\n return [];\n }\n\n ngOnDestroy(): void {\n this.unsubscribe();\n }\n}\n","import { Injectable, Injector } from '@angular/core';\n\nimport { PopularBetsConfig, SitecorePopularBetsConfig } from '@frontend/sports/common/client-config-data-access';\nimport { WidgetType } from '@frontend/sports/types/components/widget';\nimport { OnFeatureInit } from '@frontend/vanilla/core';\nimport { combineLatest, firstValueFrom } from 'rxjs';\n\nimport { WidgetRegistryService } from '../../widget/core/widget-registry.service';\nimport { PopularMultiBetsWidgetComponent } from './popular-multi-bets-widget.component';\n\n@Injectable({ providedIn: 'root' })\nexport class PopularMultiBetsWidgetRegistration implements OnFeatureInit {\n constructor(\n private widgetRegistry: WidgetRegistryService,\n private injector: Injector,\n private sitecorePopularBetsConfig: SitecorePopularBetsConfig,\n private popularBetsConfig: PopularBetsConfig,\n ) {}\n\n async onFeatureInit(): Promise {\n await firstValueFrom(combineLatest([this.sitecorePopularBetsConfig.whenReady, this.popularBetsConfig.whenReady]));\n this.widgetRegistry.registerLazy(WidgetType.PopularMultiBets, PopularMultiBetsWidgetComponent, this.injector);\n }\n}\n","import { runOnFeatureInit } from '@frontend/vanilla/core';\n\nimport { PopularMultiBetsWidgetRegistration } from './widget-registration.service';\n\nexport function provide() {\n return [runOnFeatureInit(PopularMultiBetsWidgetRegistration)];\n}\n"],"names":["ɵɵelement","l","ɵɵproperty","ctx_r0","logoDetails","participantLogo","sportId","showLogoColor","fallbackLogoUrl","ɵɵpropertyInterpolate1","ɵɵelementStart","ɵɵelementEnd","ɵɵadvance","bulletIconName","bulletIconSize","PopularBetsPodEventLogoComponent","constructor","input","required","messages","inject","SitecorePopularBetsConfig","className","computed","logoType","hostClassName","BulletIconName","BulletIconSize","selectors","hostVars","hostBindings","rf","ctx","ɵɵclassMap","M","ɵɵtemplate","PopularBetsPodEventLogoComponent_Case_0_Template","PopularBetsPodEventLogoComponent_Case_1_Template","PopularBetsPodEventLogoComponent_Case_2_Template","PopularBetsPodEventLogoComponent_Case_3_Template","PopularBetsPodEventLogoComponent_Case_4_Template","PopularBetsPodEventLogoComponent_Case_5_Template","ɵɵconditional","tmp_0_0","ParticipantImageComponent","IconCustomComponent","NgOptimizedImage","styles","changeDetection","_PopularBetsPodEventLogoComponent","PopularBetsPodOptionService","sitecore","sitecorePopularBetsConfig","eventNameMapper","popularBetsConfig","opponentConfigWithLowerCaseKeys","marketNameConfigWithLowerCaseKeys","initializeConfigWithLowerCaseKeys","isOpponentNameEnabled","isMarketNameEnabled","getOptionOpponentName","event","optionName","opponentParticipant","isTournamentGame","name","getOpponentName","isAwayTeamOption","type","EventParticipantType","Home","indicator","viewType","globalMessages","AwayIndicator","OpponentIndicator","opponentParticipantName","getParticipantName","ShortNameModule","PopularBets","item","Object","fromEntries","entries","map","key","value","toLowerCase","getOpponentEnabledByPodType","podType","getMarketNameEnabledByPodType","getOpponentSelection","eventTitle","optionEventTitle","getSelection","showMarketName","showOpponent","optionMarketName","optionGroups","optionOpponent","filter","Boolean","join","getOptionMarketName","marketName","ɵɵinject","Sitecore","EventNameMapperService","PopularBetsConfig","factory","ɵfac","_PopularBetsPodOptionService","ɵɵtext","ɵɵclassProp","last_r2","ctx_r2","shouldShowConnector","option_r1","sport","id","ɵɵtextInterpolate","getSelectionInfo","PopularBetsBetBuilderOptionsComponent","podOptionService","options","visibleOptionsLimit","isEpcotEnabled","showMoreLessButtonVisible","totalEventCount","trackOption","index","option","ɵɵdirectiveInject","PopularBetsBetBuilderOptionsComponent_div_0_Template","F","ɵɵpipeBind3","RxFor","SlicePipe","_PopularBetsBetBuilderOptionsComponent","tmp_2_0","participants","image","ɵɵstyleProp","titleColor","ɵɵtextInterpolate1","logoSeparatorText","tmp_7_0","startDate","PopularBetsBetBuilderPodHeaderComponent","showBadge","showLogo","hasLogo","every","participant","_a","_b","isEmpty","logo","hasJersey","jersey","LogoSeperator","ngOnInit","loadSGPBadgeComponent","__async","SGPBadgeComponent","container","clear","createComponent","viewQuery","ViewContainerRef","be","_e","PopularBetsBetBuilderPodHeaderComponent_ng_template_1_Template","ɵɵtemplateRefExtractor","PopularBetsBetBuilderPodHeaderComponent_Conditional_3_Template","PopularBetsBetBuilderPodHeaderComponent_Conditional_4_Template","PopularBetsBetBuilderPodHeaderComponent_Conditional_6_Template","TimerModule","EventTimerComponent","_PopularBetsBetBuilderPodHeaderComponent","POD_HEIGHTS_DEFAULT","HEADER","SUMMARY_TEXT","SUMMARY_TEXT_WITH_ODDS","LEG_WITH_ODDS","LEG","GAP_BETWEEN_LEG","GAP_BETWEEN_LEG_ODDS","ADD_TO_BETSLIP","POD_HEIGHTS_EPCOT_PARLAY","POD_HEIGHTS_EPCOT","getPodHeights","config","isAllPodAreSameType","showOptionPick","isAnyPodHasSummary","podHeightsConfig","selectedPodHeights","__spreadValues","__spreadProps","Math","max","SGP","Parlay","getMinPodHeight","minimumListHeight","getMinListHeight","rows","totalGapHeight","getMinPodListWidth","numberOfPods","DEFAULT_POD_WIDTH","DEFAULT_POD_LIST_GAP","focusEvents","mouseEvents","wheelEvents","inputEvents","keyboardEvents","vrEvents","mSGestureEvents","printEvents","networkEvents","audioEvents","compositionEvents","touchEvents","globalEvents","websocketEvents","xhrEvents","windowEvents","allEvents","convenienceMethods","zoneGlobalDisableConfigurationsKeys","zoneGlobalEventsConfigurationsKeys","zoneGlobalSettingsConfigurationsKeys","zoneRuntimeConfigurationsKeys","zoneTestDisableConfigurationsKeys","zoneTestSettingsConfigurationsKeys","zoneDisable","zoneSymbol","assertZoneConfig","addDisableFlag","prop","addSymbolFlag","addArraySymbolFlag","eventNames","w","reduceToObject","methodsArray","createZoneFlagsConfigurator","cfg","configProps","flag","zoneConfigObj","zonePatchedEvents","unpatchEventListener","element","eventListeners","addEventListener","getZoneUnPatchedApi","listeners","listener","RxUnpatch","_RxUnpatch","host","__publicField","Subscription","BehaviorSubject","events","__ngFactoryType__","ElementRef","ɵɵdefineDirective","ɵɵNgOnChangesFeature","AddToBetslipState","PickSelectionType","ctx_r1","ɵɵelementContainer","PopularBetsPodAddToBetslipComponent_Conditional_0_Conditional_2_ng_container_0_Template","returnsText_r3","totalOdds","PopularBetsPodAddToBetslipComponent_Conditional_0_Conditional_3_ng_container_2_Template","ɵɵtextInterpolate2","buttonProperties","text","ɵɵlistener","ɵɵrestoreView","_r1","ɵɵnextContext","ɵɵresetView","onButtonClick","PopularBetsPodAddToBetslipComponent_Conditional_0_Conditional_1_Template","PopularBetsPodAddToBetslipComponent_Conditional_0_Conditional_2_Template","PopularBetsPodAddToBetslipComponent_Conditional_0_Conditional_3_Template","ɵɵpureFunction2","_c0","state","ɵɵpureFunction0","_c1","isButtonLocked","defaultButtonOverride","ɵɵtextInterpolate3","ɵɵpipeBind2","stake","StakeReturns","winnings","PopularBetsPodAddToBetslipComponent","summaryCalculatorService","userService","betslipConnector","modalDialog","pickSource","strategy","multiReturnsMessageConfig","bettingSettingsService","clickAddToBetslip","Subject","isAllPicksAddedToBetslip","betBuilderPickIds","signal","Default","AddToBetslip","ngZone","NgZone","scheduleOpenDialog$","schedule","openDialog","ClearBetslipComponent","settings","cssClass","scope","patchZone","scheduleAddToBetslip$","tracking","getPickTracking","isBetBuilder","addBetBuilderPickToBetslip","podEvents","betBuilderMarket","preCreatedOffer","addToBetslip","selections","scheduleRemoveFromBetslip$","removeBetBuilderPick","longId","removeFromBetslip","addToBetslip$","removeFromBetslip$","partition","merge","pipe","canBeAdded","length","exhaustMap","subscribe","ngOnChanges","changes","firstChange","setSelections","calculateSummary","updateButtonState","settingsInitialized$","bettingSettings$","first","tap","bettingSettings","getDefaultStake","defaultStake","subscribeForPickChange","Locked","isBetBuilderOptions","betBuilderOptions","isBetBuilderMarkets","precreatedMarketsInfo","preCreatedOptionOdds","NativePrice","fromNativePrice","precreatedGroupedInfo","builderOptionPricing","odds","isGroupedMarketSuspened","_c","suspendedOptions","flatMap","og","o","online","isSuspendedOffer","some","vo","suspensionState","hasLiveOrLockedRestrictions","isAnyEventLive","live","isAnyMarketLocked","isAnyOptionLocked","Disabled","next","getBetBuilderPickIds","pickSelected$","getPicksSelected","pickSelectionSubscription","pick","isPickSelected","getBetBuilderPicks","betBuilderTradingV2FixtureId","picksTracking","get","betDetails","variant","contentPosition","position","toString","defaultStakes","currency","buttonState","getButtonState","set","getButtonText","_d","Selected","enableSinglePickSelection","AddedAllToBetslip","AddedToBetslip","AddAllToBetslip","getTotalOddsForGroup","calculateWinningsForGroup","getTotalOdds","t","nativePrice","calculateWinnings","optionGroup","ngOnDestroy","unsubscribe","complete","SummaryCalculatorService","UserService","BetslipConnectorService","ModalDialogService","PickSourceProvider","RxStrategyProvider","ReturnsMessageConfig","BettingSettingsService","P","inputs","standalone","features","ɵɵProvidersFeature","NativePriceFormatterPipe","provide","useClass","ModularPickSourceService","ɵɵStandaloneFeature","decls","vars","consts","template","PopularBetsPodAddToBetslipComponent_Conditional_0_Template","PopularBetsPodAddToBetslipComponent_ng_template_2_Template","ɵɵpipeBind1","NgClass","CurrencyPipe","NgTemplateOutlet","AsyncPipe","_PopularBetsPodAddToBetslipComponent","PopularBetsExpandCollapseService","triggerExpandCollapse$","setExpandCollapse","isExpanded","noOfLegs","getExpandCollapse","_PopularBetsExpandCollapseService","PopularBetsPodShowMoreComponent_Conditional_0_ng_container_1_Template","Z","showMoreHideButton_r1","PopularBetsPodShowMoreComponent_Conditional_1_ng_container_0_Template","_r2","onShowMoreLessButtonToggle","showMoreLessText","PopularBetsPodShowMoreComponent","popularBetsExpandCollapseService","changeDetectorRef","expandChange","EventEmitter","destroyRef","DestroyRef","waitTillTransition","getShowMoreLessText","delay","takeUntilDestroyed","data","totalCount","detectChanges","emit","interpolateDoubleBracesString","Hide","defaultCount","SeeAll","ChangeDetectorRef","outputs","PopularBetsPodShowMoreComponent_Conditional_0_Template","PopularBetsPodShowMoreComponent_Conditional_1_Template","PopularBetsPodShowMoreComponent_ng_template_2_Template","_PopularBetsPodShowMoreComponent","PopularBetsPodSummaryComponent","summary","_PopularBetsPodSummaryComponent","PopularBetsPodEventParticipantService","getOptionPlayerId","eventOption","offerSource","playerId","optionPlayerId","getOptionTeamId","optionTeamInfo","find","optionId","teamId","findParticipantById","isOpponent","isTeamIdMapped","getId","p","fixtureParticipantId","getOpponentParticipantFromOption","podOptionTeamInfo","optionTeamId","undefined","participantId","mapEventWithFilteredParticipants","source","_PopularBetsPodEventParticipantService","PopularBetsPodEventLogoService","imagesConfig","utilsService","epcotConfig","participantService","logosDict","logoConfigWithLowerCaseKeys","processConfigs","initializeLogoConfigWithLowerCaseKeys","preprocessCompetitionLogos","getLogoDetailsForPodEvent","logoConfigurationForPodType","isEnabled","getLogoDetailsByLogoType","logos","competitionId","dicRef","sportLogo","competitionLogos","getTeamLogoDetails","getCompetitionLogoDetails","getShieldIconDetails","getParticipantLogo","getCompetitionLogoUrl","format","participantImageUrl","ImageRootPath","Live","FallbackImage","EpcotDefault","league","parentLeagueId","src","ImagesConfig","UtilsService","EpcotConfig","providedIn","_PopularBetsPodEventLogoService","pod","W","$event","eventsCount","defaultNoOfLegs","PopularBetsBetBuilderPodComponent","minPodHeightConfig","eventLogoService","visiblePodLegs","currentValue","previousValue","updatePodEvent","getOptionGroups","updatePodHeightConfig","betBuilderBadgePosition","preCreatedOptions","preCreatedOption","group","existingOption","opt","optionNames","split","expand","getTrackingDetails","isOptionPickEnabled","minHeight","PopularBetsBetBuilderPodComponent_Conditional_2_Template","PopularBetsBetBuilderPodComponent_Conditional_6_Template","enableLogoHeader","preCreatedMarket","_PopularBetsBetBuilderPodComponent","import_hammerjs","Uo","$o","PopularBetsHammerGestureConfigProvider","HammerGestureConfig","swipeVelocity","overrides","swipe","direction","Hammer","DIRECTION_HORIZONTAL","velocity","inputClass","TouchMouseInput","_PopularBetsHammerGestureConfigProvider","titleIconClass","title","PopularBetsModuleHeaderComponent","PopularBetsModuleHeaderComponent_Conditional_0_Template","PopularBetsModuleHeaderComponent_Conditional_1_Template","_PopularBetsModuleHeaderComponent","PopularBetsPodBackgroundDirective","background","backgroundImage","backgroundStyle","themeClass","hasBackground","lightTheme","darkTheme","podTheme","xe","_PopularBetsPodBackgroundDirective","scoreboard","PopularBetsPodEventComponent_Conditional_0_Conditional_0_Template","PopularBetsPodEventComponent_Conditional_0_Conditional_2_Template","PopularBetsPodEventComponent_Conditional_0_Conditional_6_Template","PopularBetsPodEventComponent_Conditional_0_ng_container_7_Template","showSelectionInfo","selectionInfo","eventPick_r2","PopularBetsPodEventComponent_Conditional_1_Conditional_2_Template","PopularBetsPodEventComponent_Conditional_1_Conditional_6_Template","PopularBetsPodEventComponent_Conditional_1_ng_container_7_Template","PopularBetsPodEventComponent_ng_template_2_Conditional_0_Conditional_1_Template","PopularBetsPodEventComponent_ng_template_2_Conditional_0_Conditional_2_Template","PopularBetsPodEventComponent_ng_template_2_Conditional_0_Template","PopularBetsPodEventComponent","isOddsSelectionHidden","currentOption","PopularBetsPodEventComponent_Conditional_0_Template","PopularBetsPodEventComponent_Conditional_1_Template","PopularBetsPodEventComponent_ng_template_2_Template","FontResizerComponent","GridModule","EventPickComponent","_PopularBetsPodEventComponent","eventStartDate","PopularBetsPodHeaderComponent_Conditional_0_Conditional_1_Template","PopularBetsPodHeaderComponent_Conditional_0_Conditional_2_Template","counter","BetCounter","PopularBetsPodHeaderComponent_Conditional_1_Conditional_0_Conditional_1_Template","PopularBetsPodHeaderComponent_Conditional_1_Conditional_0_Conditional_2_Template","PopularBetsPodHeaderComponent_Conditional_1_Conditional_0_Template","PopularBetsPodHeaderComponent","PopularBetsPodHeaderComponent_Conditional_0_Template","PopularBetsPodHeaderComponent_Conditional_1_Template","_PopularBetsPodHeaderComponent","event_r2","pickSelectionType","Single","index_r3","_r4","PopularBetsPodComponent","updateFixtureParticipants","trackByEvent","_","forEach","ee","PopularBetsPodComponent_Conditional_2_Template","PopularBetsPodComponent_ms_popular_bets_pod_event_4_Template","PopularBetsPodComponent_Conditional_7_Template","All","_PopularBetsPodComponent","viewModel_r2","pod_r4","height","width","tmp_10_0","alt","PopularMultiBetsWidgetComponent_Conditional_0_li_6_Conditional_1_Template","PopularMultiBetsWidgetComponent_Conditional_0_li_6_Conditional_2_Template","PopularMultiBetsWidgetComponent_Conditional_0_li_6_Conditional_3_Template","shouldShowBetBuilderPod","PopularMultiBetsWidgetComponent_Conditional_0_ng_template_1_Template","PopularMultiBetsWidgetComponent_Conditional_0_Conditional_3_Template","onPodScroll","onPodSwipe","PopularMultiBetsWidgetComponent_Conditional_0_li_6_Template","showHeader","scrollSpeed","payload","minWidth","trackByPod","itemsRendered","PopularMultiBetsWidgetComponent","WidgetComponent","eventSubscriptionService","context","cdnCachingConfig","eventFactory","fixtureFactory","epcotService","deviceService","betBuilderMapperService","viewModel$","shouldIncludePayload","widgets","includes","config$","whenReady","shareReplay","bufferSize","refCount","badgePosition","isPodExpanded","expandCollapsePod","scrollComponent","setArrows","ScrollSpeed","default","onData","pods","renderData","getData","response","fixtures","hasData","firstPodType","loadBetBuilderBadgeComponent","prepareViewModel","getPodTitle","setWidgetLoaded","collapsePods","logEmptyData","getContext","podId","getWidget","biggestPod","podEventsObservables","of","offer","create","sourceFixture","sourceId","combineLatest","forkJoin","eventsArray","preparePodViewModelPayload","getBetBuilderPodLength","mapPreCreatedMarket","getPreCreatedOptions","defaultLegs","min","minCountForShowingCounter","sportIds","competitionIds","isHomeOrMultiSportsLobby","getTrackingDetail","getEarliestEventStartDate","popularBetsOptionTeamInfo","noOfEvents","podPayload","callbacks","podIndex","callback","debounce","getCallback","eventSubscription","eventId","updatedEvent","currentPod","eventIndex","findIndex","cloneDeep","contextPage","page","minBy","e","BetBuilderBadgeComponent","isMobile","asapScheduler","preCreated","mapFixture","ambassadorsMarkets","concat","promotedMarkets","themedTabMarkets","precreatedOption","optionMarkets","optionMarket","EventSubscriptionService","WidgetContextService","CDNCachingConfig","EventFactory","FixtureFactory","EpcotConfigService","DeviceService","BetBuilderMapperService","ScrollAdapterComponent","Ee","HAMMER_GESTURE_CONFIG","ɵɵInheritDefinitionFeature","PopularMultiBetsWidgetComponent_Conditional_0_Template","_PopularMultiBetsWidgetComponent","PopularMultiBetsWidgetRegistration","widgetRegistry","injector","onFeatureInit","firstValueFrom","registerLazy","WidgetRegistryService","Injector","_PopularMultiBetsWidgetRegistration","runOnFeatureInit"],"mappings":"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","x_google_ignoreList":[8,9]}