{"version":3,"file":"media.feature-ee2fpety.js","sources":["packages/sports/web/app/src/media/animations.ts","packages/sports/web/app/src/media/media-component-map.service.ts","packages/sports/web/app/src/common/dynamic-components-loader.service.ts","packages/sports/web/app/src/common/dynamic-icon-loader.component.ts","packages/sports/web/app/src/media/empty-media.html","packages/sports/web/app/src/media/empty-media.component.ts","packages/sports/web/app/src/media/scroll-to-active.directive.ts","packages/sports/web/app/src/media/event-selector.html","packages/sports/web/app/src/media/event-selector.component.ts","packages/sports/web/app/src/media/unpin-info.component.ts","packages/sports/web/app/src/media/unpin-info.html","packages/sports/web/app/src/media/video-pin.component.ts","packages/sports/web/app/src/media/video-pin.html","packages/sports/web/app/src/media/media-components.module.ts","packages/sports/web/app/src/media/media-tracking.service.ts","packages/sports/web/app/src/media/media.html","packages/sports/web/app/src/media/media.component.ts","packages/sports/web/app/src/media/media-widget.registration.ts","packages/sports/web/app/src/media/media.feature.ts"],"sourcesContent":["import { animate, style, transition, trigger } from '@angular/animations';\n\nexport const toggleAnimations = [\n trigger('toggleAnimation', [\n transition(':enter', [\n style({ 'max-height': `0px`, 'opacity': 0 }),\n animate('500ms ease-in-out', style({ 'max-height': `500px`, 'opacity': 1 })),\n ]),\n transition(':leave', [\n style({ 'opacity': 1, 'max-height': `500px`, 'height': '{{mediaHeight}}', 'filter': 'blur(2px)' }),\n animate('300ms ease-in-out', style({ 'max-height': `0px`, 'opacity': 0 })),\n ]),\n ]),\n];\n","import { Injectable } from '@angular/core';\n\nimport { EventMediaHelperService } from '@frontend/sports/betting-offer/feature/media';\nimport { EventDetailsColumnType, EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport { MediaConfig } from '@frontend/sports/common/client-config-data-access';\nimport { SportConstant } from '@frontend/sports/common/core/data-access/constants';\nimport { getAnimationIconForSport, getVideoIcon } from '@frontend/sports/common/core/feature/icon';\nimport { EventSwitcherItem, MediaModuleContextPage } from '@frontend/sports/grid/media/feature/model';\nimport { MediaState } from '@frontend/sports/grid/media/feature/state';\nimport { TrackingVideoSource } from '@frontend/sports/tracking/feature';\nimport { findIndex } from 'lodash-es';\n\nimport { EventDetailsHelperService } from '../event-details-common/event-details-helper.service';\nimport { TabBarItem } from '../tab-bar/tab-bar.models';\n\nexport interface MediaComponentState {\n isAnimationAvailable: boolean;\n isStatsExpanderVisible: boolean;\n isEventLive: boolean;\n isEventDetailPage: boolean;\n isExpanded: boolean;\n isLocationAllowsExpand: boolean;\n restoreExpandState: boolean;\n isDefaultExpanded: boolean;\n collapsed: boolean;\n tabs: TabBarItem[];\n videoEventId: string | null;\n videoEvent: EventModel | null;\n animationEvent: EventModel | null;\n statisticsEvent: EventModel | null;\n activeTab: EventDetailsColumnType;\n videoDropdownEvents: EventSwitcherItem[];\n videoPinned: boolean;\n videoUnpinInfoVisible: boolean;\n videoAutoplay: boolean;\n videoPlaying: boolean;\n pinEnabled: boolean;\n hasEventOnMedia: boolean;\n trackingSource: TrackingVideoSource;\n pendingEsport?: EventModel;\n}\n\n@Injectable()\nexport class MediaComponentMapService {\n private readonly defaultBackgroundColor = 'black';\n\n constructor(\n private eventDetailsHelper: EventDetailsHelperService,\n private eventMediaHelperService: EventMediaHelperService,\n private mediaConfig: MediaConfig,\n ) {}\n\n mapContent(mediaState: MediaState): MediaComponentState {\n const animationEvent = mediaState.animation.eventId ? mediaState.eventInfos[mediaState.animation.eventId].event : null;\n const statisticsEvent = mediaState.statistics.eventId ? mediaState.eventInfos[mediaState.statistics.eventId].event : null;\n const videoEvent = mediaState.video.eventId ? mediaState.eventInfos[mediaState.video.eventId].event : null;\n const isAnimationAvailable = !!animationEvent && this.eventMediaHelperService.hasAnimation(animationEvent);\n const isStatsExpanderVisible = !(statisticsEvent && statisticsEvent.sport.id === SportConstant.Soccer);\n const isEventLive = videoEvent ? videoEvent.live : false;\n let hasSecondEventStream = false;\n if (mediaState.context.eventId && Object.keys(mediaState.eventInfos).length > 1) {\n const secondEvent = mediaState.eventInfos[mediaState.context.eventId];\n if (secondEvent) {\n hasSecondEventStream = secondEvent.event.stream !== undefined;\n }\n }\n\n const isEventDetailPage = mediaState.context.page === MediaModuleContextPage.EventDetails;\n const collapsed = mediaState.isCollapsed;\n\n return {\n trackingSource: mediaState.video.trackingSource,\n isAnimationAvailable,\n isStatsExpanderVisible,\n isEventLive,\n isEventDetailPage,\n isExpanded: mediaState.mediaExpandState.isExpanded,\n isLocationAllowsExpand: mediaState.mediaExpandState.isLocationAllowsExpand,\n restoreExpandState: mediaState.mediaExpandState.restoreExpandState,\n isDefaultExpanded: mediaState.mediaExpandState.isDefaultExpanded,\n collapsed,\n videoEventId: mediaState.video.eventId,\n videoEvent,\n animationEvent,\n statisticsEvent,\n activeTab:\n !this.mediaConfig.showVideoStreaming && mediaState.activeTab === EventDetailsColumnType.Video\n ? EventDetailsColumnType.Animation\n : mediaState.activeTab,\n videoDropdownEvents: mediaState.video.dropdownEvents,\n videoPinned: mediaState.video.pinned,\n videoUnpinInfoVisible: mediaState.video.unpinInfoVisible && hasSecondEventStream,\n videoAutoplay: mediaState.video.autoplay,\n videoPlaying: mediaState.video.playing && mediaState.activeTab === EventDetailsColumnType.Video && videoEvent !== null,\n tabs: this.mapTabs(mediaState),\n pinEnabled: !!mediaState.video.eventId && mediaState.video.pinEnabled,\n hasEventOnMedia: Object.keys(mediaState.eventInfos).length > 0,\n pendingEsport: mediaState.pendingEsport,\n };\n }\n\n mapTabs(mediaState: MediaState): TabBarItem[] {\n const tabs: TabBarItem[] = [];\n const sportId = mediaState.animation.eventId ? mediaState.eventInfos[mediaState.animation.eventId].event.sport.id : SportConstant.Soccer;\n const eventId = mediaState.statistics.eventId ? mediaState.eventInfos[mediaState.statistics.eventId].event : null;\n if (this.mediaConfig.showVideoStreaming) {\n tabs.push({\n id: EventDetailsColumnType.Video,\n title: mediaState.video.pinned ? '' : '',\n icon: getVideoIcon(false),\n });\n }\n tabs.push({\n id: EventDetailsColumnType.Animation,\n title: '',\n icon: getAnimationIconForSport(sportId, false),\n disabled: mediaState.animation.eventId\n ? !this.eventMediaHelperService.hasAnimationOrSimulation(mediaState.eventInfos[mediaState.animation.eventId].event)\n : true,\n });\n tabs.push({\n id: EventDetailsColumnType.Stats,\n title: '',\n icon: 'sports-stats',\n disabled: mediaState.statistics.eventId\n ? !(\n this.eventDetailsHelper.hasStats(eventId) ||\n (this.eventDetailsHelper.hasBetRadarMappingID(eventId) && this.mediaConfig.showStatsCenterButton)\n )\n : true,\n });\n\n let activeIndex = findIndex(tabs, (tab) => tab.id === mediaState.activeTab);\n\n if (activeIndex < 0) {\n activeIndex = 0;\n }\n tabs[activeIndex].active = true;\n\n return tabs;\n }\n\n getBackgroundcolor(mediaState: MediaComponentState, type: EventDetailsColumnType): string {\n if (type === EventDetailsColumnType.Video) {\n return this.getBackground(mediaState.videoEvent, true);\n } else if (type === EventDetailsColumnType.Animation) {\n return this.getBackground(mediaState.animationEvent, mediaState.isAnimationAvailable);\n } else if (type === EventDetailsColumnType.Stats) {\n return this.getBackground(mediaState.statisticsEvent, false);\n } else {\n return this.getBackground(mediaState.animationEvent, false);\n }\n }\n\n private getBackground(animationEvent: EventModel | null, isAnimationAvailable: boolean): string {\n if (animationEvent === null) {\n return this.defaultBackgroundColor;\n }\n\n return this.eventDetailsHelper.getBackgroundColor(animationEvent, isAnimationAvailable) || this.defaultBackgroundColor;\n }\n}\n","import {\n AfterViewInit,\n Directive,\n ElementRef,\n EnvironmentInjector,\n Injectable,\n InjectionToken,\n Injector,\n Type,\n createComponent,\n inject,\n reflectComponentType,\n} from '@angular/core';\n\nexport const DYNAMIC_COMPONENT = new InjectionToken<{\n selector: string;\n componentType: Type;\n}>('component');\n\n@Injectable()\nexport class DynamicComponentsLoaderService {\n private components = new Map>();\n\n private providedComponents =\n inject<\n Array<{\n selector: string;\n componentType: Type;\n }>\n >(DYNAMIC_COMPONENT, { optional: true }) ?? [];\n\n allComponents = () => {\n let componentList = [];\n for (let [key, value] of this.components.entries()) {\n componentList.push({ selector: key, componentType: value });\n }\n return componentList;\n };\n\n constructor() {\n this.providedComponents.forEach((x) => this.register(x.selector, x.componentType));\n }\n\n register(selector: string, componentClass: Type) {\n this.components.set(selector, componentClass);\n }\n\n get(selector: string) {\n return this.components.get(selector);\n }\n}\n\n@Directive({\n standalone: true,\n selector: '[msRenderDynamic]',\n})\nexport class RenderDynamicDirective implements AfterViewInit {\n elementRef = inject(ElementRef);\n injector = inject(Injector);\n envInjector = inject(EnvironmentInjector);\n\n dynamicComponents = inject(DynamicComponentsLoaderService);\n\n ngAfterViewInit() {\n const allComponents = this.dynamicComponents.allComponents();\n\n allComponents.forEach((component) => {\n const element = this.elementRef.nativeElement as HTMLElement;\n const foundElements = Array.from(element.querySelectorAll(component.selector));\n\n for (let elementHost of foundElements) {\n if (elementHost) {\n const cmp = createComponent(component.componentType, {\n hostElement: elementHost,\n elementInjector: this.injector,\n environmentInjector: this.envInjector,\n });\n\n const cmpMirror = reflectComponentType(component.componentType);\n\n Array.from(elementHost.attributes).forEach((attribute) => {\n if (cmpMirror && attribute.name !== 'ng-version') {\n const inputExists = cmpMirror.inputs.some((x) => x.propName === attribute.name);\n if (inputExists) {\n cmp.setInput(attribute.name, attribute.value);\n }\n }\n });\n\n cmp.changeDetectorRef.detectChanges();\n }\n }\n });\n }\n}\n\nexport function provideDynamicComponents(components: Array<{ selector: string; componentType: Type }>) {\n return [\n DynamicComponentsLoaderService,\n ...components.map((cmp) => {\n return {\n provide: DYNAMIC_COMPONENT,\n useValue: {\n selector: cmp.selector,\n componentType: cmp.componentType,\n },\n multi: true,\n };\n }),\n ];\n}\n","import { Component, computed, inject, input } from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\nimport { RenderDynamicDirective, provideDynamicComponents } from './dynamic-components-loader.service';\n\n@Component({\n selector: 'ms-dynamic-icon',\n standalone: true,\n imports: [RenderDynamicDirective],\n template: ``,\n providers: [provideDynamicComponents([{ selector: 'vn-icon', componentType: IconCustomComponent }])],\n})\nexport class DynamicIconComponent {\n html = input.required();\n sanitizer = inject(DomSanitizer);\n\n parsedHtml = computed(() => {\n return this.sanitizer.bypassSecurityTrustHtml(this.html());\n });\n}\n","\n @if (isEventSelected) {\n \n }\n \n\n\n @if (isEventSelected) {\n \n } @else {\n \n }\n\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, computed } from '@angular/core';\n\nimport { Sitecore } from '@frontend/sports/common/client-config-data-access';\n\nimport { EpcotModule } from '../common/epcot-config.service';\n\n@Component({\n selector: 'ms-empty-media',\n templateUrl: 'empty-media.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EmptyMediaComponent {\n @Input() isEventSelected: boolean;\n @Input() isEventLive: boolean;\n @Input() emptyList: boolean;\n @Input() isExpanded: boolean;\n module = EpcotModule.Statsindicator;\n @HostBinding('class') className = 'empty-media';\n\n message = computed(() => {\n if (this.isEventSelected) {\n return this.isEventLive ? this.sitecore.media.NoLiveStreamingForEvent : this.sitecore.media.NoLiveStreamingForEventPrematch;\n } else {\n return (this.emptyList ? this.sitecore.media.SelectAnimationFromLiveEvents : this.sitecore.media.SelectMediaFromList)\n .replace('{{videoIcon}}', '')\n .replace('{{animationIcon}}', '');\n }\n });\n\n constructor(public sitecore: Sitecore) {}\n}\n","import { AfterViewInit, Directive, ElementRef } from '@angular/core';\n\nimport { TimerService } from '@frontend/sports/common/core/utils/timer';\n\n@Directive({\n selector: '[msScrollToActive]',\n})\nexport class ScrollToActiveDirective implements AfterViewInit {\n constructor(\n private element: ElementRef,\n private timer: TimerService,\n ) {}\n\n ngAfterViewInit(): void {\n const child = this.element.nativeElement.querySelector('.active') as HTMLElement;\n if (!child) {\n return;\n }\n\n this.timer.setAnimationFrame(() => {\n this.element.nativeElement.scrollTop = child.offsetTop - this.element.nativeElement.clientHeight / 2 + child.clientHeight / 2;\n });\n }\n}\n","
\n
\n @if (selectedEvent) {\n \n
{{ !!selectedEvent && selectedEvent!.name }}
\n }\n\n @if (!selectedEvent) {\n {{ selectorTitle }}\n }\n
\n @if (!!eventsList.length) {\n \n }\n
\n@if (!collapsed && !!eventsList.length) {\n
\n
\n @for (item of eventsList; track $index) {\n
\n \n
{{ item.name }}
\n
\n @for (child of item.children; track $index) {\n
\n
{{ child.name }}
\n
\n }\n }\n
\n
\n}\n","import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, HostListener, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\n\nimport { EventDetailsColumnType } from '@frontend/sports/betting-offer/feature/model';\nimport { Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { EventSwitcherEventItem, EventSwitcherItem, MediaEventSource } from '@frontend/sports/grid/media/feature/model';\nimport { IMediaRootState, MediaApiActions } from '@frontend/sports/grid/media/feature/state';\nimport { TrackingService, TrackingVideoSource, trackingConstants } from '@frontend/sports/tracking/feature';\nimport { Store } from '@ngrx/store';\n\nimport { AdaptiveLayoutService } from '../layout/adaptive-layout.service';\nimport { RightColumnSize } from '../layout/layout.model';\nimport { Actions } from './actions';\n\nconst containerHeightMap = {\n [RightColumnSize.ExtraLarge]: 'size-xl',\n [RightColumnSize.Large]: 'size-l',\n};\n\n@Component({\n selector: 'ms-event-selector',\n templateUrl: 'event-selector.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EventSelectorComponent implements OnInit, OnChanges {\n @Input() eventsList: EventSwitcherItem[];\n @Input() selectedEventId: string | null;\n @HostBinding('class') className = 'event-selector';\n\n collapsed = true;\n selectedEvent: { id: string; name: string; sportId: number } | null = null;\n containerHeight = '';\n selectorTitle: string;\n\n constructor(\n public sitecore: Sitecore,\n private elementRef: ElementRef,\n private trackingService: TrackingService,\n private adaptiveLayoutService: AdaptiveLayoutService,\n private store: Store,\n ) {}\n\n @HostListener('window:click', ['$event'])\n clickout(event: any): void {\n if (!this.elementRef.nativeElement.contains(event.target)) {\n this.collapsed = true;\n }\n }\n\n ngOnInit(): void {\n this.getDropdownHeight();\n }\n\n /// In case we are setting an event in the dropdown but cannot find it in the list, we will refresh the dropdown content(maybe stalled data).\n /// If we still cannot find it after that, it means that the event is expired. In this case we will unset the event from Video tab\n ngOnChanges(changes: SimpleChanges): void {\n this.selectorTitle = this.eventsList.length ? this.sitecore.media.EventSelectorTitle : this.sitecore.media.NoLiveStreamingEvents;\n this.selectedEvent = null;\n if (this.selectedEventId === null) {\n return;\n }\n\n for (const sport of this.eventsList) {\n if (!sport.children) {\n continue;\n }\n\n const event = sport.children.find((child) => child.id === this.selectedEventId);\n if (event) {\n this.selectedEvent = { id: event.id.toString(), name: event.name, sportId: +sport.id };\n break;\n }\n }\n\n if (changes.selectedEventId) {\n if (this.selectedEvent === null) {\n this.fetchVideoEvents();\n }\n\n if (changes.selectedEventId.currentValue !== changes.selectedEventId.previousValue) {\n this.collapsed = true;\n }\n\n return;\n }\n\n if (!!this.selectedEventId && !this.selectedEvent) {\n this.unsetEvent();\n }\n }\n\n getDropdownHeight(): void {\n if (this.selectedEventId !== null) {\n //TODO any index issue, probably a defect, please investigate\n //@ts-ignore this looks wrong, below we use ColumnSize enum, but the map object is using RightColumnSize\n this.containerHeight = containerHeightMap[this.adaptiveLayoutService.current.rightColumnSize] || '';\n }\n }\n\n changed(event: EventSwitcherEventItem): void {\n this.toggleSelector();\n if (event.id !== this.selectedEventId) {\n this.trackingService.track(trackingConstants.EVENT_MEDIA, {\n [trackingConstants.COMPONENT_SITE_ELEMENT_INTERCATIONS]: 'MediaModule_EventSwitcher_EventChanged',\n });\n this.setDropdownEvent(event.id.toString());\n }\n }\n\n toggleSelector(): void {\n this.collapsed = !this.collapsed;\n this.getDropdownHeight();\n }\n\n scrolled(event: Event): void {\n event.stopPropagation();\n }\n\n private fetchVideoEvents(): void {\n this.store.dispatch(Actions.fetchVideoEvents());\n }\n\n private unsetEvent(): void {\n this.store.dispatch(Actions.unsetEvent({ columnType: EventDetailsColumnType.Video }));\n }\n\n private setDropdownEvent(eventId: string): void {\n this.store.dispatch(\n MediaApiActions.setEventId({\n payload: {\n eventId,\n source: MediaEventSource.EventSwitcher,\n tab: EventDetailsColumnType.Video,\n trackingVideoSource: TrackingVideoSource.EventSwitcher,\n },\n }),\n );\n }\n}\n","import { ChangeDetectionStrategy, Component, HostBinding } from '@angular/core';\n\nimport { Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { Store } from '@ngrx/store';\n\nimport { Actions } from './actions';\n\n@Component({\n selector: 'ms-unpin-info',\n templateUrl: 'unpin-info.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class UnpinInfoComponent {\n @HostBinding('class') className = 'unpin-info';\n\n constructor(\n public sitecore: Sitecore,\n private store: Store,\n ) {}\n\n close(): void {\n this.closeInfoMessage();\n }\n\n private closeInfoMessage(): void {\n this.store.dispatch(Actions.acceptUnpinInfoMessage());\n }\n}\n","
\n \n
\n{{ sitecore.media.UnpinOnboarding }}\n
\n","import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Input, Output, computed } from '@angular/core';\n\nimport { EpcotConfigService } from '../common/epcot-config.service';\n\n@Component({\n selector: 'ms-video-pin',\n templateUrl: 'video-pin.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class VideoPinComponent {\n @HostBinding('class.pinned')\n @Input()\n isPinned: boolean;\n\n @HostBinding('class.video-pin')\n class = true;\n\n @HostBinding('class.disabled')\n @Input()\n disabled: boolean;\n\n @Output()\n toggle = new EventEmitter();\n\n @HostListener('click')\n onClick(): void {\n if (!this.disabled) {\n this.toggle.emit();\n }\n }\n\n readonly isEpcotEnabled = computed(() => this.epcotConfigService.isEnabled());\n\n constructor(private epcotConfigService: EpcotConfigService) {}\n}\n","\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\n\nimport { RenderDynamicDirective } from '../common/dynamic-components-loader.service';\nimport { DynamicIconComponent } from '../common/dynamic-icon-loader.component';\nimport { ShowInEpcotDirective } from '../common/epcot-config.directive';\nimport { EpcotNotificationComponent } from '../common/epcotNotifications/notification.component';\nimport { ExpansionPanelComponent } from '../common/expansion-panel/expansion-panel.component';\nimport { DirectivesModule } from '../directives/directives.module';\nimport { TabBarModule } from '../tab-bar/tab-bar.module';\nimport { EmptyMediaComponent } from './empty-media.component';\nimport { EventSelectorComponent } from './event-selector.component';\nimport { ScrollToActiveDirective } from './scroll-to-active.directive';\nimport { UnpinInfoComponent } from './unpin-info.component';\nimport { VideoPinComponent } from './video-pin.component';\n\n@NgModule({\n imports: [\n CommonModule,\n DirectivesModule,\n ShowInEpcotDirective,\n EpcotNotificationComponent,\n TabBarModule,\n ExpansionPanelComponent,\n IconCustomComponent,\n RenderDynamicDirective,\n DynamicIconComponent,\n ],\n declarations: [EmptyMediaComponent, EventSelectorComponent, VideoPinComponent, ScrollToActiveDirective, UnpinInfoComponent],\n exports: [\n DirectivesModule,\n TabBarModule,\n EmptyMediaComponent,\n EventSelectorComponent,\n VideoPinComponent,\n ScrollToActiveDirective,\n UnpinInfoComponent,\n ],\n})\nexport class MediaComponentsModule {}\n","import { Injectable } from '@angular/core';\n\nimport { EventDetailsColumnType, EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport { NOT_APPLICABLE, TrackData, TrackingService, trackingConstants } from '@frontend/sports/tracking/feature';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class MediaTrackingService {\n private mediaTabs = {\n [EventDetailsColumnType.Stats]: 'stats tab',\n [EventDetailsColumnType.Animation]: 'animation tab',\n [EventDetailsColumnType.Video]: 'video tab',\n };\n\n constructor(private trackingService: TrackingService) {}\n\n trackTabClick(eventActiveId: EventDetailsColumnType, event: EventModel | null, index: number): void {\n if (!event) {\n return;\n }\n\n const trackingData = {\n ...this.baseTracking,\n [trackingConstants.COMPONENT_ACTION_EVENT]: 'click',\n [trackingConstants.COMPONENT_EVENT_DETAILS]: this.mediaTabs[eventActiveId] ?? NOT_APPLICABLE,\n [trackingConstants.SPORT_ID]: event.sport.id.toString(),\n [trackingConstants.SPORT_EVENT_ID]: event.id.toString(),\n [trackingConstants.COMPONENT_CONTENT_POSITION]: index.toString(),\n };\n\n this.trackingService.track(trackingConstants.EVENT_TRACKING, trackingData);\n }\n\n trackPanelToggle(isCollapsed: boolean): void {\n const trackingData = {\n ...this.baseTracking,\n [trackingConstants.COMPONENT_ACTION_EVENT]: isCollapsed ? 'Expand' : 'Collapse',\n };\n\n this.trackingService.track(trackingConstants.EVENT_TRACKING, trackingData);\n }\n\n trackPin(isPinned: boolean): void {\n const trackingData = {\n ...this.baseTracking,\n [trackingConstants.COMPONENT_ACTION_EVENT]: isPinned ? 'unpin' : 'pin',\n [trackingConstants.COMPONENT_EVENT_DETAILS]: 'video',\n };\n\n this.trackingService.track(trackingConstants.EVENT_TRACKING, trackingData);\n }\n\n private get baseTracking(): TrackData {\n return {\n [trackingConstants.COMPONENT_CATEGORY_EVENT]: 'Media Module',\n [trackingConstants.COMPONENT_LABEL_EVENT]: 'Media Module Interactions',\n [trackingConstants.COMPONENT_ACTION_EVENT]: NOT_APPLICABLE,\n [trackingConstants.COMPONENT_POSITION_EVENT]: NOT_APPLICABLE,\n [trackingConstants.COMPONENT_LOCATION_EVENT]: NOT_APPLICABLE,\n [trackingConstants.COMPONENT_EVENT_DETAILS]: NOT_APPLICABLE,\n [trackingConstants.COMPONENT_URL_CLICKED]: NOT_APPLICABLE,\n };\n }\n}\n","@if (!!mediaState) {\n
\n
\n
{{ sitecore.media.Title }}
\n \n \n
\n @if (!mediaState.collapsed) {\n \n @if (isExpandedMediaEnabled && !mediaState.videoPlaying) {\n \n \n \n \n
\n }\n @switch (mediaState.activeTab) {\n @case (tabType.Video) {\n
\n \n \n @if (mediaState.videoUnpinInfoVisible) {\n \n }\n
\n \n @if (mediaState.videoEvent && (!mediaState.pendingEsport || mediaState.videoPinned)) {\n \n }\n @if (isOnEventDetails && mediaState.pendingEsport && !mediaState.videoEvent) {\n \n }\n \n @if (!mediaState.videoEvent && !mediaState.pendingEsport) {\n \n }\n }\n @case (tabType.Animation) {\n
\n @if (!isAnimationDisabled()) {\n @if (!mediaState.isAnimationAvailable) {\n \n } @else {\n \n }\n } @else {\n \n }\n
\n }\n @case (tabType.Stats) {\n
\n @if (mediaState.statisticsEvent) {\n \n }\n
\n }\n }\n \n }\n \n}\n","import { AsyncPipe, DOCUMENT, NgClass, NgStyle } from '@angular/common';\nimport { Component, OnDestroy, OnInit, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivationEnd } from '@angular/router';\n\nimport { EventDetailsColumnType, EventModel, isBespokeSport } from '@frontend/sports/betting-offer/feature/model';\nimport { ShortNameModule, ShortTeamNamesService } from '@frontend/sports/betting-offer/feature/short-team-names';\nimport { MediaConfig, ScoreboardBackgroundConfig, Sitecore } from '@frontend/sports/common/client-config-data-access';\nimport { SportConstant } from '@frontend/sports/common/core/data-access/constants';\nimport { RouteTag } from '@frontend/sports/common/core/data-access/route';\nimport { Optional } from '@frontend/sports/common/core/utils/extended-types';\nimport { RouterEventsService } from '@frontend/sports/common/core/utils/router-events';\nimport { ScrollContainerService } from '@frontend/sports/common/core/utils/scroll-container';\nimport { CompetitionLogosService } from '@frontend/sports/competition-logos/feature';\nimport { MediaTab } from '@frontend/sports/grid/media/feature/model';\nimport { IMediaRootState, MediaState, mediaStateSelector } from '@frontend/sports/grid/media/feature/state';\nimport { TrackingService, TrackingVideoSource, trackingConstants } from '@frontend/sports/tracking/feature';\nimport { DeviceService, MediaQueryService } from '@frontend/vanilla/core';\nimport { IconCustomComponent } from '@frontend/vanilla/shared/icons';\nimport { Store } from '@ngrx/store';\nimport { round } from 'lodash-es';\nimport { DynamicComponent, DynamicIoDirective } from 'ng-dynamic-component';\nimport { Observable, defer, map } from 'rxjs';\n\nimport { AnimationComponentLoaderService, EventAnimationBinding } from '../animation/animation-component-loader.service';\nimport { ExpansionPanelComponent } from '../common/expansion-panel/expansion-panel.component';\nimport { ComponentProxy } from '../deferred/component-loader.service';\nimport { ComponentProxyDirective } from '../deferred/component-proxy.directive';\nimport { AdaptiveLayoutService } from '../layout/adaptive-layout.service';\nimport { ColumnSize } from '../layout/layout.model';\nimport { MatchSimulationComponent } from '../match-simulation/match-simulation.component';\nimport { TabBarEvent } from '../tab-bar/tab-bar.models';\nimport { VideoStreamButtonComponent } from '../video-stream/video-stream-button/video-stream-button.component';\nimport { EventVideoStreamBinding, VideoStreamComponentLoaderService } from '../video-stream/video-stream-component-loader.service';\nimport { WidgetComponent } from '../widget/core/widget-registry.service';\nimport { Actions } from './actions';\nimport { toggleAnimations } from './animations';\nimport { MediaComponentMapService, MediaComponentState } from './media-component-map.service';\nimport { MediaComponentsModule } from './media-components.module';\nimport { MediaTrackingService } from './media-tracking.service';\n\nclass TrackingEventNames {\n /* eslint-disable @typescript-eslint/naming-convention, no-underscore-dangle, id-blacklist, id-match */\n static readonly MediaModule_Animation_Tab_Click = 'MediaModule_Animation_Tab_Click';\n static readonly MediaModule_Video_Tab_Click = 'MediaModule_Video_Tab_Click';\n static readonly MediaModule_Stats_Tab_Click = (sportId: number): string => `Bet_Radar_GridStats_MediaModule_SB_ ${sportId}_Click`;\n}\n\nconst tabClickTrackingEvent = {\n [EventDetailsColumnType.Video]: TrackingEventNames.MediaModule_Video_Tab_Click,\n [EventDetailsColumnType.Animation]: TrackingEventNames.MediaModule_Animation_Tab_Click,\n [EventDetailsColumnType.Stats]: (sportId: number) => TrackingEventNames.MediaModule_Stats_Tab_Click(sportId),\n};\n\n@Component({\n selector: 'ms-media',\n templateUrl: 'media.html',\n providers: [MediaComponentMapService, MediaTrackingService], // additionally registering dedicated tracking\n // service, to make sure modular-tracking.service overrides tracking.service\n animations: [toggleAnimations],\n standalone: true,\n imports: [\n DynamicIoDirective,\n DynamicComponent,\n MediaComponentsModule,\n AsyncPipe,\n NgClass,\n NgStyle,\n ExpansionPanelComponent,\n MatchSimulationComponent,\n ComponentProxyDirective,\n VideoStreamButtonComponent,\n IconCustomComponent,\n ],\n})\nexport class MediaComponent extends WidgetComponent implements OnInit, OnDestroy {\n tabType = EventDetailsColumnType;\n mediaState: MediaComponentState;\n statsCollapsed = true;\n sportType = SportConstant;\n isExpandedMediaEnabled: boolean;\n isMobileExpand: boolean;\n\n readonly EXPAND_BUTTON_FADE_TIME = 500; // 0.5 sec\n\n private mediaState$: Observable;\n trackingSource = '';\n private readonly trackingMap = {\n [EventDetailsColumnType.Video]: 'VideoTab',\n [EventDetailsColumnType.Stats]: 'StatsTab',\n [EventDetailsColumnType.Animation]: 'AnimationTab',\n };\n\n private mediaSize = new Map([\n [ColumnSize.ExtraLarge, [{ width: 550 }]],\n [ColumnSize.Large, [{ width: 440 }]],\n [ColumnSize.Default, [{ target: 'gt-mw', width: 375 }, { width: 350 }]],\n ]);\n\n eventStatisticsComponent$ = defer(() => import('../statistics/event-statistics.component')).pipe(map((c) => c.EventStatisticsComponent));\n\n eventStatisticsComponentOutputs = {\n toggle: (expand: boolean) => this.onFootballStatExpand(expand),\n };\n\n private readonly _doc = inject(DOCUMENT);\n\n constructor(\n public sitecore: Sitecore,\n public deviceService: DeviceService,\n private trackingService: TrackingService,\n private mapperService: MediaComponentMapService,\n private mediaConfig: MediaConfig,\n private scrollContainer: ScrollContainerService,\n private routerEventsService: RouterEventsService,\n private mediaService: MediaQueryService,\n private competitionLogosService: CompetitionLogosService,\n private scoreboardBackgrounds: ScoreboardBackgroundConfig,\n private shortTeamNamesService: ShortTeamNamesService,\n loader: AnimationComponentLoaderService,\n private store: Store,\n private mediaTrackingService: MediaTrackingService,\n videoLoader: VideoStreamComponentLoaderService,\n private layoutService: AdaptiveLayoutService,\n ) {\n super();\n this.mediaState$ = store.select(mediaStateSelector);\n this.animationComponent = loader.getAnimationComponent();\n this.videoStreamComponent = videoLoader.getVideoStreamComponent();\n this.videoStreamComponent.subscribeToOutputs({ toggleMediaExpand: this.toggleMediaExpand });\n }\n\n sportId: number | null;\n isStatsExpanded = false;\n isLiveEvent: boolean | null;\n videoAndAnimationBgColor = {};\n statsBgColor = { 'background-image': '' };\n mediaHeight = 0;\n animationComponent: ComponentProxy;\n videoStreamComponent: ComponentProxy;\n private isEsport: boolean;\n streamingMessageHeight?: string;\n isOnEventDetails: boolean;\n\n ngOnInit(): void {\n this.init();\n\n this.mediaState$\n .pipe(\n map((mediaState: MediaState) => {\n this.sportId = this.getSportId(mediaState);\n\n const videoEvent = mediaState.video.eventId ? mediaState.eventInfos[mediaState.video.eventId].event : null;\n this.isEsport = !!videoEvent?.sport.isEsport;\n\n const statisticsEvent = mediaState.statistics.eventId ? mediaState.eventInfos[mediaState.statistics.eventId].event : null;\n this.isLiveEvent = statisticsEvent && statisticsEvent.live;\n\n return this.mapperService.mapContent(mediaState);\n }),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe((mediaComponentState) => {\n const previous = this.mediaState;\n const last = mediaComponentState;\n if (last.trackingSource !== TrackingVideoSource.Default) {\n this.trackingSource = last.trackingSource;\n }\n\n const scrollToTop =\n !previous ||\n last.activeTab !== previous.activeTab ||\n (last.animationEvent && last.animationEvent.id) !== (previous.animationEvent && previous.animationEvent.id) ||\n (last.statisticsEvent && last.statisticsEvent.id) !== (previous.statisticsEvent && previous.statisticsEvent.id) ||\n last.videoEventId !== previous.videoEventId;\n\n if (scrollToTop) {\n this.scrollContainer.scrollTo(0, 0);\n }\n this.mediaState = mediaComponentState;\n this.statsCollapsed = mediaComponentState.isStatsExpanderVisible;\n\n this.setShortNames();\n this.setBackGroundColor();\n this.setAnimation();\n this.setVideoStream();\n this.setStreamMessageHeight();\n });\n\n this.routerEventsService.currentActivationEnd\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((event) => this.onCurrentActivationEnd(event));\n\n this.mediaService\n .observe()\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => this.madiaSizeChanged());\n\n this.setBackGroundColor();\n this.setStreamMessageHeight();\n }\n\n isAnimationDisabled(): boolean {\n return this.mediaState.tabs.findIndex((tab) => tab.id === EventDetailsColumnType.Animation && tab.disabled) > -1;\n }\n\n private setShortNames(): void {\n const event = this.mediaState.animationEvent;\n\n if (!event || !this.competitionLogosService.getLogoUrl(event.sport.id, event.league.id) || !event.participants.length) {\n return;\n }\n\n if (\n event.participants.length > 0 &&\n this.shortTeamNamesService.shouldUseShortName(event.participants[0], event.sport.id, event.league.id, ShortNameModule.Grids)\n ) {\n this.setShortName('01', 0);\n }\n\n if (\n event.participants.length > 1 &&\n this.shortTeamNamesService.shouldUseShortName(event.participants[1], event.sport.id, event.league.id, ShortNameModule.Grids)\n ) {\n this.setShortName('02', 1);\n }\n }\n\n private setShortName(player: string, index: number): void {\n const scoreboard = this.mediaState.animationEvent!.scoreboard as any;\n const participants = this.mediaState.animationEvent!.participants;\n\n const val = participants[index].shortName;\n\n if (scoreboard.playerInfo) {\n scoreboard.playerInfo.players[player].teamName = val;\n }\n\n if (scoreboard.score?.playerInfo) {\n scoreboard.score.playerInfo.players[player].teamName = val;\n }\n }\n\n ngOnDestroy(): void {\n this.toggleMediaModule(false);\n }\n\n tabSelected(event: TabBarEvent): void {\n const mediaTab: MediaTab = { tabId: event.active.id, trackingSource: TrackingVideoSource.Default };\n const tabIndex = this.mediaState.tabs.findIndex((tab) => tab.id === mediaTab.tabId);\n if (tabClickTrackingEvent[event.active.id]) {\n mediaTab.trackingSource = TrackingVideoSource.MediaColumn;\n\n const mapEventObjByTabs: Record = {\n [EventDetailsColumnType.Stats]: this.mediaState.statisticsEvent,\n [EventDetailsColumnType.Animation]: this.mediaState.animationEvent,\n [EventDetailsColumnType.Video]: this.mediaState.videoEvent,\n };\n\n this.mediaTrackingService.trackTabClick(event.active.id, mapEventObjByTabs[event.active.id], tabIndex);\n }\n\n if (!event.active.disabled) {\n this.toggleCollapsedState(this.mediaState.tabs.length === 1 ? !this.mediaState.collapsed : false);\n this.updateActiveTab(mediaTab);\n }\n this.setAnimationHeight();\n }\n\n panelToggled(collapsed: boolean): void {\n this.mediaTrackingService.trackPanelToggle(collapsed);\n this.toggleCollapsedState(!collapsed);\n this.setAnimationHeight();\n }\n\n statsToggled(): void {\n this.statsCollapsed = !this.statsCollapsed;\n }\n\n getBackground(mediaState: MediaComponentState, type: EventDetailsColumnType): string {\n if (type === EventDetailsColumnType.Animation) {\n const animationHeight = mediaState.isAnimationAvailable ? 'animation-height' : '';\n\n return animationHeight + ' ' + this.mapperService.getBackgroundcolor(mediaState, type);\n } else if (type === EventDetailsColumnType.Stats) {\n const statsClass = 'stats-column';\n const collapsedClass = !this.isStatsExpanded ? 'prematch-collapsed' : '';\n\n return statsClass + ' ' + collapsedClass + ' ' + this.mapperService.getBackgroundcolor(mediaState, type);\n }\n\n return this.mapperService.getBackgroundcolor(mediaState, type);\n }\n\n onFootballStatExpand(expand: boolean): void {\n this.isStatsExpanded = expand;\n }\n\n madiaSizeChanged(): void {\n this.store.dispatch(Actions.breakpointChanged());\n }\n\n togglePin(isPinned: boolean): void {\n this.mediaTrackingService.trackPin(isPinned);\n this.store.dispatch(Actions.togglePin({ value: !isPinned }));\n }\n\n toggleMediaExpand = () => {\n this.toggleExpand(!this.mediaState.isExpanded);\n };\n\n toggleExpand(restoreExpandState: boolean): void {\n if (this.deviceService.isMobile) {\n this.isMobileExpand = true;\n }\n\n const state = this.mediaState.isExpanded ? 'Collapse' : 'Expand';\n let activeTab = this.trackingMap[this.mediaState.activeTab];\n\n if (!this.mediaState.videoEvent && activeTab === this.trackingMap[EventDetailsColumnType.Video]) {\n activeTab = 'MediaTab';\n }\n\n this.trackingService.track(trackingConstants.EVENT_MEDIA, {\n [trackingConstants.COMPONENT_SITE_ELEMENT_INTERCATIONS]: `MediaModule_${state}_${activeTab}`,\n });\n\n this.store.dispatch(Actions.toggleExpand({ value: restoreExpandState }));\n }\n\n private setAnimationHeight() {\n setTimeout(() => {\n const ele = this._doc.getElementById('mediaContainer');\n const divHeight = ele?.offsetHeight || 0;\n this.mediaHeight = divHeight;\n }, 500);\n }\n\n private setAnimation(): void {\n const event = this.mediaState.animationEvent;\n\n if (event) {\n this.animationComponent.update({ event, scoreboard: event.scoreboard, inColumn: true });\n }\n }\n\n private init(): void {\n this.store.dispatch(Actions.init());\n }\n\n private toggleMediaModule(enabled: boolean): void {\n this.store.dispatch(Actions.toggleMediaModule({ value: enabled }));\n }\n\n private updateActiveTab(mediaTab: MediaTab): void {\n this.store.dispatch(Actions.setActiveTab({ tab: mediaTab }));\n }\n\n private toggleCollapsedState(isCollapsed: boolean): void {\n this.store.dispatch(Actions.toggleCollapsedState({ value: isCollapsed }));\n }\n\n private setAvailableExpandLocation(): void {\n this.store.dispatch(Actions.setAvailableExpandLocation({ value: this.isExpandedMediaEnabled }));\n }\n\n private onCurrentActivationEnd(event: Optional): void {\n const snapshot = event?.snapshot;\n const routeTag = snapshot?.data['tag'];\n const sportId = snapshot?.data['model']?.model?.sport?.id ?? 0;\n this.isOnEventDetails = routeTag === RouteTag.EventDetails;\n\n if (sportId === this.sportType.Golf && this.isOnEventDetails) {\n this.mediaState.isDefaultExpanded = true;\n } else {\n this.mediaState.isDefaultExpanded = false;\n }\n\n this.isExpandedMediaEnabled =\n this.mediaConfig.isExpandedMediaEnabled && this.mediaConfig.expandedMediaEnabledLocations.indexOf(routeTag) > -1;\n\n // Reset/restore column width\n if (\n (this.mediaState.isExpanded && !this.isExpandedMediaEnabled) ||\n (this.mediaState.restoreExpandState && this.isExpandedMediaEnabled && !this.mediaState.isExpanded) ||\n (this.mediaState.isDefaultExpanded && this.isExpandedMediaEnabled && !this.mediaState.isExpanded)\n ) {\n this.toggleExpand(true);\n }\n\n if (this.isExpandedMediaEnabled !== this.mediaState.isLocationAllowsExpand) {\n this.setAvailableExpandLocation();\n }\n\n this.setStreamMessageHeight();\n }\n\n private setBackGroundColor = (): void => {\n if (this.mediaState.pendingEsport) {\n this.isEsport = !!this.mediaState.pendingEsport.sport.isEsport;\n this.sportId = this.mediaState.pendingEsport.sport.id;\n }\n\n const isBeSpokeSport = isBespokeSport(this.sportId || 0, this.isEsport);\n const background = this.scoreboardBackgrounds.backgrounds.find((x) => x.sportId === this.sportId && isBeSpokeSport);\n if (background) {\n const gradient = { 'background-image': `radial-gradient(circle 115px at top, ${background.innerColor}, ${background.outerColor})` };\n\n this.videoAndAnimationBgColor = this.isEsport ? gradient : { background: background.outerColor };\n this.statsBgColor = gradient;\n } else {\n this.videoAndAnimationBgColor = { background: '' };\n this.statsBgColor = { 'background-image': '' };\n }\n };\n\n private getSportId(mediaState: MediaState): number {\n if (mediaState.statistics.eventId) {\n return mediaState.eventInfos[mediaState.statistics.eventId].event.sport.id;\n } else if (mediaState.animation.eventId) {\n return mediaState.eventInfos[mediaState.animation.eventId].event.sport.id;\n } else if (mediaState.video.eventId) {\n return mediaState.eventInfos[mediaState.video.eventId].event.sport.id;\n }\n\n return 0;\n }\n\n private setVideoStream(): void {\n const event = this.mediaState.videoEvent;\n\n if (event) {\n this.videoStreamComponent.update({\n event,\n inColumn: true,\n autoplay: this.mediaState.videoAutoplay,\n isExpanded: this.mediaState.isExpanded,\n isExpandEnabled: this.isExpandedMediaEnabled,\n trackingSource: this.trackingSource,\n });\n }\n }\n\n private setStreamMessageHeight(): void {\n if (this.isOnEventDetails && this.mediaState.pendingEsport) {\n const sizes = this.mediaSize.get(this.layoutService.current.rightColumnSize) || [];\n for (const size of sizes) {\n if (!size.target || this.mediaService.isActive(size.target)) {\n this.streamingMessageHeight = `${round((size.width * 9) / 16)}px`;\n break;\n }\n }\n } else {\n this.streamingMessageHeight = undefined;\n }\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { WidgetType } from '@frontend/sports/types/components/widget';\nimport { OnFeatureInit } from '@frontend/vanilla/core';\n\nimport { WidgetRegistryService } from '../widget/core/widget-registry.service';\nimport { MediaComponent } from './media.component';\n\n@Injectable({ providedIn: 'root' })\nexport class MediaWidgetRegistration implements OnFeatureInit {\n constructor(private widgetRegistry: WidgetRegistryService) {}\n\n onFeatureInit() {\n this.widgetRegistry.registerLazy(WidgetType.Media, MediaComponent);\n }\n}\n","import { runOnFeatureInit } from '@frontend/vanilla/core';\n\nimport { MediaWidgetRegistration } from './media-widget.registration';\n\nexport function provide() {\n return [runOnFeatureInit(MediaWidgetRegistration)];\n}\n"],"names":["toggleAnimations","trigger","transition","style","animate","MediaComponentMapService","constructor","eventDetailsHelper","eventMediaHelperService","mediaConfig","defaultBackgroundColor","mapContent","mediaState","animationEvent","animation","eventId","eventInfos","event","statisticsEvent","statistics","videoEvent","video","isAnimationAvailable","hasAnimation","isStatsExpanderVisible","sport","id","SportConstant","Soccer","isEventLive","live","hasSecondEventStream","context","Object","keys","length","secondEvent","stream","undefined","isEventDetailPage","page","MediaModuleContextPage","EventDetails","collapsed","isCollapsed","trackingSource","isExpanded","mediaExpandState","isLocationAllowsExpand","restoreExpandState","isDefaultExpanded","videoEventId","activeTab","showVideoStreaming","EventDetailsColumnType","Video","Animation","videoDropdownEvents","dropdownEvents","videoPinned","pinned","videoUnpinInfoVisible","unpinInfoVisible","videoAutoplay","autoplay","videoPlaying","playing","tabs","mapTabs","pinEnabled","hasEventOnMedia","pendingEsport","sportId","push","title","icon","getVideoIcon","getAnimationIconForSport","disabled","hasAnimationOrSimulation","Stats","hasStats","hasBetRadarMappingID","showStatsCenterButton","activeIndex","findIndex","tab","active","getBackgroundcolor","type","getBackground","getBackgroundColor","ɵɵinject","EventDetailsHelperService","EventMediaHelperService","MediaConfig","factory","ɵfac","_MediaComponentMapService","DYNAMIC_COMPONENT","InjectionToken","DynamicComponentsLoaderService","components","Map","providedComponents","inject","optional","allComponents","componentList","key","value","entries","selector","componentType","forEach","x","register","componentClass","set","get","_DynamicComponentsLoaderService","RenderDynamicDirective","elementRef","ElementRef","injector","Injector","envInjector","EnvironmentInjector","dynamicComponents","ngAfterViewInit","component","element","nativeElement","foundElements","Array","from","querySelectorAll","elementHost","cmp","createComponent","hostElement","elementInjector","environmentInjector","cmpMirror","reflectComponentType","attributes","attribute","name","inputs","some","propName","setInput","changeDetectorRef","detectChanges","ie","selectors","standalone","_RenderDynamicDirective","provideDynamicComponents","map","provide","useValue","multi","DynamicIconComponent","html","input","required","sanitizer","DomSanitizer","parsedHtml","computed","bypassSecurityTrustHtml","T","features","ɵɵProvidersFeature","IconCustomComponent","ɵɵStandaloneFeature","decls","vars","consts","template","rf","ctx","ɵɵelement","ɵɵproperty","ɵɵsanitizeHtml","encapsulation","_DynamicIconComponent","ɵɵelementContainerStart","ɵɵtemplate","EmptyMediaComponent_ng_container_0_Conditional_1_Template","Ee","d","ɵɵadvance","ɵɵconditional","ctx_r0","isEventSelected","message","EmptyMediaComponent_ng_container_1_Conditional_1_Template","EmptyMediaComponent_ng_container_1_Conditional_2_Template","EmptyMediaComponent","sitecore","module","EpcotModule","Statsindicator","className","media","NoLiveStreamingForEvent","NoLiveStreamingForEventPrematch","emptyList","SelectAnimationFromLiveEvents","SelectMediaFromList","replace","n","ɵɵdirectiveInject","Sitecore","hostVars","hostBindings","ɵɵclassMap","EmptyMediaComponent_ng_container_0_Template","EmptyMediaComponent_ng_container_1_Template","ɵɵpureFunction1","_c0","_c1","_EmptyMediaComponent","ScrollToActiveDirective","timer","child","querySelector","setAnimationFrame","scrollTop","offsetTop","clientHeight","TimerService","_ScrollToActiveDirective","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","selectedEvent","ɵɵtextInterpolate","ɵɵtextInterpolate1","selectorTitle","P","ɵɵlistener","child_r4","ɵɵrestoreView","_r3","$implicit","ɵɵnextContext","ɵɵresetView","changed","ɵɵclassProp","selectedEventId","ɵɵrepeaterCreate","EventSelectorComponent_Conditional_5_For_3_For_5_Template","ɵɵrepeaterTrackByIndex","item_r5","ɵɵrepeater","children","$event","_r2","scrolled","EventSelectorComponent_Conditional_5_For_3_Template","containerHeight","eventsList","containerHeightMap","RightColumnSize","ExtraLarge","Large","EventSelectorComponent","trackingService","adaptiveLayoutService","store","clickout","contains","target","ngOnInit","getDropdownHeight","ngOnChanges","changes","EventSelectorTitle","NoLiveStreamingEvents","find","toString","fetchVideoEvents","currentValue","previousValue","unsetEvent","current","rightColumnSize","toggleSelector","track","trackingConstants","EVENT_MEDIA","COMPONENT_SITE_ELEMENT_INTERCATIONS","setDropdownEvent","stopPropagation","dispatch","Actions","columnType","MediaApiActions","setEventId","payload","source","MediaEventSource","EventSwitcher","trackingVideoSource","TrackingVideoSource","TrackingService","AdaptiveLayoutService","Store","ɵɵresolveWindow","EventSelectorComponent_Conditional_2_Template","EventSelectorComponent_Conditional_3_Template","EventSelectorComponent_Conditional_4_Template","EventSelectorComponent_Conditional_5_Template","ae","$","S","_EventSelectorComponent","UnpinInfoComponent","close","closeInfoMessage","acceptUnpinInfoMessage","UnpinOnboarding","_UnpinInfoComponent","VideoPinComponent","onClick","toggle","emit","epcotConfigService","class","EventEmitter","isEpcotEnabled","isEnabled","EpcotConfigService","isPinned","_VideoPinComponent","MediaComponentsModule","we","Ne","CommonModule","DirectivesModule","EpcotNotificationComponent","TabBarModule","ExpansionPanelComponent","_MediaComponentsModule","MediaTrackingService","mediaTabs","trackTabClick","eventActiveId","index","trackingData","__spreadProps","__spreadValues","baseTracking","COMPONENT_ACTION_EVENT","COMPONENT_EVENT_DETAILS","NOT_APPLICABLE","SPORT_ID","SPORT_EVENT_ID","COMPONENT_CONTENT_POSITION","EVENT_TRACKING","trackPanelToggle","trackPin","COMPONENT_CATEGORY_EVENT","COMPONENT_LABEL_EVENT","COMPONENT_POSITION_EVENT","COMPONENT_LOCATION_EVENT","COMPONENT_URL_CLICKED","providedIn","_MediaTrackingService","ctx_r1","toggleExpand","ɵɵtwoWayListener","i0","ɵɵtwoWayBindingSet","isMobileExpand","_c3","deviceService","isTablet","EXPAND_BUTTON_FADE_TIME","ɵɵtwoWayProperty","ɵɵelementContainer","MediaComponent_Conditional_0_Conditional_6_Case_2_Conditional_5_ng_container_0_Template","videoStreamComponent","_r4","togglePin","MediaComponent_Conditional_0_Conditional_6_Case_2_Conditional_3_Template","MediaComponent_Conditional_0_Conditional_6_Case_2_Conditional_5_Template","MediaComponent_Conditional_0_Conditional_6_Case_2_Conditional_6_Template","MediaComponent_Conditional_0_Conditional_6_Case_2_Conditional_7_Template","ɵɵstyleProp","streamingMessageHeight","tabType","videoAndAnimationBgColor","isOnEventDetails","runningBallDataId","participants","MediaComponent_Conditional_0_Conditional_6_Case_3_Conditional_1_Conditional_1_ng_container_0_Template","animationComponent","MediaComponent_Conditional_0_Conditional_6_Case_3_Conditional_1_Conditional_0_Template","MediaComponent_Conditional_0_Conditional_6_Case_3_Conditional_1_Conditional_1_Template","MediaComponent_Conditional_0_Conditional_6_Case_3_Conditional_1_Template","MediaComponent_Conditional_0_Conditional_6_Case_3_Conditional_2_Template","isAnimationDisabled","ɵɵpipeBind1","eventStatisticsComponent$","_c4","eventStatisticsComponentOutputs","MediaComponent_Conditional_0_Conditional_6_Case_4_Conditional_1_Template","statsBgColor","MediaComponent_Conditional_0_Conditional_6_Conditional_1_Template","MediaComponent_Conditional_0_Conditional_6_Case_2_Template","MediaComponent_Conditional_0_Conditional_6_Case_3_Template","MediaComponent_Conditional_0_Conditional_6_Case_4_Template","_c2","mediaHeight","isExpandedMediaEnabled","tmp_4_0","_r1","tabSelected","panelToggled","MediaComponent_Conditional_0_Conditional_6_Template","Title","TrackingEventNames","_TrackingEventNames","MediaModule_Animation_Tab_Click","MediaModule_Video_Tab_Click","MediaModule_Stats_Tab_Click","tabClickTrackingEvent","MediaComponent","WidgetComponent","mapperService","scrollContainer","routerEventsService","mediaService","competitionLogosService","scoreboardBackgrounds","shortTeamNamesService","loader","mediaTrackingService","videoLoader","layoutService","statsCollapsed","sportType","trackingMap","mediaSize","ColumnSize","width","Default","defer","pipe","c","EventStatisticsComponent","expand","onFootballStatExpand","_doc","DOCUMENT","isStatsExpanded","toggleMediaExpand","setBackGroundColor","isEsport","isBeSpokeSport","isBespokeSport","background","backgrounds","gradient","innerColor","outerColor","mediaState$","select","mediaStateSelector","getAnimationComponent","getVideoStreamComponent","subscribeToOutputs","init","getSportId","isLiveEvent","takeUntilDestroyed","destroyRef","subscribe","mediaComponentState","previous","last","scrollTo","setShortNames","setAnimation","setVideoStream","setStreamMessageHeight","currentActivationEnd","onCurrentActivationEnd","observe","madiaSizeChanged","getLogoUrl","league","shouldUseShortName","ShortNameModule","Grids","setShortName","player","_a","scoreboard","val","shortName","playerInfo","players","teamName","score","ngOnDestroy","toggleMediaModule","mediaTab","tabId","tabIndex","MediaColumn","mapEventObjByTabs","toggleCollapsedState","updateActiveTab","setAnimationHeight","statsToggled","statsClass","collapsedClass","breakpointChanged","isMobile","state","setTimeout","ele","getElementById","divHeight","offsetHeight","update","inColumn","enabled","setActiveTab","setAvailableExpandLocation","_b","_c","snapshot","routeTag","data","model","RouteTag","Golf","expandedMediaEnabledLocations","indexOf","isExpandEnabled","sizes","size","isActive","round","DeviceService","ScrollContainerService","RouterEventsService","MediaQueryService","CompetitionLogosService","ScoreboardBackgroundConfig","ShortTeamNamesService","AnimationComponentLoaderService","VideoStreamComponentLoaderService","ɵɵInheritDefinitionFeature","MediaComponent_Conditional_0_Template","DynamicIoDirective","DynamicComponent","ClassAutoRemoveDirective","TabBarComponent","AsyncPipe","NgClass","NgStyle","MatchSimulationComponent","ComponentProxyDirective","VideoStreamButtonComponent","_MediaComponent","MediaWidgetRegistration","widgetRegistry","onFeatureInit","registerLazy","WidgetRegistryService","V","_MediaWidgetRegistration","runOnFeatureInit"],"mappings":"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"}