{"version":3,"file":"chunk-mq4dlxsi.js","sources":["packages/sports/web/app/src/event-list-shared/sport/services/sport-list-modal.service.ts","packages/sports/web/app/src/event-list-shared/sport/overview/sport-list.component.html","packages/sports/web/app/src/event-list-shared/sport/overview/sport-list.component.ts","packages/sports/web/app/src/event-list-shared/sport/overview/sport-list-body.component.html","packages/sports/web/app/src/event-list-shared/sport/overview/sport-list-body.component.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { groupBy, keys } from 'lodash-es';\n\nimport { SportTreeItem } from '../../../competition-list/competition-list.models';\n\nexport interface SportListGroup {\n group: string;\n sports: SportTreeItem[];\n}\n\n@Injectable({ providedIn: 'root' })\nexport class SportListModalService {\n getGroups(links: SportTreeItem[]): SportListGroup[] {\n const grouped = groupBy(links, (link) => link.title.substring(0, 1));\n\n return keys(grouped)\n .map((key) => ({\n group: key,\n sports: grouped[key].sort(this.byName),\n }))\n .sort(this.byLetter);\n }\n\n getSingleGroup(links: SportTreeItem[]): SportListGroup[] {\n return [{ group: '', sports: links.sort(this.byName) }];\n }\n\n private byName = (first: SportTreeItem, second: SportTreeItem): number => first.title.localeCompare(second.title);\n private byLetter = (first: SportListGroup, second: SportListGroup): number => first.group.localeCompare(second.group);\n}\n","\n
\n @for (item of sports; track item.id) {\n \n }\n
\n","import { NgFor } from '@angular/common';\nimport { Component, Input, Signal, signal } from '@angular/core';\n\nimport { SportConstant } from '@frontend/sports/common/core/data-access/constants';\nimport { RouteTag } from '@frontend/sports/common/core/data-access/route';\nimport { StringDictionary } from '@frontend/sports/common/core/utils/extended-types';\nimport { DeviceSizeService } from '@frontend/sports/common/core/utils/media-query';\nimport { ListItemComponent } from '@frontend/sports/common/ui/sports-list-items';\nimport { TrackReferringACtionDirective, TrackingService, trackingConstants } from '@frontend/sports/tracking/feature';\nimport { Observable } from 'rxjs';\n\nimport { HeadingComponent } from '../../../common/heading.component';\nimport { SportTreeItem } from '../../../competition-list/competition-list.models';\n\n@Component({\n selector: 'ms-sport-list',\n templateUrl: 'sport-list.component.html',\n styleUrl: './sport-list.component.scss',\n imports: [HeadingComponent, NgFor, ListItemComponent, TrackReferringACtionDirective],\n})\nexport class SportListComponent {\n @Input() sports: SportTreeItem[] = [];\n @Input() title: string;\n @Input() trackingPrefix?: string;\n @Input() crmPromoted: StringDictionary = {};\n mediaQuery$: Observable;\n isMobile: Signal;\n trackingValue = signal('M2_ListItemlinks');\n cleanedAfterTrack = signal(false);\n\n constructor(\n private trackingService: TrackingService,\n private deviceSizeService: DeviceSizeService,\n ) {\n this.isMobile = this.deviceSizeService.isMobile;\n }\n\n onSelected(selected: SportTreeItem) {\n this.cleanedAfterTrack.update(() => selected.href?.indexOf('http') === 0 || false);\n this.sendTracking(selected.id as number);\n }\n\n showBorder(isLastItem: boolean): boolean {\n return !this.isMobile() || !isLastItem;\n }\n\n private sendTracking(sport: number): void {\n const sportId = sport === SportConstant.EsportsGroup ? RouteTag.EsportsLobby : sport;\n if (this.trackingPrefix) {\n const trackingData = {\n [trackingConstants.PAGE_NAVIGATION_MENUS]: `${this.trackingPrefix}_${sportId}`,\n };\n\n this.trackingService.track(trackingConstants.EVENT_AZSPORTS, trackingData);\n }\n }\n}\n","
\n
\n \n \n {{ sitecore.globalMessages.Search }}\n {{ sitecore.betBuilder.messages?.NewBadge }}\n \n \n
\n \n \n \n \n \n \n \n \n \n
\n","import { NgFor, NgIf } from '@angular/common';\nimport { Component, DestroyRef, Input, OnInit } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { AZMenuConfig, AZSportsDataModel, CalendarConfig, Sitecore, TimeFilterConfig } from '@frontend/sports/common/client-config-data-access';\nimport { SportConstant } from '@frontend/sports/common/core/data-access/constants';\nimport { CountItem, ItemType, takeTop } from '@frontend/sports/common/core/data-access/sport-model';\nimport { StringDictionary } from '@frontend/sports/common/core/utils/extended-types';\nimport { AZSportsViewModel } from '@frontend/sports/types/components/a-z-menu';\nimport { DeviceService } from '@frontend/vanilla/core';\nimport { differenceBy, partition } from 'lodash-es';\n\nimport { CalendarItemListComponent } from '../../../calendar/calendar-item-list.component';\nimport { CalendarPage, CalendarService } from '../../../calendar/calendar.service';\nimport { IntervalLink } from '../../../calendar/count-interval.service';\nimport { TimeFrameLocation } from '../../../calendar/time-filters-tracking.service';\nimport { HeadingComponent } from '../../../common/heading.component';\nimport { ItemComponent } from '../../../common/item/item.component';\nimport { SportTreeItem } from '../../../competition-list/competition-list.models';\nimport { SportTreeService } from '../../../competition-list/sport-tree.service';\nimport { CrmPromotionProviderService, PromotionMap } from '../../../crm-promotion/crm-promotion-provider.service';\nimport { FreshDataService } from '../../../data-refresh/fresh-data.service';\nimport { AdaptiveLayoutService } from '../../../layout/adaptive-layout.service';\nimport { RedirectHelperService } from '../../../navigation-core/redirect-helper.service';\nimport { UrlHelperService } from '../../../navigation-core/url-helper.service';\nimport { EventListService } from '../services/event-list.service';\nimport { SportListGroup, SportListModalService } from '../services/sport-list-modal.service';\nimport { SportListComponent } from './sport-list.component';\n\n@Component({\n selector: 'ms-sport-list-body',\n templateUrl: 'sport-list-body.component.html',\n imports: [ItemComponent, HeadingComponent, CalendarItemListComponent, SportListComponent, NgFor, NgIf],\n})\nexport class SportListBodyComponent implements OnInit {\n private SPORTS_TOP_COUNT = 6;\n @Input() topGroup = false;\n @Input() isMobile = true;\n\n top: SportTreeItem[];\n groups: SportListGroup[];\n bottomNavigation: boolean;\n crmPromotedSportsMap: StringDictionary;\n showNewBadge: boolean;\n calendarIntervals: IntervalLink[];\n readonly timeFrameLocation = TimeFrameLocation.AzMenu;\n\n constructor(\n public sitecore: Sitecore,\n private sportMapper: SportTreeService,\n private eventService: EventListService,\n private listService: SportListModalService,\n private layoutService: AdaptiveLayoutService,\n private crmPromotionProvider: CrmPromotionProviderService,\n private freshData: FreshDataService,\n private urlHelperService: UrlHelperService,\n private deviceService: DeviceService,\n private calendarService: CalendarService,\n private timeFilterConfig: TimeFilterConfig,\n private azMenuConfig: AZMenuConfig,\n private redirectHelper: RedirectHelperService,\n private calendarConfig: CalendarConfig,\n private azSportsData: AZSportsDataModel,\n private destroyRef: DestroyRef,\n ) {}\n\n ngOnInit(): void {\n this.showNewBadge = this.azMenuConfig.showNewBadge;\n this.freshData.reloadNeeded.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(() => this.buildSportList());\n this.layoutService.stateChange$\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe((state) => (this.bottomNavigation = state.bottomNavigation));\n\n this.buildSportList();\n this.crmPromotionProvider.promotionsMap$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe((ids) => this.promotionMapChanged(ids));\n this.calendarIntervals = this.showCalendarTimeFilters ? this.calendarService.getCalendarLinks(CalendarPage.AtozSports) : [];\n }\n\n redirectToSearch(): void {\n this.redirectHelper.goToPage(this.urlHelperService.getSearchUrl(), true);\n }\n\n private buildSportList(): void {\n this.eventService.getSportList().subscribe((sports) => {\n const [withoutEsports, esports] = partition(sports, (sport) => !sport.isEsport);\n const [azWithoutEsports, azEsportsItems] = partition(\n this.azSportsData.azSports.filter((azSport) => !sports.find((item) => item.name === azSport.activeName)),\n (az) => !az.isEsportsLobby,\n );\n\n withoutEsports.push(...azWithoutEsports.map(this.mapAZViewModel));\n\n if (esports.length > 0) {\n withoutEsports.push(...azEsportsItems.map(this.mapAZViewModel));\n }\n\n const top = takeTop(withoutEsports, this.SPORTS_TOP_COUNT);\n\n const other = this.topGroup ? differenceBy(withoutEsports, top, (sport) => sport.id) : withoutEsports;\n\n this.top = this.sportMapper.get(top, true);\n if (this.isMobile && this.azMenuConfig.removeLetterBreakersInMobile) {\n this.groups = this.listService.getSingleGroup(this.sportMapper.get(other, true));\n } else {\n this.groups = this.listService.getGroups(this.sportMapper.get(other, true));\n }\n });\n }\n\n private promotionMapChanged(promoMap: PromotionMap): void {\n this.crmPromotedSportsMap = promoMap.sports;\n }\n\n get isMobileLayout(): boolean {\n return this.deviceService.isMobile;\n }\n\n get showCalendarTimeFilters(): boolean {\n return this.timeFilterConfig.isTimeFilterEnabled && this.calendarConfig.showCalendarTab;\n }\n\n private mapAZViewModel(azsport: AZSportsViewModel): CountItem {\n return {\n name: azsport.activeName,\n id: azsport.isEsportsLobby ? SportConstant.EsportsGroup : Number(azsport.id) || 0,\n type: ItemType.Sport,\n icon: azsport.icon,\n counts: {\n live: 0,\n preMatch: 0,\n gridable: 0,\n nonGridable: 0,\n outrights: 0,\n specials: 0,\n other: 0,\n antepost: 0,\n liveStreaming: 0,\n outrightsByGroups: {},\n specialsByGroups: {},\n },\n meta: {\n calendar: false,\n coupons: false,\n teamPages: false,\n calendarIntervals: [],\n },\n children: [],\n };\n }\n}\n"],"names":["SportListModalService","constructor","byName","first","second","title","localeCompare","byLetter","group","getGroups","links","grouped","groupBy","link","substring","keys","map","key","sports","sort","getSingleGroup","factory","ɵfac","providedIn","_SportListModalService","C","ɵɵelementStart","ɵɵlistener","item_r2","ɵɵrestoreView","_r1","$implicit","ctx_r2","ɵɵnextContext","ɵɵresetView","onSelected","ɵɵelementEnd","ɵɵproperty","trackingValue","cleanedAfterTrack","icon","href","showBorder","ɵ$index_5_r4","ɵ$count_5_r5","SportListComponent","trackingService","deviceSizeService","crmPromoted","signal","isMobile","selected","update","_a","indexOf","sendTracking","id","isLastItem","sport","sportId","SportConstant","EsportsGroup","RouteTag","EsportsLobby","trackingPrefix","trackingData","trackingConstants","PAGE_NAVIGATION_MENUS","track","EVENT_AZSPORTS","ɵɵdirectiveInject","TrackingService","DeviceSizeService","_","selectors","inputs","decls","vars","consts","template","rf","ctx","ɵɵelement","ɵɵrepeaterCreate","SportListComponent_For_3_Template","_forTrack0","ɵɵadvance","ɵɵrepeater","HeadingComponent","ListItemComponent","TrackReferringACtionDirective","styles","_SportListComponent","ɵɵtext","ɵɵtextInterpolate","ctx_r1","sitecore","betBuilder","messages","NewBadge","redirectToSearch","ɵɵtemplate","SportListBodyComponent_div_1_span_4_Template","p","ɵɵtextInterpolate1","globalMessages","Search","showNewBadge","TimeFrames","calendarIntervals","timeFrameLocation","top","event","TopSports","crmPromotedSportsMap","AZsports","group_r3","ɵɵelementContainerStart","SportListBodyComponent_ng_container_5_ng_container_2_ms_sport_list_1_Template","w","length","SportListBodyComponent_ng_container_5_ms_heading_1_Template","SportListBodyComponent_ng_container_5_ng_container_2_Template","topGroup","bottomNavigation","groups","SportListBodyComponent","sportMapper","eventService","listService","layoutService","crmPromotionProvider","freshData","urlHelperService","deviceService","calendarService","timeFilterConfig","azMenuConfig","redirectHelper","calendarConfig","azSportsData","destroyRef","SPORTS_TOP_COUNT","TimeFrameLocation","AzMenu","ngOnInit","reloadNeeded","pipe","takeUntilDestroyed","subscribe","buildSportList","stateChange$","state","promotionsMap$","ids","promotionMapChanged","showCalendarTimeFilters","getCalendarLinks","CalendarPage","AtozSports","goToPage","getSearchUrl","getSportList","withoutEsports","esports","partition","isEsport","azWithoutEsports","azEsportsItems","azSports","filter","azSport","find","item","name","activeName","az","isEsportsLobby","push","mapAZViewModel","takeTop","other","differenceBy","get","removeLetterBreakersInMobile","promoMap","isMobileLayout","isTimeFilterEnabled","showCalendarTab","azsport","Number","type","ItemType","Sport","counts","live","preMatch","gridable","nonGridable","outrights","specials","antepost","liveStreaming","outrightsByGroups","specialsByGroups","meta","calendar","coupons","teamPages","children","Sitecore","SportTreeService","EventListService","AdaptiveLayoutService","CrmPromotionProviderService","FreshDataService","UrlHelperService","DeviceService","CalendarService","TimeFilterConfig","AZMenuConfig","RedirectHelperService","CalendarConfig","AZSportsDataModel","DestroyRef","SportListBodyComponent_div_1_Template","SportListBodyComponent_ms_heading_2_Template","SportListBodyComponent_ms_calendar_item_list_3_Template","SportListBodyComponent_ms_sport_list_4_Template","SportListBodyComponent_ng_container_5_Template","ItemComponent","CalendarItemListComponent","NgFor","NgIf","encapsulation","_SportListBodyComponent"],"mappings":"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"}