{"version":3,"file":"chunk-ndrydmsz.js","sources":["packages/sports/web/app/src/video-stream/video-stream-tracking.service.ts","packages/sports/web/app/src/video-stream/video-stream-button/video-stream-button.component.html","packages/sports/web/app/src/video-stream/video-stream-button/video-stream-button.component.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport {\n    EsportTrackingValues,\n    NOT_APPLICABLE,\n    TrackingService,\n    VideoStreamTrackingStatus,\n    trackingConstants,\n} from '@frontend/sports/tracking/feature';\nimport { UserService } from '@frontend/sports/user/feature';\n\nimport { TrackVideoStreaming } from './video-tracking.model';\n\n@Injectable({ providedIn: 'root' })\nexport class VideoStreamTrackingService {\n    constructor(\n        private trackingService: TrackingService,\n        private userService: UserService,\n    ) {}\n\n    track(event: EventModel, trackingSource: string, isVideoAvailable: boolean): void {\n        const trackingData: TrackVideoStreaming = {\n            [trackingConstants.COMPONENT_CATEGORY_EVENT]: VideoStreamTrackingStatus.VideoStreaming,\n            [trackingConstants.COMPONENT_LABEL_EVENT]: event.stream ? event.stream.provider : '',\n            [trackingConstants.COMPONENT_ACTION_EVENT]: VideoStreamTrackingStatus.VideoInitiated,\n            [trackingConstants.COMPONENT_LOCATION_EVENT]: event.name,\n            [trackingConstants.COMPONENT_POSITION_EVENT]: trackingSource,\n            [trackingConstants.COMPONENT_EVENT_DETAILS]: !this.userService.isAuthenticated\n                ? VideoStreamTrackingStatus.UserNotLoggedIn\n                : !isVideoAvailable\n                  ? VideoStreamTrackingStatus.VideoContent\n                  : VideoStreamTrackingStatus.VideoStarted,\n            [trackingConstants.COMPONENT_URL_CLICKED]: VideoStreamTrackingStatus.NotApplicable,\n            [trackingConstants.VIDEO_PROVIDER_EVENT_ID]: event.stream ? event.stream.id : '',\n            [trackingConstants.VIDEO_INTERNAL_EVENT_ID]: event.id,\n        };\n\n        this.trackingService.track('Event.SelectVideo', trackingData);\n    }\n\n    trackVideoStreamButtonClick(eventName: string): void {\n        this.trackingService.track(trackingConstants.EVENT_TRACKING, {\n            [trackingConstants.COMPONENT_CATEGORY_EVENT]: 'scoreboard',\n            [trackingConstants.COMPONENT_LABEL_EVENT]: EsportTrackingValues.Esports,\n            [trackingConstants.COMPONENT_ACTION_EVENT]: 'click',\n            [trackingConstants.COMPONENT_POSITION_EVENT]: NOT_APPLICABLE,\n            [trackingConstants.COMPONENT_LOCATION_EVENT]: eventName,\n            [trackingConstants.COMPONENT_EVENT_DETAILS]: VideoStreamTrackingStatus.StreamingAvailableCta,\n            [trackingConstants.COMPONENT_URL_CLICKED]: NOT_APPLICABLE,\n        });\n    }\n}\n","<span class=\"sports-video\"></span>\n@if (showCountdown) {\n    {{ sitecore.eSports.StreamingStarting }}\n    <ms-count-down [until]=\"event.startDate\" (end)=\"onCountdownEnded()\"></ms-count-down>\n} @else {\n    {{ sitecore.eSports.StreamingAvailable }}\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Input, OnChanges, Output } from '@angular/core';\n\nimport { EventModel } from '@frontend/sports/betting-offer/feature/model';\nimport { Sitecore } from '@frontend/sports/common/client-config-data-access';\n\nimport { TimerModule } from '../../timers/timer.module';\nimport { VideoStreamTrackingService } from '../video-stream-tracking.service';\n\n@Component({\n    selector: 'ms-video-stream-button',\n    templateUrl: 'video-stream-button.component.html',\n    styleUrl: './video-stream-button.component.scss',\n    standalone: true,\n    imports: [TimerModule],\n    changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class VideoStreamButtonComponent implements OnChanges {\n    @HostBinding('class') className = 'video-stream-button';\n    @HostListener('click')\n    onButtonClick(): void {\n        if (!this.showCountdown) {\n            this.buttonClicked.emit();\n            this.trackingService.trackVideoStreamButtonClick(this.event.name);\n        }\n    }\n\n    @Input() event: EventModel;\n    @Input() isEventPending?: boolean;\n    @Output() buttonClicked = new EventEmitter<void>();\n    @Output() countDownEnded = new EventEmitter<void>();\n\n    showCountdown: boolean;\n\n    constructor(\n        public sitecore: Sitecore,\n        private trackingService: VideoStreamTrackingService,\n    ) {}\n\n    ngOnChanges(): void {\n        this.showCountdown = this.isEventPending ? true : !this.event.scoreboard.started;\n    }\n\n    onCountdownEnded(): void {\n        this.showCountdown = !!this.isEventPending;\n        this.countDownEnded.emit();\n    }\n}\n"],"names":["VideoStreamTrackingService","constructor","trackingService","userService","track","event","trackingSource","isVideoAvailable","trackingData","trackingConstants","COMPONENT_CATEGORY_EVENT","VideoStreamTrackingStatus","VideoStreaming","COMPONENT_LABEL_EVENT","stream","provider","COMPONENT_ACTION_EVENT","VideoInitiated","COMPONENT_LOCATION_EVENT","name","COMPONENT_POSITION_EVENT","COMPONENT_EVENT_DETAILS","isAuthenticated","VideoStarted","VideoContent","UserNotLoggedIn","COMPONENT_URL_CLICKED","NotApplicable","VIDEO_PROVIDER_EVENT_ID","id","VIDEO_INTERNAL_EVENT_ID","trackVideoStreamButtonClick","eventName","EVENT_TRACKING","EsportTrackingValues","Esports","NOT_APPLICABLE","StreamingAvailableCta","ɵɵinject","TrackingService","UserService","factory","ɵfac","providedIn","_VideoStreamTrackingService","I","ɵɵtext","ɵɵelementStart","ɵɵlistener","ɵɵrestoreView","_r1","ctx_r1","ɵɵnextContext","ɵɵresetView","onCountdownEnded","ɵɵelementEnd","c","ɵɵtextInterpolate1","sitecore","eSports","StreamingStarting","ɵɵadvance","ɵɵproperty","startDate","StreamingAvailable","VideoStreamButtonComponent","onButtonClick","showCountdown","buttonClicked","emit","className","EventEmitter","countDownEnded","ngOnChanges","isEventPending","scoreboard","started","ɵɵdirectiveInject","Sitecore","h","selectors","hostVars","hostBindings","rf","ctx","ɵɵclassMap","ɵɵelement","ɵɵtemplate","VideoStreamButtonComponent_Conditional_1_Template","VideoStreamButtonComponent_Conditional_2_Template","ɵɵconditional","TimerModule","CountDownComponent","styles","changeDetection","_VideoStreamButtonComponent"],"mappings":"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"}