{"version":3,"file":"chunk-frz5i5n3.js","sources":["packages/casino/platform-lib/casino-game-videos/cms-video/cms-video.component.html","packages/casino/platform-lib/casino-game-videos/cms-video/cms-video.component.ts","packages/casino/platform-lib/casino-game-videos/video/video.component.html","packages/casino/platform-lib/casino-game-videos/video/video.component.ts","packages/casino/platform-lib/casino-game-videos/video-wrapper/video-wrapper.component.html","packages/casino/platform-lib/casino-game-videos/video-wrapper/video-wrapper.component.ts","packages/casino/platform-lib/casino-game-videos/casino-game-videos.component.ts","packages/casino/platform-lib/casino-game-videos/casino-game-videos.component.html"],"sourcesContent":["
\n
\n
\n \n \n
\n
\n
\n \n \n \n
\n
\n","import { NgClass, NgIf, NgStyle } from '@angular/common';\nimport { AfterViewInit, Component, DestroyRef, Input, OnChanges, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport {\n CasinoCoreGamelaunchService,\n CasinoManager,\n ConfigProviderService,\n GameLaunch,\n GameManagerService,\n GameService,\n} from '@casinocore/platform/core';\nimport { CloudflareStreamComponent, CloudflareStreamModule } from '@cloudflare/stream-angular';\nimport { DynamicHtmlDirective, NavigationService, TrackingService } from '@frontend/vanilla/core';\nimport { DestroyableDirective, InViewportDirective } from 'ng-in-viewport';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'cc-cms-video',\n templateUrl: 'cms-video.component.html',\n standalone: true,\n imports: [NgIf, DestroyableDirective, InViewportDirective, CloudflareStreamModule, DynamicHtmlDirective, NgStyle, NgClass],\n})\nexport class CMSVideoComponent implements OnInit, OnChanges, OnDestroy, AfterViewInit {\n @Input() url: string;\n @Input() imageThumbnail: any;\n @Input() type: string;\n @Input() launchUrl: any;\n @Input() videoName: string;\n @Input() subcategory: any;\n @Input() lobbyType: string;\n @Input() gameContainer: string;\n @Input() displayVideoinLoop: boolean;\n @Input() videoBoxContent: any;\n @ViewChild('cmsVideoPlayer') cmsVideoPlayer: CloudflareStreamComponent;\n\n mute: boolean = true;\n isMuted: boolean = true;\n isReplay: boolean = true;\n gameObj: any = {};\n isTouch: boolean;\n isVideoVisible: boolean = false;\n cmsIconBgClr: string;\n cmsIconClr: string;\n cmsReloadicon: string;\n cmsSoundicon: string;\n cmsMuteicon: string;\n cmsVolumbtn: any;\n imageThumbnailSrc: string;\n videoLaunchRealtiveUri: string;\n videoUrl: string;\n viewportReached: boolean;\n enableVideoPhase2: boolean;\n cmsIndex: number = 0;\n isScroll: boolean = false;\n firstload: boolean;\n timeoutValue: number = 0;\n overlayVisibilitySubscription: Subscription;\n stopAudioSubscription: Subscription;\n lobbySubscription: Subscription;\n displayNetVideo: string = 'none';\n\n constructor(\n private casinoManager: CasinoManager,\n private navigation: NavigationService,\n private casinoCoreGamelaunchService: CasinoCoreGamelaunchService,\n private trackingService: TrackingService,\n private gameService: GameService,\n private configProviderService: ConfigProviderService,\n private destroyRef: DestroyRef,\n private gameManagerService: GameManagerService,\n ) {}\n\n ngOnInit(): void {\n document.addEventListener('scroll', () => {\n if (!this.isScroll) {\n this.isScroll = true;\n this.isReplay = false;\n this.displayNetVideo = 'block';\n }\n });\n this.videoUrl = this.url;\n this.isTouch = this.casinoManager.isTouch();\n this.updateMuteAndSoundIcons(this.mute);\n const mcPageConfig = this.configProviderService.provideMcPageConfig();\n this.videoLaunchRealtiveUri = '/' + mcPageConfig.labelPrefix + '/launchng/';\n this.dataBindings();\n this.overlayVisibilitySubscription = this.gameService.overlayVisibilityStatus.subscribe((isvisible: any) => {\n if (isvisible && this.isVideoVisible) {\n const video: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n if (video && video.hasOwnProperty('pause')) {\n video.pause();\n }\n } else if (!isvisible && this.isVideoVisible) {\n const video: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n if (video && video.hasOwnProperty('play')) {\n video.play();\n }\n }\n });\n this.lobbySubscription = this.casinoManager.lobbyObservable.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((lobbyModel: any) => {\n if (lobbyModel) {\n this.isReplay = false;\n }\n });\n this.stopAudioSubscription = this.casinoCoreGamelaunchService.stopAudioObservable.subscribe((outOfViewPort: boolean | null) => {\n if (outOfViewPort === false) {\n const video: CloudflareStreamComponent = this.cmsVideoPlayer;\n if (video) {\n const stream: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n stream.muted = this.isMuted;\n video.muted = this.isMuted;\n this.updateMuteAndSoundIcons(video.muted);\n }\n } else if (outOfViewPort === true) {\n const video: CloudflareStreamComponent = this.cmsVideoPlayer;\n if (video) {\n const stream: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n this.isMuted = !!video.muted;\n stream.muted = true;\n video.muted = true;\n this.updateMuteAndSoundIcons(video.muted);\n }\n }\n });\n const features: any = this.configProviderService.provideFeaturesConfig();\n this.enableVideoPhase2 = features.enableVideoPhase2;\n }\n updateStreamClass(): void {\n if (!this.cmsVideoPlayer?.streamEl?.nativeElement?.classList.contains('streamClass'))\n this.cmsVideoPlayer?.streamEl?.nativeElement?.classList.add('streamClass');\n }\n\n ngOnChanges(): void {\n if (this.imageThumbnail && this.imageThumbnail.src) {\n this.imageThumbnailSrc = this.imageThumbnail.src;\n } else {\n this.imageThumbnailSrc = '';\n }\n }\n\n replayVideo() {\n this.isReplay = false;\n const video: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n if (video) {\n if (video.hasOwnProperty('play')) {\n video.play();\n }\n this.trackingService.triggerEvent('Event.Tracking', {\n 'component.CategoryEvent': 'Teaser-EmbeddedVideo',\n 'component.LabelEvent': this.videoName,\n 'component.ActionEvent': 'Video Play',\n 'component.PositionEvent': 'VideoTeaser - ' + 1,\n 'component.LocationEvent': 'Video replayed',\n 'component.EventDetails': 'Replay Icon clicked by the user',\n 'component.URLClicked': 'not applicable',\n });\n }\n }\n\n launchGame(navigate: boolean) {\n const gameModel = new GameLaunch();\n const gameId: string = this.getGameIdFromLaunchUrl(this.launchUrl.url);\n gameModel.game = this.gameManagerService.getGameInfo(gameId);\n if (!gameModel.game) {\n gameModel.game = {};\n }\n gameModel.game.gameId = gameId;\n gameModel.game.lobbyType = this.lobbyType;\n gameModel.isTouch = this.isTouch;\n gameModel.gamePosition = 0;\n gameModel.categoryType = this.subcategory;\n gameModel.from = 'q';\n gameModel.replaceRouteInHistory = false;\n gameModel.isDemoLaunch = false;\n gameModel.skipUnfinGame = false;\n gameModel.gameLaunchedFrom = 'Netflix_Video';\n gameModel.gameSection = 'Netflix_Video';\n gameModel.gameContainer = this.gameContainer;\n gameModel.returnUrl = window.location.href;\n gameModel.clickTimeStamp = this.casinoCoreGamelaunchService.currentTimeStamp();\n if (this.launchUrl) {\n if (this.isGameUrl(this.launchUrl.url) && !navigate) {\n this.casinoCoreGamelaunchService.launchGame(gameModel);\n } else {\n this.navigation.goTo(this.launchUrl?.url);\n }\n }\n }\n\n getGameIdFromLaunchUrl(link: string) {\n return link.substr(link.indexOf(this.videoLaunchRealtiveUri) + this.videoLaunchRealtiveUri.length);\n }\n\n isGameUrl(link: string) {\n return link.indexOf(this.videoLaunchRealtiveUri) > 0;\n }\n\n toggleMute() {\n const video: CloudflareStreamComponent = this.cmsVideoPlayer;\n if (video) {\n const stream: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n stream.muted = !video.muted;\n video.muted = !video.muted;\n this.isMuted = video.muted;\n this.updateMuteAndSoundIcons(video.muted);\n }\n }\n\n updateMuteAndSoundIcons(muted: boolean) {\n const globalConfig = this.configProviderService.provideGlobalConfig();\n if (muted) {\n this.cmsVolumbtn = globalConfig.messages['NetflixMuteicon'];\n } else {\n this.cmsVolumbtn = globalConfig.messages['NetflixSoundicon'];\n }\n }\n\n isElementinViewPort({ visible }: { visible: boolean }): void {\n if (!this.firstload && visible && !this.isScroll) {\n const features: any = this.configProviderService.provideFeaturesConfig();\n this.firstload = true;\n this.timeoutValue = features.netflixVideoTimeout;\n this.isScroll = true;\n this.displayNetVideo = 'block';\n }\n this.isReplay = false;\n this.isVideoVisible = visible;\n setTimeout(() => {\n if (this.cmsVideoPlayer) {\n const video: any = this.cmsVideoPlayer?.streamEl?.nativeElement;\n if (video) {\n if (visible) {\n if (!this.viewportReached) {\n this.cmsVideoPlayer.src = this.url;\n this.videoUrl = this.url;\n this.timeoutValue = 0;\n this.viewportReached = true;\n this.cmsIndex = 4;\n }\n if (this.cmsVideoPlayer.src && video) {\n //console.log('video', video);\n if (video.hasOwnProperty('play')) {\n video.play();\n }\n }\n this.trackingService.triggerEvent('Event.Tracking', {\n 'component.CategoryEvent': 'Teaser-EmbeddedVideo',\n 'component.LabelEvent': this.videoName,\n 'component.ActionEvent': 'Video Play',\n 'component.PositionEvent': 'VideoTeaser - ' + 1,\n 'component.LocationEvent': 'Video started',\n 'component.EventDetails': 'Video Entered View Port Auto Play initiated',\n 'component.URLClicked': 'not applicable',\n });\n } else {\n this.cmsIndex = 0;\n if (this.cmsVideoPlayer?.src && video.hasOwnProperty('pause')) video.pause();\n this.videoEndTracking();\n }\n }\n }\n }, this.timeoutValue);\n }\n\n ngAfterViewInit(): void {\n if (this.cmsVideoPlayer) {\n this.updateStreamClass();\n }\n }\n\n videoEnded() {\n this.isReplay = true;\n this.videoEndTracking();\n }\n\n videoEndTracking() {\n const currentTime = this.cmsVideoPlayer?.streamEl?.nativeElement?.currentTime;\n if (currentTime && currentTime >= 0) {\n const minutes = ('00' + Math.floor((currentTime % 3600) / 60)).slice(-2);\n const seconds = ('00' + ((currentTime % 3600) % 60)).slice(-2);\n const eventDetails = minutes + ':' + seconds;\n let locationEvent = Math.ceil((currentTime * 100) / currentTime);\n if (locationEvent < 50) {\n locationEvent = 25;\n } else if (locationEvent < 75) {\n locationEvent = 50;\n } else if (locationEvent < 100) {\n locationEvent = 75;\n } else if (locationEvent == 100) {\n locationEvent = 100;\n }\n this.trackingService.triggerEvent('Event.Tracking', {\n 'component.CategoryEvent': 'Teaser-EmbeddedVideo',\n 'component.LabelEvent': this.videoName,\n 'component.ActionEvent': 'VideoEnded',\n 'component.PositionEvent': 'VideoTeaser - ' + 1,\n 'component.LocationEvent': locationEvent + '%',\n 'component.EventDetails': eventDetails,\n 'component.URLClicked': 'not applicable',\n });\n }\n }\n\n dataBindings() {\n const globalConfig = this.configProviderService.provideGlobalConfig();\n this.cmsIconBgClr = globalConfig.messages['NetflixIconBgClr'];\n this.cmsIconClr = globalConfig.messages['NetflixIconClr'];\n this.cmsReloadicon = globalConfig.messages['NetflixReloadicon'];\n this.cmsSoundicon = globalConfig.messages['NetflixSoundicon'];\n this.cmsMuteicon = globalConfig.messages['NetflixMuteicon'];\n }\n\n ngOnDestroy(): void {\n if (this.overlayVisibilitySubscription) this.overlayVisibilitySubscription.unsubscribe();\n if (this.stopAudioSubscription) this.stopAudioSubscription.unsubscribe();\n if (this.lobbySubscription) this.lobbySubscription.unsubscribe();\n }\n}\n","
\n
\n \n
\n \n \n  \n \n \n  \n \n
\n
\n","import { NgClass, NgIf, NgStyle } from '@angular/common';\nimport { AfterViewInit, Component, DestroyRef, ElementRef, Input, OnChanges, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport {\n CasinoCoreGamelaunchService,\n CasinoManager,\n ConfigProviderService,\n GameLaunch,\n GameManagerService,\n GameService,\n} from '@casinocore/platform/core';\nimport { DynamicHtmlDirective, NavigationService, TrackingService } from '@frontend/vanilla/core';\nimport { DestroyableDirective, InViewportDirective } from 'ng-in-viewport';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'cc-video',\n templateUrl: 'video.component.html',\n standalone: true,\n imports: [NgIf, DestroyableDirective, InViewportDirective, DynamicHtmlDirective, NgStyle, NgClass],\n})\nexport class VideoComponent implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n @Input() url: string;\n @Input() imageThumbnail: any;\n @Input() type: string;\n @Input() launchUrl: any;\n @Input() videoName: string;\n @Input() subcategory: any;\n @Input() lobbyType: string;\n @Input() gameContainer: string;\n @Input() displayVideoinLoop: boolean;\n @Input() videoBoxContent: any;\n @ViewChild('videoPlayer') videoPlayer: ElementRef;\n mute: boolean = true;\n isMuted: boolean = true;\n isReplay: boolean = true;\n gameObj: any = {};\n isTouch: boolean;\n isVideoVisible: boolean = false;\n NetflixIconBgClr: string;\n NetflixIconClr: string;\n NetflixReloadicon: string;\n NetflixSoundicon: string;\n NetflixMuteicon: string;\n NetflixVolumbtn: any;\n imageThumbnailSrc: string;\n videoLaunchRealtiveUri: string;\n videoUrl: string;\n viewportReached: boolean;\n enableVideoPhase2: boolean;\n isScroll: boolean = false;\n firstload: boolean;\n timeoutValue: number = 0;\n overlayVisibilitySubscription: Subscription;\n stopAudioSubscription: Subscription;\n lobbySubscription: Subscription;\n\n constructor(\n private casinoManager: CasinoManager,\n private navigation: NavigationService,\n private casinoCoreGamelaunchService: CasinoCoreGamelaunchService,\n private trackingService: TrackingService,\n private gameService: GameService,\n private configProviderService: ConfigProviderService,\n private destroyRef: DestroyRef,\n private gameManagerService: GameManagerService,\n ) {}\n\n ngOnInit() {\n document.addEventListener('scroll', () => {\n this.isScroll = true;\n this.isReplay = false;\n });\n this.isTouch = this.casinoManager.isTouch();\n this.updateMuteAndSoundIcons(this.mute);\n const mcPageConfig = this.configProviderService.provideMcPageConfig();\n this.videoLaunchRealtiveUri = '/' + mcPageConfig.labelPrefix + '/launchng/';\n this.dataBindings();\n // todo gameservice need to handle\n this.overlayVisibilitySubscription = this.gameService.overlayVisibilityStatus.subscribe((isvisible: any) => {\n if (isvisible && this.isVideoVisible) {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n video.pause();\n }\n } else if (!isvisible && this.isVideoVisible) {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n video.play();\n }\n }\n });\n this.lobbySubscription = this.casinoManager.lobbyObservable.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((lobbyModel: any) => {\n if (lobbyModel) {\n this.isReplay = false;\n }\n });\n this.stopAudioSubscription = this.casinoCoreGamelaunchService.stopAudioObservable.subscribe((outOfViewPort: boolean | null) => {\n if (outOfViewPort === false) {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n video.muted = this.isMuted;\n this.updateMuteAndSoundIcons(video.muted);\n }\n } else if (outOfViewPort === true) {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n this.isMuted = video.muted;\n video.muted = true;\n this.updateMuteAndSoundIcons(video.muted);\n }\n }\n });\n const features: any = this.configProviderService.provideFeaturesConfig();\n this.enableVideoPhase2 = features.enableVideoPhase2;\n }\n\n ngOnChanges() {\n if (this.imageThumbnail && this.imageThumbnail.src) {\n this.imageThumbnailSrc = this.imageThumbnail.src;\n } else {\n this.imageThumbnailSrc = '';\n }\n }\n\n ngAfterViewInit() {\n this.toggleLoop();\n }\n\n toggleLoop() {\n const video: HTMLVideoElement = this.videoPlayer && this.videoPlayer.nativeElement;\n if (video && !this.displayVideoinLoop) {\n video.loop = false;\n }\n }\n\n toggleMute() {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n video.muted = !video.muted;\n this.isMuted = video.muted;\n this.updateMuteAndSoundIcons(video.muted);\n }\n }\n\n updateMuteAndSoundIcons(muted: boolean) {\n const globalConfig = this.configProviderService.provideGlobalConfig();\n if (muted) {\n this.NetflixVolumbtn = globalConfig.messages['NetflixMuteicon'];\n } else {\n this.NetflixVolumbtn = globalConfig.messages['NetflixSoundicon'];\n }\n }\n\n isElementinViewPort({ visible }: { target: Element; visible: boolean }): void {\n if (!this.firstload && visible && !this.isScroll) {\n const features: any = this.configProviderService.provideFeaturesConfig();\n this.firstload = true;\n this.timeoutValue = features.netflixVideoTimeout;\n this.isScroll = true;\n }\n this.isReplay = false;\n this.isVideoVisible = visible;\n setTimeout(() => {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n if (visible) {\n if (!this.viewportReached) {\n this.videoUrl = this.url;\n this.viewportReached = true;\n this.timeoutValue = 0;\n }\n\n const playPromise = video?.play();\n this.trackingService.triggerEvent('Event.Tracking', {\n 'component.CategoryEvent': 'Teaser-EmbeddedVideo',\n 'component.LabelEvent': this.videoName,\n 'component.ActionEvent': 'Video Play',\n 'component.PositionEvent': 'VideoTeaser - ' + 1,\n 'component.LocationEvent': 'Video started',\n 'component.EventDetails': 'Video Entered View Port Auto Play initiated',\n 'component.URLClicked': 'not applicable',\n });\n if (playPromise !== undefined) {\n playPromise.then(() => {}).catch();\n }\n } else {\n video.pause();\n this.videoEndTracking();\n }\n }\n }, this.timeoutValue);\n }\n\n videoEndTracking() {\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video && video.duration && video.duration >= 0) {\n const minutes = ('00' + Math.floor((video.duration % 3600) / 60)).slice(-2);\n const seconds = ('00' + ((video.duration % 3600) % 60)).slice(-2);\n const eventDetails = minutes + ':' + seconds;\n let locationEvent = Math.ceil((video.currentTime * 100) / video.duration);\n if (locationEvent < 50) {\n locationEvent = 25;\n } else if (locationEvent < 75) {\n locationEvent = 50;\n } else if (locationEvent < 100) {\n locationEvent = 75;\n } else if (locationEvent == 100) {\n locationEvent = 100;\n }\n this.trackingService.triggerEvent('Event.Tracking', {\n 'component.CategoryEvent': 'Teaser-EmbeddedVideo',\n 'component.LabelEvent': this.videoName,\n 'component.ActionEvent': 'VideoEnded',\n 'component.PositionEvent': 'VideoTeaser - ' + 1,\n 'component.LocationEvent': locationEvent + '%',\n 'component.EventDetails': eventDetails,\n 'component.URLClicked': 'not applicable',\n });\n }\n }\n\n videoEnded() {\n this.isReplay = true;\n this.videoEndTracking();\n }\n\n replayVideo() {\n this.isReplay = false;\n const video: HTMLVideoElement = this.videoPlayer?.nativeElement;\n if (video) {\n video.play();\n this.trackingService.triggerEvent('Event.Tracking', {\n 'component.CategoryEvent': 'Teaser-EmbeddedVideo',\n 'component.LabelEvent': this.videoName,\n 'component.ActionEvent': 'Video Play',\n 'component.PositionEvent': 'VideoTeaser - ' + 1,\n 'component.LocationEvent': 'Video replayed',\n 'component.EventDetails': 'Replay Icon clicked by the user',\n 'component.URLClicked': 'not applicable',\n });\n }\n }\n\n launchGame() {\n const gameModel = new GameLaunch();\n const gameId: string = this.getGameIdFromLaunchUrl(this.launchUrl?.url);\n gameModel.game = this.gameManagerService.getGameInfo(gameId);\n if (!gameModel.game) {\n gameModel.game = {};\n }\n gameModel.game.gameId = gameId;\n gameModel.game.lobbyType = this.lobbyType;\n gameModel.isTouch = this.isTouch;\n gameModel.gamePosition = 0;\n gameModel.categoryType = this.subcategory;\n gameModel.from = 'q';\n gameModel.replaceRouteInHistory = false;\n gameModel.isDemoLaunch = false;\n gameModel.skipUnfinGame = false;\n gameModel.gameLaunchedFrom = 'Netflix_Video_' + this.subcategory;\n gameModel.gameSection = 'Netflix_Video';\n gameModel.gameContainer = this.gameContainer;\n gameModel.returnUrl = window.location.href;\n gameModel.clickTimeStamp = this.casinoCoreGamelaunchService.currentTimeStamp();\n if (this.launchUrl) {\n if (this.isGameUrl(this.launchUrl?.url)) {\n this.casinoCoreGamelaunchService.launchGame(gameModel);\n } else {\n this.navigation.goTo(this.launchUrl?.url);\n }\n }\n }\n\n getGameIdFromLaunchUrl(link: string) {\n return link.substr(link.indexOf(this.videoLaunchRealtiveUri) + this.videoLaunchRealtiveUri.length);\n }\n\n isGameUrl(link: string) {\n return link.indexOf(this.videoLaunchRealtiveUri) > 0;\n }\n\n dataBindings() {\n const globalConfig = this.configProviderService.provideGlobalConfig();\n this.NetflixIconBgClr = globalConfig.messages['NetflixIconBgClr'];\n this.NetflixIconClr = globalConfig.messages['NetflixIconClr'];\n this.NetflixReloadicon = globalConfig.messages['NetflixReloadicon'];\n this.NetflixSoundicon = globalConfig.messages['NetflixSoundicon'];\n this.NetflixMuteicon = globalConfig.messages['NetflixMuteicon'];\n }\n\n ngOnDestroy(): void {\n if (this.overlayVisibilitySubscription) this.overlayVisibilitySubscription.unsubscribe();\n if (this.stopAudioSubscription) this.stopAudioSubscription.unsubscribe();\n if (this.lobbySubscription) this.lobbySubscription.unsubscribe();\n }\n}\n","
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n","import { NgIf } from '@angular/common';\nimport { Component, Input, OnInit } from '@angular/core';\n\nimport { ConfigProviderService, GifTagComponent } from '@casinocore/platform/core';\n\nimport { CMSVideoComponent } from '../cms-video/cms-video.component';\nimport { VideoComponent } from '../video/video.component';\n\n@Component({\n selector: 'cc-video-wrapper',\n templateUrl: 'video-wrapper.component.html',\n standalone: true,\n imports: [NgIf, VideoComponent, GifTagComponent, CMSVideoComponent],\n})\nexport class VideoWrapperComponent implements OnInit {\n @Input() type: string;\n @Input() url: string;\n @Input() launchUrl: any;\n @Input() imageThumbnail: string;\n @Input() videoName: string;\n @Input() subcategory: any;\n @Input() lobbyType: string;\n @Input() gameContainer: string;\n @Input() displayVideoinLoop: boolean;\n @Input() videoBoxContent: any;\n netflixVideosEnabled: boolean;\n\n constructor(private configProviderService: ConfigProviderService) {}\n ngOnInit() {\n const featureConfig = this.configProviderService.provideFeaturesConfig();\n this.netflixVideosEnabled = featureConfig.showNetflixVideo;\n }\n}\n","import { Component, Input, OnInit } from '@angular/core';\n\nimport { VideoWrapperComponent } from './video-wrapper/video-wrapper.component';\n\n@Component({\n selector: 'cc-game-videos',\n templateUrl: 'casino-game-videos.component.html',\n standalone: true,\n imports: [VideoWrapperComponent],\n})\nexport class CasinoGameVideosComponent implements OnInit {\n @Input() type: string;\n @Input() url: string;\n @Input() launchUrl: any;\n @Input() imageThumbnail: string;\n @Input() videoName: string;\n @Input() subcategory: any;\n @Input() lobbyType: any;\n @Input() gameContainer: string;\n @Input() displayVideoinLoop: boolean;\n @Input() videoBoxContent: any;\n constructor() {}\n ngOnInit() {\n this.subcategory = this.subcategory.categoryid;\n }\n}\n","\n\n"],"names":["ɵɵelementStart","ɵɵlistener","ɵɵrestoreView","_r3","ctx_r1","ɵɵnextContext","ɵɵresetView","launchGame","ɵɵelementEnd","ɵɵelement","ɵɵproperty","videoBoxContent","_r4","l","imageThumbnailSrc","ɵɵsanitizeUrl","_r5","toggleMute","ɵɵpureFunction3","_c4","cmsIconBgClr","cmsIconClr","cmsIndex","cmsVolumbtn","_r6","replayVideo","ɵɵpureFunction2","_c5","cmsReloadicon","ɵɵtext","$event","_r1","isElementinViewPort","videoEnded","ɵɵtemplate","CMSVideoComponent_div_0_div_10_Template","CMSVideoComponent_div_0_div_13_Template","CMSVideoComponent_div_0_img_15_Template","CMSVideoComponent_div_0_button_17_Template","CMSVideoComponent_div_0_button_19_Template","ɵɵadvance","ɵɵpureFunction1","_c2","ɵɵpureFunction0","_c1","_c3","displayNetVideo","videoUrl","mute","isReplay","displayVideoinLoop","enableVideoPhase2","CMSVideoComponent","constructor","casinoManager","navigation","casinoCoreGamelaunchService","trackingService","gameService","configProviderService","destroyRef","gameManagerService","isMuted","gameObj","isVideoVisible","isScroll","timeoutValue","ngOnInit","document","addEventListener","url","isTouch","updateMuteAndSoundIcons","mcPageConfig","provideMcPageConfig","videoLaunchRealtiveUri","labelPrefix","dataBindings","overlayVisibilitySubscription","overlayVisibilityStatus","subscribe","isvisible","video","cmsVideoPlayer","streamEl","nativeElement","hasOwnProperty","pause","play","lobbySubscription","lobbyObservable","pipe","takeUntilDestroyed","lobbyModel","stopAudioSubscription","stopAudioObservable","outOfViewPort","stream","muted","features","provideFeaturesConfig","updateStreamClass","classList","contains","add","ngOnChanges","imageThumbnail","src","triggerEvent","videoName","navigate","gameModel","GameLaunch","gameId","getGameIdFromLaunchUrl","launchUrl","game","getGameInfo","lobbyType","gamePosition","categoryType","subcategory","from","replaceRouteInHistory","isDemoLaunch","skipUnfinGame","gameLaunchedFrom","gameSection","gameContainer","returnUrl","window","location","href","clickTimeStamp","currentTimeStamp","isGameUrl","goTo","link","substr","indexOf","length","globalConfig","provideGlobalConfig","messages","visible","firstload","netflixVideoTimeout","setTimeout","viewportReached","videoEndTracking","ngAfterViewInit","currentTime","minutes","Math","floor","slice","seconds","eventDetails","locationEvent","ceil","cmsSoundicon","cmsMuteicon","ngOnDestroy","unsubscribe","ɵɵdirectiveInject","CasinoManager","NavigationService","CasinoCoreGamelaunchService","TrackingService","GameService","ConfigProviderService","DestroyRef","GameManagerService","selectors","viewQuery","rf","ctx","CMSVideoComponent_div_0_Template","NgIf","InViewportDirective","CloudflareStreamModule","CloudflareStreamComponent","DynamicHtmlDirective","NgStyle","NgClass","encapsulation","_CMSVideoComponent","NetflixIconBgClr","NetflixIconClr","NetflixVolumbtn","NetflixReloadicon","VideoComponent_div_0_video_4_Template","VideoComponent_div_0_div_6_Template","VideoComponent_div_0_img_8_Template","VideoComponent_div_0_button_10_Template","VideoComponent_div_0_button_12_Template","VideoComponent","videoPlayer","toggleLoop","loop","playPromise","undefined","then","catch","duration","NetflixSoundicon","NetflixMuteicon","M","k","N","P","V","VideoComponent_div_0_Template","_VideoComponent","ctx_r0","type","VideoWrapperComponent_div_0_div_2_Template","VideoWrapperComponent_div_0_div_4_Template","VideoWrapperComponent_div_0_div_6_Template","VideoWrapperComponent","featureConfig","netflixVideosEnabled","showNetflixVideo","C","inputs","standalone","ɵɵStandaloneFeature","decls","vars","consts","template","VideoWrapperComponent_div_0_Template","GifTagComponent","_VideoWrapperComponent","CasinoGameVideosComponent","categoryid","_CasinoGameVideosComponent"],"mappings":"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"}