{"version":3,"file":"event-statistics.component-c80f1vg6.js","sources":["packages/sports/web/app/src/statistics/color.ts","packages/sports/web/app/src/statistics/event-statistics.html","packages/sports/web/app/src/statistics/event-statistics.component.ts"],"sourcesContent":["export class Color {\n constructor(\n public red: number,\n public green: number,\n public blue: number,\n public opacity?: number,\n ) {}\n\n static parseHex(hex: string | undefined, opacity: number = 1): Color | undefined {\n if (hex) {\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n\n return result ? new Color(parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16), opacity) : undefined;\n }\n\n return undefined;\n }\n\n toString(): string {\n return this.opacity !== undefined ? this.rgba() : this.rgb();\n }\n\n private rgba = () => `rgba(${this.red}, ${this.green}, ${this.blue}, ${this.opacity})`;\n private rgb = () => `rgb(${this.red}, ${this.green}, ${this.blue})`;\n}\n","\n \n \n \n \n\n \n \n \n \n
\n \n \n\n \n\n \n \n
\n \n
\n
\n","import { AsyncPipe, NgIf } from '@angular/common';\nimport { Component, EventEmitter, HostBinding, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport { EventDetailsConfig, Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { SportConstant } from '@frontend/sports/common/core/data-access/constants';\nimport { DispatcherService } from '@frontend/sports/common/core/utils/dispatcher';\nimport { DeviceService } from '@frontend/vanilla/core';\nimport { PageVisibilityService } from '@frontend/vanilla/features/page-visibility';\nimport { ReplaySubject } from 'rxjs';\nimport { filter, switchMap, tap } from 'rxjs/operators';\n\nimport { EpcotConfigService, EpcotModule } from '../common/epcot-config.service';\nimport { Color } from './color';\nimport { StatisticsTab } from './models';\nimport { StatisticsSharedModule } from './statistics-shared.module';\nimport { PreMatchStatisticsTabType, StatisticsModel } from './statistics.models';\nimport { StatisticsService } from './statistics.service';\n\nexport enum HeaderContentDensity {\n Small,\n Medium,\n Fullscreen,\n Auto,\n}\n\n@Component({\n standalone: true,\n selector: 'ms-event-statistics',\n templateUrl: 'event-statistics.html',\n imports: [StatisticsSharedModule, NgIf, AsyncPipe],\n})\nexport class EventStatisticsComponent implements OnInit, OnChanges {\n @Input() event: EventModel;\n @Input() inColumn = false;\n\n @Output() toggle = new EventEmitter();\n\n @HostBinding('class.embedded-statistics-loading') loading = true;\n @HostBinding('class') get className(): string {\n const classNames = `event-statistics ${SportConstant[this.event.sport.id].toLowerCase()}`;\n\n if (!this.event.live && !this.expand) {\n return `${classNames} prematch-collapsed`;\n } else if (this.event.live && !this.expand) {\n return `${classNames} prematch-collapsed-live`;\n } else {\n return classNames;\n }\n }\n\n _statistics: StatisticsModel;\n event$ = new ReplaySubject(1);\n perfStatisticsExist: boolean;\n statistics$ = this.event$.pipe(\n switchMap((event) => this.statisticsService.get(event)),\n tap((statistics) => {\n this.loading = false;\n this._statistics = statistics;\n }),\n );\n\n expand = false;\n isEmptyOrLastMatches = false;\n epcotEnable: boolean;\n\n expandForMoreText = '';\n headerStatCollapsed = false;\n sportType = SportConstant;\n teamColors: string[];\n\n private sportsWithTimer = [SportConstant.Soccer, SportConstant.Basketball];\n private sportsWithStats = [SportConstant.Soccer, SportConstant.Tennis, SportConstant.Basketball];\n\n constructor(\n private statisticsService: StatisticsService,\n private deviceService: DeviceService,\n private dispatcher: DispatcherService,\n private pageVisiblity: PageVisibilityService,\n private eventDetailsConfig: EventDetailsConfig,\n public sitecore: Sitecore,\n private epcotConfigService: EpcotConfigService,\n ) {\n this.pageVisiblity\n .visibilityChange()\n .pipe(\n filter(() => deviceService.isMobile),\n takeUntilDestroyed(),\n )\n .subscribe((state) => {\n this.toggle.emit(this.expand);\n });\n }\n\n get isTimerVisible(): boolean {\n return this.sportsWithTimer.indexOf(this.event.sport.id) !== -1;\n }\n\n get isEventLiveAndStarted(): boolean {\n return this.statisticsService.hasStatistics(this.event);\n }\n\n get showPerform(): boolean {\n return this.statisticsService.hasPerformStatistics(this.event);\n }\n\n setPerfStatsExists(perfStatsExist: boolean) {\n this.perfStatisticsExist = perfStatsExist;\n }\n\n private getTeamColors(): string[] {\n const fallbackColors: string[] = this.eventDetailsConfig.teamIndicatorFallbackColors.slice(0, 2);\n this.epcotEnable = this.epcotConfigService.isEnabled(EpcotModule.Statsindicator);\n let result: string[];\n if (\n this.event.participants &&\n this.event.participants.length === 2 &&\n this.event.participants[0].shirtColor &&\n this.event.participants[1].shirtColor\n ) {\n const homeTeamColor = this.event.participants[0].shirtColor;\n const awayTeamColor = this.event.participants[1].shirtColor;\n\n if (homeTeamColor === awayTeamColor) {\n result = fallbackColors;\n } else {\n result = [homeTeamColor, awayTeamColor];\n }\n } else {\n result = fallbackColors;\n }\n\n return result.map((c) => {\n const opacity = this.epcotEnable ? 1 : 0.7;\n const s = Color.parseHex(c, opacity);\n\n return s ? s.toString() : '';\n });\n }\n\n get showExpander(): boolean {\n if (!this.isStatsSport) {\n return false;\n } else if (this.event.live && this.event.scoreboard.started) {\n return true;\n } else if (this._statistics.hasStats && !this.isEmptyOrLastMatches) {\n return true;\n } else {\n return false;\n }\n }\n\n get showVisitStatCenter(): boolean {\n return !this._statistics.hasStats && !!this.event.statsId;\n }\n\n get showEventHeader(): boolean {\n return this.isEventLiveAndStarted;\n }\n\n get collapseFootball(): boolean {\n return !this.expand && this.showPerform && this.perfStatisticsExist;\n }\n\n get collapsePrematch(): boolean {\n return !this.expand && this.isEventLiveAndStarted;\n }\n\n get showPrematchSeparator(): boolean {\n if (this.event.live && this.expand && this._statistics && this._statistics.hasStats && this.event.scoreboard.started) {\n return true;\n } else {\n return false;\n }\n }\n\n get hidePrematchTennis(): boolean {\n if (this.event.sport.id === this.sportType.Tennis) {\n return false;\n } else {\n return true;\n }\n }\n\n get showGenericBetRadarLink(): boolean {\n const isStatsIdAvailble = this.event && this.event.statsId;\n const isStatsSport = this.isStatsSport;\n const isLiveOrPrematchAvailable = (this.event.live && this.event.scoreboard.started) || (this._statistics && this._statistics.hasStats);\n const showGenericBetRadarForStatsSports = isStatsIdAvailble && isStatsSport && !isLiveOrPrematchAvailable;\n const showGenericBetRadarForNonStatsSports = isStatsIdAvailble && !isStatsSport;\n\n return !!(showGenericBetRadarForStatsSports || showGenericBetRadarForNonStatsSports);\n }\n\n get isStatsSport(): boolean {\n return !!(this.event && this.event.sport && this.sportsWithStats.indexOf(this.event.sport.id) !== -1);\n }\n\n ngOnInit(): void {\n this.teamColors = this.getTeamColors();\n this.expandForMoreText = this.sitecore.statistics.ExpandForMore;\n this.perfStatisticsExist = this.showPerform;\n\n this.expandChanged(false);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.event) {\n this.event$.next(this.event);\n }\n if (changes.event && !changes.event.firstChange && changes.event.previousValue.id !== changes.event.currentValue.id) {\n this.isEmptyOrLastMatches = false;\n this.teamColors = this.getTeamColors();\n this.dispatcher.dispatch('NEW_EVENT_SELECTED', true);\n }\n }\n\n currentSportType(sportType: SportConstant): boolean {\n return this.event.sport.id === sportType;\n }\n\n expandChanged(expanded: boolean): void {\n this.expand = expanded;\n this.toggle.emit(this.expand);\n }\n\n tabChange(tab: StatisticsTab): void {\n if ((this.deviceService.isMobile && this.expand) || (this.isEventLiveAndStarted && this.expand)) {\n this.isEmptyOrLastMatches = false;\n } else {\n this.isEmptyOrLastMatches = !tab.enabled || tab.id === PreMatchStatisticsTabType.LastMatches;\n }\n if (this.isEmptyOrLastMatches) {\n this.expandChanged(false);\n }\n }\n}\n"],"names":["Color","constructor","red","green","blue","opacity","rgba","rgb","parseHex","hex","result","exec","parseInt","undefined","toString","ɵɵelement","ɵɵproperty","ctx_r0","event","inColumn","teamColors","isTimerVisible","scoreboard","ɵɵelementStart","ɵɵlistener","ɵɵrestoreView","_r2","ɵɵnextContext","ɵɵresetView","setPerfStatsExists","ɵɵelementEnd","id","isFinished","showVisitStatCenter","statistics_r3","hasStats","expand","participants","$event","_r4","tabChange","sport","statsId","g","_r5","expandChanged","r","statistics","perfStatisticsExist","expandForMoreText","ɵɵadvance","sitecore","GenericBetRadarMessage","ɵɵelementContainerStart","ɵɵtemplate","EventStatisticsComponent_ng_container_0_ms_event_header_1_Template","EventStatisticsComponent_ng_container_0_ms_perform_statistics_2_Template","EventStatisticsComponent_ng_container_0_ms_live_football_statistics_3_Template","EventStatisticsComponent_ng_container_0_ms_live_basketball_statistics_4_Template","EventStatisticsComponent_ng_container_0_ms_live_tennis_statistics_5_Template","EventStatisticsComponent_ng_container_0_div_6_Template","EventStatisticsComponent_ng_container_0_ms_pre_match_statistics_7_Template","EventStatisticsComponent_ng_container_0_ms_stats_center_8_Template","EventStatisticsComponent_ng_container_0_ms_statistics_expander_9_Template","EventStatisticsComponent_ng_container_0_div_10_Template","isStatsSport","showEventHeader","showPerform","currentSportType","sportType","Soccer","isEventLiveAndStarted","collapseFootball","Basketball","Tennis","showPrematchSeparator","collapsePrematch","showExpander","showGenericBetRadarLink","HeaderContentDensity","EventStatisticsComponent","className","classNames","SportConstant","toLowerCase","live","statisticsService","deviceService","dispatcher","pageVisiblity","eventDetailsConfig","epcotConfigService","toggle","EventEmitter","loading","event$","ReplaySubject","statistics$","pipe","switchMap","get","tap","_statistics","isEmptyOrLastMatches","headerStatCollapsed","sportsWithTimer","sportsWithStats","visibilityChange","filter","isMobile","takeUntilDestroyed","subscribe","state","emit","indexOf","hasStatistics","hasPerformStatistics","perfStatsExist","getTeamColors","fallbackColors","teamIndicatorFallbackColors","slice","epcotEnable","isEnabled","EpcotModule","Statsindicator","length","shirtColor","homeTeamColor","awayTeamColor","map","c","s","started","hidePrematchTennis","isStatsIdAvailble","isLiveOrPrematchAvailable","ngOnInit","ExpandForMore","ngOnChanges","changes","next","firstChange","previousValue","currentValue","dispatch","expanded","tab","enabled","PreMatchStatisticsTabType","LastMatches","ɵɵdirectiveInject","StatisticsService","DeviceService","DispatcherService","PageVisibilityService","EventDetailsConfig","Sitecore","EpcotConfigService","selectors","hostVars","hostBindings","rf","ctx","ɵɵclassMap","ɵɵclassProp","EventStatisticsComponent_ng_container_0_Template","ɵɵpipeBind1","StatisticsSharedModule","PerformStatisticsComponent","StatisticsExpanderComponent","LiveTennisStatisticsComponent","PreMatchStatisticsComponent","LiveFootballStatisticsComponent","LiveBasketballStatisticsComponent","EventHeaderComponent","EmptyStatsComponent","StatsCenterComponent","NgIf","AsyncPipe","encapsulation","_EventStatisticsComponent"],"mappings":"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"}