{"version":3,"file":"highlights-marquee.feature-n2bcz802.js","sources":["packages/sports/web/app/src/highlights-marquee/marquee-widget.component.html","packages/sports/web/app/src/highlights-marquee/marquee-widget.component.ts","packages/sports/web/app/src/highlights-marquee/widget-registration.service.ts","packages/sports/web/app/src/highlights-marquee/highlights-marquee.feature.ts"],"sourcesContent":["\n","import { NgIf } from '@angular/common';\nimport { Component, HostBinding, Optional } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { Fixture } from '@cds/betting-offer';\nimport { MarqueeIndexedFixtureView } from '@cds/betting-offer/domain-specific';\nimport { CDNCachingConfig, MarqueeConfig } from '@frontend/sports/common/client-config-data-access';\nimport { MarqueeBackgroundContainerConfig, MarqueeType } from '@frontend/sports/types/components/content';\nimport { FixtureEnumStage, WidgetContext, WidgetType } from '@frontend/sports/types/components/widget';\nimport { MarqueeLink, MarqueePayload } from '@frontend/sports/types/components/widget/types';\nimport { mergeMarqueePayload } from 'packages/sports/web/app/src/widget/core/widget.constants';\nimport { Observable, Subscription, filter, forkJoin, map } from 'rxjs';\n\nimport { DetailedEventViewModel } from '../event-details-common/event-details-common.models';\nimport { EventDetailsViewModelService } from '../event-details-common/event-details-view-model.service';\nimport { FixtureUpdateService } from '../racing/common/fixture-update.service';\nimport { WidgetContextService } from '../widget/common/widget-context.service';\nimport { WidgetComponent } from '../widget/core/widget-registry.service';\nimport { AutomatedMarqueeService } from './automated-marquee.service';\nimport { HighlightsMarqueeModule } from './highlights-marquee.module';\nimport { MarqueeResponseMapperService } from './marquee-response-mapper.service';\nimport { MarqueeComponentTile, Tile } from './marquee-tile.model';\nimport { MarqueeTrackingService } from './marquee-tracking.service';\nimport { MarqueeWidgetDataService } from './marquee-widget-data.service';\n\n@Component({\n imports: [NgIf, HighlightsMarqueeModule],\n selector: 'ms-marquee-widget',\n templateUrl: './marquee-widget.component.html',\n providers: [MarqueeTrackingService, FixtureUpdateService], // additionally registering dedicated tracking service, to make sure modular-tracking.service overrides tracking.service\n})\nexport class MarqueeWidgetComponent extends WidgetComponent {\n @HostBinding('class') className = 'marquee-widget';\n\n tiles: MarqueeComponentTile[] = [];\n backgroundContainerConfig: MarqueeBackgroundContainerConfig;\n globalLinkConfig: MarqueeLink;\n private detailedEventViewModel?: DetailedEventViewModel;\n private subscription?: Subscription;\n private shouldIncludePayload = false;\n\n constructor(\n private marqueeMapper: MarqueeResponseMapperService,\n private widgetConetextService: WidgetContextService,\n private marqueeWidgetDataSerivce: MarqueeWidgetDataService,\n private marqueeConfig: MarqueeConfig,\n private automatedMarqueeService: AutomatedMarqueeService,\n private cdnCachingConfig: CDNCachingConfig,\n @Optional() private eventDetailsModelService?: EventDetailsViewModelService,\n ) {\n super();\n this.shouldIncludePayload = this.cdnCachingConfig.widgets.includes(WidgetType.Marquee);\n this.eventDetailsModelService?.detailedEventViewModel$.pipe(takeUntilDestroyed()).subscribe((data) => {\n this.detailedEventViewModel = data;\n });\n }\n\n protected override onData(data: MarqueePayload): void {\n if (!data?.fixtures?.length && !data?.tiles?.length) {\n forkJoin([this.getData(), this.getData(false, true)])\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(([regularMarqueePayload, personalizedMarqueePayload]) => {\n const combinedData = mergeMarqueePayload(regularMarqueePayload, personalizedMarqueePayload);\n this.renderData(combinedData);\n });\n } else {\n this.renderData(data);\n }\n }\n\n renderData = (data: MarqueePayload) => {\n if (data?.fixtures?.length || data?.tiles?.length) {\n const tiles = this.marqueeMapper.mapFixtures(data.fixtures, data.tiles);\n if (this.marqueeWidgetDataSerivce.isNotPersonalizedMarquee(data)) {\n this.hasData = false;\n this.setWidgetLoaded();\n\n return;\n }\n\n if (data.showAutomatedMarqueesOnEventPage) {\n this.tiles = this.loadAutomatedMarquees(tiles);\n }\n\n this.backgroundContainerConfig = {\n showTitle: data.backgroundContainerConfig?.showTitle,\n title: data.backgroundContainerConfig?.title,\n titleIconDisplay: data.backgroundContainerConfig?.titleIconDisplay,\n backgroundImage: '',\n textColor: '',\n regularFixture: this.populateHeaderData(tiles, data.fixtures),\n };\n this.globalLinkConfig = {\n linkOverride: data.globalLink?.linkOverride,\n title: data.globalLink?.title,\n visible: data.globalLink?.visible ?? false,\n target: data.globalLink?.target,\n };\n\n this.subscription?.unsubscribe();\n this.subscription = this.marqueeWidgetDataSerivce\n .combineWithPromotions(data, tiles)\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((combinedTiles) => {\n this.tiles = combinedTiles;\n this.hasData = this.tiles?.length > 0;\n this.setWidgetLoaded();\n });\n this.hasData = this.tiles?.length > 0;\n } else {\n this.hasData = false;\n this.logEmptyData();\n }\n this.setWidgetLoaded();\n };\n\n override getContext(): Partial {\n return {\n ...super.getContext(),\n shouldIncludePayload: this.shouldIncludePayload,\n marqueesOnly: true,\n fixtureStage: this.detailedEventViewModel?.fixture?.stage,\n };\n }\n\n private getData(addSchemaMarkup: boolean = false, shouldIncludePersonalizedData: boolean = false): Observable {\n return this.widgetConetextService\n .getWidget({ ...this.getContext(), shouldIncludePersonalizedData }, addSchemaMarkup, false)\n .pipe(\n filter(({ payload }) => payload !== undefined || this.shouldIncludePayload),\n map(({ payload }) => (payload ?? {}) as MarqueePayload),\n takeUntilDestroyed(this.destroyRef),\n );\n }\n\n private populateHeaderData(tilesList: Tile[], fixturesData: MarqueeIndexedFixtureView[]): Fixture | undefined {\n const filteredTile = tilesList?.find((tile) => tile.marqueeType === MarqueeType.Regular);\n if (filteredTile) {\n const filteredFixtures = fixturesData?.find((fixture) => fixture.fixture.id === filteredTile.fixtureId);\n if (filteredFixtures) {\n return filteredFixtures.fixture;\n }\n }\n\n return;\n }\n\n private loadAutomatedMarquees(tiles: Tile[]): Tile[] {\n let marqueeTitles = tiles;\n\n if (this.detailedEventViewModel?.fixture && tiles.length < this.marqueeConfig.maxTiles && this.marqueeConfig.isAutomatedMarqueesEnabled) {\n const automatedMarqueeTiles = this.automatedMarqueeService.createAutomatedMarqueeTiles(this.detailedEventViewModel);\n const automatedTiles = this.automatedMarqueeService.getTiles(\n this.detailedEventViewModel.fixture,\n automatedMarqueeTiles,\n this.detailedEventViewModel.betBuilderFixture?.sourceFixture,\n this.detailedEventViewModel.betBuilderFixture?.precreatedMarketsInfo,\n );\n marqueeTitles = this.automatedMarqueeService.getCombinedTiles(marqueeTitles, automatedTiles);\n }\n\n return marqueeTitles;\n }\n}\n","import { Injectable, Injector } 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 { MarqueeWidgetComponent } from './marquee-widget.component';\nimport { OutrightsMarqueeWidgetComponent } from './outrights-marquee-widget.component';\n\n@Injectable()\nexport class WidgetRegistrationService implements OnFeatureInit {\n constructor(\n private registry: WidgetRegistryService,\n private injector: Injector,\n ) {}\n\n onFeatureInit(): void {\n this.registry.registerLazy(WidgetType.Marquee, MarqueeWidgetComponent, this.injector);\n this.registry.registerLazy(WidgetType.OutrightsMarquee, OutrightsMarqueeWidgetComponent, this.injector);\n }\n}\n","import { runOnFeatureInit } from '@frontend/vanilla/core';\n\nimport { WidgetRegistrationService } from './widget-registration.service';\n\nexport function provide() {\n return [runOnFeatureInit(WidgetRegistrationService)];\n}\n"],"names":["ɵɵelement","ɵɵproperty","ctx_r0","tiles","backgroundContainerConfig","globalLinkConfig","MarqueeWidgetComponent","WidgetComponent","constructor","marqueeMapper","widgetConetextService","marqueeWidgetDataSerivce","marqueeConfig","automatedMarqueeService","cdnCachingConfig","eventDetailsModelService","_a","className","shouldIncludePayload","renderData","data","_b","_c","_d","_e","_f","_g","_h","_i","_j","_k","fixtures","length","mapFixtures","isNotPersonalizedMarquee","hasData","setWidgetLoaded","showAutomatedMarqueesOnEventPage","loadAutomatedMarquees","showTitle","title","titleIconDisplay","backgroundImage","textColor","regularFixture","populateHeaderData","linkOverride","globalLink","visible","target","subscription","unsubscribe","combineWithPromotions","pipe","takeUntilDestroyed","destroyRef","subscribe","combinedTiles","logEmptyData","widgets","includes","detailedEventViewModel$","detailedEventViewModel","onData","forkJoin","getData","regularMarqueePayload","personalizedMarqueePayload","combinedData","mergeMarqueePayload","getContext","__spreadProps","__spreadValues","marqueesOnly","fixtureStage","fixture","stage","addSchemaMarkup","shouldIncludePersonalizedData","getWidget","filter","payload","undefined","map","tilesList","fixturesData","filteredTile","find","tile","marqueeType","filteredFixtures","id","fixtureId","marqueeTitles","maxTiles","isAutomatedMarqueesEnabled","automatedMarqueeTiles","createAutomatedMarqueeTiles","automatedTiles","getTiles","betBuilderFixture","sourceFixture","precreatedMarketsInfo","getCombinedTiles","ɵɵdirectiveInject","MarqueeResponseMapperService","WidgetContextService","MarqueeWidgetDataService","MarqueeConfig","AutomatedMarqueeService","CDNCachingConfig","EventDetailsViewModelService","selectors","hostVars","hostBindings","rf","ctx","ɵɵclassMap","MarqueeTrackingService","FixtureUpdateService","ɵɵInheritDefinitionFeature","decls","vars","consts","template","ɵɵtemplate","MarqueeWidgetComponent_ms_highlights_marquee_0_Template","hidden","NgIf","HighlightsMarqueeModule","HighlightsMarqueeComponent","encapsulation","_MarqueeWidgetComponent","WidgetRegistrationService","registry","injector","onFeatureInit","registerLazy","OutrightsMarqueeWidgetComponent","ɵɵinject","WidgetRegistryService","Injector","factory","ɵfac","_WidgetRegistrationService","provide","runOnFeatureInit"],"mappings":"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"}