{"version":3,"file":"chunk-htrieil7.js","sources":["packages/sports/web/app/src/widget/common/widget-navigation.service.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\nimport { Fixture } from '@cds/betting-offer';\nimport { Region, Sport } from '@cds/betting-offer/tags';\nimport { VirtualCompetitionPrefix } from '@frontend/sports/common/core/data-access/sport-model';\nimport { interpolateSingleBracesString } from '@frontend/sports/common/core/utils/string';\nimport { UrlParam } from '@frontend/sports/navigation/core/feature/url-builder';\nimport { TabbedGridLink, TabbedGridLinkTarget } from '@frontend/sports/types/components/widget/types';\n\nimport { RedirectHelperService } from '../../navigation-core/redirect-helper.service';\nimport { SportUrlParam, UrlHelperService } from '../../navigation-core/url-helper.service';\n\nexport interface NavigationInfo {\n link?: string;\n title?: string;\n linkCount?: number;\n}\n\n@Injectable({ providedIn: 'root' })\nexport class WidgetNavigationService {\n constructor(\n private urlHelper: UrlHelperService,\n private redirectService: RedirectHelperService,\n ) {}\n\n getNavigationInfo(param: UrlParam, linkConfig?: TabbedGridLink, fixture?: Fixture): NavigationInfo {\n const navigationInfo: NavigationInfo = {};\n switch (linkConfig?.target) {\n case TabbedGridLinkTarget.SportLive:\n navigationInfo.link = this.urlHelper.getLiveSportUrl({ sport: param, isEsport: fixture?.sport.isEsport });\n break;\n case TabbedGridLinkTarget.SportLobby:\n navigationInfo.link = this.urlHelper.getSportUrl(param);\n break;\n case TabbedGridLinkTarget.CompetitionLobby:\n navigationInfo.link = this.getCompetitionData(fixture);\n break;\n default:\n navigationInfo.link = linkConfig?.linkOverride;\n break;\n }\n\n navigationInfo.title = interpolateSingleBracesString(\n linkConfig?.title,\n {\n sport: param.name,\n competition: param.name,\n },\n false,\n );\n\n return navigationInfo;\n }\n\n getCompetitionData(firstFixture?: Fixture): string | undefined {\n const isVirtual = !!firstFixture?.virtualCompetition;\n const competitionId = isVirtual\n ? `${VirtualCompetitionPrefix}${firstFixture?.virtualCompetition.id}`\n : (firstFixture?.competition.parentLeagueId ?? firstFixture?.competition.id);\n\n return firstFixture && competitionId\n ? this.getCompetitionURL(competitionId.toString(), firstFixture.competition.name.value, firstFixture.sport, firstFixture.region)\n : undefined;\n }\n\n getCompetitionURL(competitionId: string, competitionName: string, sport: Sport, region: Region): string {\n const sportDetail = {\n id: sport.id,\n name: sport.name.value,\n };\n const regionDetail = {\n id: region.id,\n name: region.name.value,\n };\n let competitionDetail: UrlParam | undefined;\n if (competitionId) {\n competitionDetail = {\n id: competitionId,\n name: competitionName,\n };\n }\n const league: UrlParam = {\n id: competitionId,\n name: competitionName,\n };\n const regionOrCompetition = regionDetail || competitionDetail;\n\n return this.urlHelper.getSportUrl(sportDetail, SportUrlParam.Betting, regionOrCompetition, league);\n }\n\n headerNavigationHandler(headerChevronLink: string | undefined): void {\n if (headerChevronLink) {\n this.redirectService.goToPage(headerChevronLink);\n }\n }\n}\n"],"names":["WidgetNavigationService","constructor","urlHelper","redirectService","getNavigationInfo","param","linkConfig","fixture","navigationInfo","target","link","getLiveSportUrl","sport","isEsport","getSportUrl","getCompetitionData","linkOverride","title","interpolateSingleBracesString","name","competition","firstFixture","competitionId","virtualCompetition","VirtualCompetitionPrefix","id","parentLeagueId","getCompetitionURL","toString","value","region","undefined","competitionName","sportDetail","regionDetail","competitionDetail","league","regionOrCompetition","SportUrlParam","Betting","headerNavigationHandler","headerChevronLink","goToPage","ɵɵinject","UrlHelperService","RedirectHelperService","factory","ɵfac","providedIn","_WidgetNavigationService"],"mappings":"sHAmBaA,IAAAA,CAAAA,CAAAA,CAAuB,IAAA,CAA9B,IAAOA,CAAAA,CAAP,MAAOA,CAAuB,CAChCC,WACYC,CAAAA,CAAAA,CACAC,CAAsC,CAAA,CADtC,KAAAD,SAAAA,CAAAA,CAAAA,CACA,IAAAC,CAAAA,eAAAA,CAAAA,EACT,CAEHC,iBAAkBC,CAAAA,CAAAA,CAAiBC,CAA6BC,CAAAA,CAAAA,CAAiB,CAC7E,IAAMC,CAAiC,CAAA,GACvC,OAAQF,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAAYG,MAAM,EACtB,IAAA,WAAA,CACID,CAAeE,CAAAA,IAAAA,CAAO,IAAKR,CAAAA,SAAAA,CAAUS,eAAgB,CAAA,CAAEC,MAAOP,CAAOQ,CAAAA,QAAAA,CAAUN,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAASK,CAAAA,KAAAA,CAAMC,QAAQ,CAAE,CACxG,CAAA,MACJ,IAAA,YAAA,CACIL,CAAeE,CAAAA,IAAAA,CAAO,KAAKR,SAAUY,CAAAA,WAAAA,CAAYT,CAAK,CAAA,CACtD,MACJ,IAAA,kBACIG,CAAAA,CAAAA,CAAeE,IAAO,CAAA,IAAA,CAAKK,kBAAmBR,CAAAA,CAAO,CACrD,CAAA,MACJ,QACIC,CAAeE,CAAAA,IAAAA,CAAOJ,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAYU,CAAAA,YAAAA,CAClC,KACR,CAEAR,OAAAA,CAAAA,CAAeS,KAAQC,CAAAA,CAAAA,CACnBZ,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,EAAYW,KACZ,CAAA,CACIL,KAAOP,CAAAA,CAAAA,CAAMc,IACbC,CAAAA,WAAAA,CAAaf,CAAMc,CAAAA,IAAAA,CAAAA,CAEvB,CAAK,CAAA,CAAA,CAGFX,CACX,CAEAO,kBAAmBM,CAAAA,CAAAA,CAAsB,CAErC,IAAMC,CAAAA,CADY,CAAC,EAACD,CAAAA,EAAAA,IAAAA,EAAAA,CAAcE,CAAAA,kBAAAA,CAAAA,CAE5B,CAAGC,EAAAA,CAAwB,CAAGH,EAAAA,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAAA,CAAcE,mBAAmBE,EAAE,CAAA,CAAA,CAAA,CAChEJ,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAcD,CAAAA,WAAAA,CAAYM,kBAAkBL,CAAAA,EAAAA,IAAAA,CAAAA,KAAAA,CAAAA,CAAAA,CAAcD,CAAAA,WAAAA,CAAYK,EAE7E,CAAA,CAAA,OAAOJ,GAAgBC,CACjB,CAAA,IAAA,CAAKK,iBAAkBL,CAAAA,CAAAA,CAAcM,QAAQ,EAAA,CAAIP,CAAaD,CAAAA,WAAAA,CAAYD,IAAKU,CAAAA,KAAAA,CAAOR,CAAaT,CAAAA,KAAAA,CAAOS,CAAaS,CAAAA,MAAM,EAC7HC,KACV,CAAA,CAEAJ,iBAAkBL,CAAAA,CAAAA,CAAuBU,CAAyBpB,CAAAA,CAAAA,CAAckB,CAAc,CAAA,CAC1F,IAAMG,CAAAA,CAAc,CAChBR,EAAAA,CAAIb,CAAMa,CAAAA,EAAAA,CACVN,KAAMP,CAAMO,CAAAA,IAAAA,CAAKU,KAEfK,CAAAA,CAAAA,CAAAA,CAAe,CACjBT,EAAAA,CAAIK,CAAOL,CAAAA,EAAAA,CACXN,IAAMW,CAAAA,CAAAA,CAAOX,IAAKU,CAAAA,KAAAA,CAAAA,CAElBM,CACAb,CAAAA,CAAAA,GACAa,EAAoB,CAChBV,EAAAA,CAAIH,CACJH,CAAAA,IAAAA,CAAMa,CAGd,CAAA,CAAA,CAAA,IAAMI,CAAmB,CAAA,CACrBX,EAAIH,CAAAA,CAAAA,CACJH,IAAMa,CAAAA,CAAAA,CAAAA,CAEJK,CAAsBH,CAAAA,CAAAA,EAAgBC,EAE5C,OAAO,IAAA,CAAKjC,SAAUY,CAAAA,WAAAA,CAAYmB,CAAaK,CAAAA,CAAAA,CAAcC,OAASF,CAAAA,CAAAA,CAAqBD,CAAM,CACrG,CAEAI,uBAAAA,CAAwBC,CAAqC,CAAA,CACrDA,GACA,IAAKtC,CAAAA,eAAAA,CAAgBuC,QAASD,CAAAA,CAAiB,EAEvD,CAAA,CAAA,CAAA,CAAA,CAAA,SAAA,CAAA,SAAA,CAAA,CAAA,CAAA,OAAA,IAAA,CAAA,EA3ESzC,CAAuB2C,EAAAA,EAAAA,CAAAC,EAAA,CAAA,CAAAD,EAAAE,CAAAA,EAAA,CAAA,CAAA,wBAAvB7C,CAAuB8C,CAAAA,OAAAA,CAAvB9C,CAAuB+C,CAAAA,SAAAA,CAAAC,UADV,CAAA,MAAM,CAAA,CAAA,CAC1B,IAAOhD,GAAAA,CAAPiD,CAAOjD,CAAAA,OAAAA,GAAuB,CAAA"}