{"version":3,"file":"chunk-ccggc4zs.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.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.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.html',\n styleUrl: './sport-list.component.scss',\n standalone: true,\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 \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.html',\n standalone: true,\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","N","factory","ɵfac","providedIn","_SportListModalService","ɵɵ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","standalone","features","ɵɵStandaloneFeature","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","C","redirectToSearch","ɵɵtemplate","SportListBodyComponent_div_1_span_4_Template","ɵɵtextInterpolate1","globalMessages","Search","showNewBadge","TimeFrames","p","calendarIntervals","timeFrameLocation","top","event","TopSports","crmPromotedSportsMap","AZsports","group_r3","ɵɵelementContainerStart","SportListBodyComponent_ng_container_5_ng_container_2_ms_sport_list_1_Template","A","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","v","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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"}