1import{a as _t}from"./chunk-ZVVMES7K.js";import{a as H}from"./chunk-LH7V4R2D.js";import{a as pe,b as bt}from"./chunk-5UDAYBWC.js";import{a as ut}from"./chunk-QTSPCQYI.js";import{a as yt}from"./chunk-RCNWZPXC.js";import{a as ht}from"./chunk-AOYURV5Y.js";import{a as gt,b as ft}from"./chunk-3VEOF3MH.js";import{a as mt}from"./chunk-XJLTXZLK.js";import{a as dt}from"./chunk-67RUCWWF.js";import"./chunk-ZIMAM3FL.js";import"./chunk-ZLPDN22J.js";import{a as lt}from"./chunk-P2PVVIZ4.js";import{a as ct}from"./chunk-JIYXSNP6.js";import{a as z}from"./chunk-JHTXNVJ2.js";import{a as pt}from"./chunk-PG4MAJFI.js";import"./chunk-FRWWOKBV.js";import"./chunk-GBMHSVWA.js";import"./chunk-L4SZ7HJY.js";import{a as st}from"./chunk-4V637TOY.js";import"./chunk-XWQSKYBM.js";import{d as Ye}from"./chunk-24SWI6SV.js";import{a as at}from"./chunk-Q4VDLKR6.js";import"./chunk-YPNPAUY4.js";import"./chunk-L435M7MP.js";import{a as et,c as tt}from"./chunk-S2IEF3NU.js";import"./chunk-6RDBEQD6.js";import"./chunk-DTNGPAZR.js";import{a as se,b as le}from"./chunk-TUIM6QO4.js";import{a as it}from"./chunk-VXEI2BL7.js";import"./chunk-OFDGY6SI.js";import{a as rt}from"./chunk-TOGIO5UI.js";import{a as ot}from"./chunk-3B55N7HD.js";import"./chunk-AGN5YY5F.js";import"./chunk-NJFU6BAM.js";import{a as Xe}from"./chunk-CXAYO62M.js";import"./chunk-6JRV3BEU.js";import{a as qe}from"./chunk-2YFDOLWV.js";import"./chunk-BWCSAF7V.js";import"./chunk-2SJ2BRC2.js";import"./chunk-L6V22PC4.js";import{a as nt}from"./chunk-7WCGGCOI.js";import"./chunk-3T2ND6BB.js";import"./chunk-IWLB3YK7.js";import"./chunk-23E7OCEB.js";import"./chunk-BBIBHURZ.js";import{u as Ue}from"./chunk-HJCDIB7O.js";import"./chunk-PF2KT7XE.js";import"./chunk-CVIRKZRM.js";import"./chunk-ZBPDVHWU.js";import"./chunk-ZTXBLYYV.js";import"./chunk-BZQEHNE4.js";import"./chunk-JCPPKLIL.js";import{S as He,T as $e,W as je,Y as Ne,n as Re,z as re}from"./chunk-6IZSWBEI.js";import{c as q}from"./chunk-OIQDN3DQ.js";import"./chunk-I6CCTIVI.js";import"./chunk-S3WBTXLR.js";import{c as R,h as $,k as Qe,n as j,p as N,q as Ze,r as Je}from"./chunk-LKKBC7SV.js";import"./chunk-I7X5EPSI.js";import{a as Ke,b as We}from"./chunk-FBYAPGXK.js";import{a as A}from"./chunk-H5XFMEYX.js";import{b as U,i as Ge}from"./chunk-5CG62MG4.js";import{u as ze}from"./chunk-WL7LDOGK.js";import"./chunk-FAKKFPWS.js";import{d as Fe,l as oe}from"./chunk-SYOTIUFV.js";import{a as Ie}from"./chunk-KRN42HVV.js";import{a as ae}from"./chunk-M26XU57I.js";import{a as Ae,b as I}from"./chunk-676XKZYL.js";import"./chunk-KVWVYYU6.js";import"./chunk-EAJDRVGJ.js";import"./chunk-LP67NEQS.js";import{a as ne}from"./chunk-ALSL2IRL.js";import{K as Ee,j as ie,s as Oe,t as Le}from"./chunk-SDWWVTYX.js";import{$c as D,Ab as L,Bb as E,Fc as u,Gc as M,Hb as be,Hc as k,Ia as he,J as de,Jc as ke,Lc as Y,M as G,Mc as ee,Nc as te,Ob as xe,Oc as Te,Pa as ge,Pc as Be,Qb as ve,Qc as Ve,Sb as Ce,Ua as fe,Vb as W,Wb as Se,Xb as h,Yb as Pe,Zb as g,_ as P,ac as Q,ad as F,bc as Z,bd as Me,cc as _,dc as s,ec as n,f as K,fb as ye,fc as f,ga as O,ka as y,lb as a,mc as w,qc as S,ra as v,sa as C,sc as l,ud as De,vb as _e,wa as me,wc as we,xa as ue,xc as J,yc as X}from"./chunk-XY2K67OX.js";import{a as T,b as B}from"./chunk-NAIKXHWT.js";var St=["otherBetsSection"],Pt=["emptyStatePicker"],wt=()=>[le,ae,ie];function kt(o,c){if(o&1&&(s(0,"span",16),u(1," Last Update: "),s(2,"time",17),u(3),D(4,"tzFormat"),n(),u(5,". "),n()),o&2){let e=l(2);a(2),W("datetime",e.latestLastUpdated),a(),M(Me(4,2,e.latestLastUpdated,"last-updated"))}}function Tt(o,c){if(o&1){let e=w();s(0,"div",3)(1,"app-search-input",10),te("valueChange",function(t){v(e);let r=l();return ee(r.propsSearch,t)||(r.propsSearch=t),C(t)}),S("valueChange",function(){v(e);let t=l();return C(t.onSearchKeyup())})("focusin",function(){v(e);let t=l();return C(t.openModalIfNotPro())}),n(),s(2,"div",11)(3,"div",12)(4,"button",13),S("click",function(){v(e);let t=l();return C(t.openFilter())}),s(5,"span"),u(6," Filter "),n(),f(7,"fa-icon",14),n(),s(8,"app-dropdown",15),S("valueChange",function(t){v(e);let r=l();return C(r.onSortChange(t))}),n()()(),h(9,kt,6,5,"span",16),n()}if(o&2){let e=l(),i=Ve(1);a(),Y("value",e.propsSearch),_("readonly",i!==!0),a(6),_("icon",e.faSliders),a(),_("options",e.sortDropdownOptions(i===!0))("value",e.betSort)("searchable",!1)("triggerLabel",e.sortCategoryLabel)("compactTriggerLabel",e.compactSortCategoryLabel)("leadingIcon",e.sortCategoryIcon),a(),g(e.totalAvailableBets>0?9:-1)}}function Bt(o,c){o&1&&f(0,"app-skeleton",5),o&2&&_("lines",8)}function Vt(o,c){if(o&1){let e=w();s(0,"div",6)(1,"span",18)(2,"span"),u(3),n()(),s(4,"span"),u(5," Please "),s(6,"span",19),S("click",function(){v(e);let t=l();return C(t.retrieveValueBets())}),u(7," try again "),n()()()}if(o&2){let e=l();a(3),k(" We are having trouble loading ",e.localisationService.localeTerm("prop_picks","title-case")," data ")}}function Mt(o,c){if(o&1&&(s(0,"div",6),u(1),n()),o&2){let e=l();a(),k(" No ",e.localisationService.localeTerm("prop_picks","title-case")," available, please try again later. ")}}function Dt(o,c){if(o&1&&(s(0,"div",6),u(1),n()),o&2){let e=l();a(),k(" No ",e.localisationService.localeTerm("prop_picks","title-case")," available for your chosen filters ")}}function Ot(o,c){o&1&&(s(0,"div",24),u(1," Props not available for prediction markets "),n(),s(2,"div",25),u(3," Player props are currently available for sportsbooks only. Change your settings or browse other props below. "),n())}function Lt(o,c){o&1&&(s(0,"div",24),u(1," No props available from your selected sportsbooks "),n(),s(2,"div",25),u(3," No available props were found from your selected sportsbooks. Change your settings or browse other props below. "),n())}function Et(o,c){if(o&1){let e=w();s(0,"div",20),h(1,Ot,4,0)(2,Lt,4,0),s(3,"button",22),S("click",function(){v(e);let t=l(2);return C(t.openEmptyStatePicker())}),u(4," Manage sportsbooks "),n(),f(5,"app-global-sportsbook-filter",23,0),n()}if(o&2){let e=l(2);a(),g(e.isPredictionMarketOnly()?1:2),a(4),_("hideTrigger",!0)}}function Ft(o,c){o&1&&(s(0,"span"),u(1,"From all sportsbooks:"),n())}function It(o,c){if(o&1&&(s(0,"span"),u(1),n()),o&2){let e=l(3);a(),k("Using your ",e.selectedBooks.length===1?"sportsbook":"sportsbooks",":")}}function At(o,c){if(o&1&&u(0),o&2){let e=l(3);k(" of ",e.totalAvailableBets," ")}}function Ut(o,c){if(o&1){let e=w();s(0,"button",30),S("click",function(){v(e);let t=l(3);return C(t.scrollToOtherBets())}),u(1," See other props "),n()}}function Rt(o,c){if(o&1&&(s(0,"div",21)(1,"div",26),h(2,Ft,2,0,"span")(3,It,2,1,"span"),s(4,"span",27),u(5),h(6,At,1,1),u(7),n(),f(8,"app-global-sportsbook-filter",28),n(),h(9,Ut,2,0,"button",29),n()),o&2){let e=l(2);a(2),g(e.isAllSportsbooksSelected()?2:3),a(3),k(" ",e.preferredAvailableBets," "),a(),g(e.isAllSportsbooksSelected()?-1:6),a(),k(" ",e.totalAvailableBets===1?"prop":"props"," "),a(),_("bareTrigger",!0),a(),g(!e.isAllSportsbooksSelected()&&e.otherAvailableBets>0?9:-1)}}function Ht(o,c){if(o&1&&h(0,Et,7,2,"div",20)(1,Rt,10,6,"div",21),o&2){let e=l();g(e.preferredAvailableBets===0?0:1)}}function $t(o,c){if(o&1&&f(0,"app-value-summary-props-row",32),o&2){let e=l(3).$implicit;_("play",e)("proOnly",!1)}}function jt(o,c){if(o&1&&(s(0,"div",37)(1,"div",38)(2,"span",39),u(3),n()()()),o&2){let e=l(5);a(3),k(" ",e.freeTrialCtaText[c]," ")}}function Nt(o,c){if(o&1){let e=w();s(0,"app-card",33)(1,"div",34),S("click",function(){v(e);let t=l(4);return C(t.openProModal())})("keydown.enter",function(){v(e);let t=l(4);return C(t.openProModal())})("keydown.space",function(){v(e);let t=l(4);return C(t.openProModal())}),f(2,"img",35),s(3,"span",36),u(4),n(),h(5,jt,4,1,"div",37),D(6,"async"),n()()}if(o&2){let e,i=l(4);
1_("padded",!1)("showBackground",!1),a(4),M(i.proBannerText),a(),g((e=F(6,4,i.authHelper.freeTrialCtaState$))?5:-1,e)}}function qt(o,c){if(o&1&&(h(0,$t,1,2,"app-value-summary-props-row",32),D(1,"async"),Pe(2,Nt,7,6,"app-card",33)),o&2){let e=l(3);g(F(1,1,e.proUser$)===!0?0:2)}}function zt(o,c){o&1&&f(0,"div",40)}function Kt(o,c){o&1&&(s(0,"div",31),be(1,qt,3,3)(2,zt,1,0),xe(3,1,wt,null,2,null,null,null,null,1),Ce(),ve(),n())}function Gt(o,c){if(o&1&&f(0,"app-value-summary-props-row",32),o&2){let e=l(),i=e.$implicit,t=e.$index,r=l();_("play",i)("proOnly",t>=r.freeLimit)}}function Wt(o,c){if(o&1&&h(0,Kt,5,0,"div",31)(1,Gt,1,2,"app-value-summary-props-row",32),o&2){let e=c.$index,i=l();g(e===i.freeLimit&&i.displayedValuePlays.length>i.freeLimit?0:1)}}function Qt(o,c){if(o&1){let e=w();s(0,"div",7)(1,"div",41),S("click",function(){v(e);let t=l();return C(t.showMorePicks())}),u(2," Load more props "),n()()}}function Zt(o,c){if(o&1&&f(0,"app-value-summary-props-row",32),o&2){let e=c.$implicit;_("play",e)("proOnly",!1)}}function Jt(o,c){if(o&1){let e=w();s(0,"div",7)(1,"div",41),S("click",function(){v(e);let t=l(3);return C(t.showMoreOtherPicks())}),u(2," Load more props "),n()()}}function Xt(o,c){if(o&1&&(Q(0,Zt,1,2,"app-value-summary-props-row",32,Se().trackValuePlay,!0),h(2,Jt,3,0,"div",7)),o&2){let e=l(2);Z(e.displayedOtherValuePlays),a(2),g(e.showMoreOtherVisible?2:-1)}}function Yt(o,c){if(o&1){let e=w();s(0,"div",null,1)(2,"app-card",42)(3,"div",43)(4,"div")(5,"div",44),u(6," From other sportsbooks: "),s(7,"span",45),u(8),n()()(),s(9,"button",46),S("click",function(){v(e);let t=l();return C(t.otherResultsHidden?t.showOtherResults():t.hideOtherResults())}),s(10,"span"),u(11),n(),f(12,"fa-icon",47),n()(),h(13,Xt,3,1),n()()}if(o&2){let e=l();a(2),_("padded",!1)("showBackground",!1)("overflow","visible"),a(6),ke(" ",e.otherAvailableBets," of ",e.totalAvailableBets," ",e.totalAvailableBets===1?"prop":"props"," "),a(),W("aria-expanded",!e.otherResultsHidden),a(2),k(" ",e.otherResultsHidden?"Show":"Hide"," "),a(),_("icon",e.otherResultsHidden?e.faChevronDown:e.faChevronUp),a(),g(e.otherResultsHidden?-1:13)}}var xt=(()=>{class o{response;destroy$=new K;sweetSpotRules=[];warningRules=[];selectedBooks=[...U];cdr=y(De);sports;otherBetsSection;emptyStatePicker;book="all";bookOptions=[];blockInitStarted=!1;filterBetTypes=[];selectedSport="all";filterTimeframe=168;freeLimit=3;valueBetsSports=[];valuePlays=[];valuePlaysError=!1;valuePlaysLoading=!0;startingDisplayLimit=20;currentDisplayLimit=0;otherDisplayLimit=0;betSort="winprob";displayedValuePlays=[];displayedOtherValuePlays=[];showMorePreferredVisible=!1;showMoreOtherVisible=!1;otherResultsHidden=!1;preferredAvailableBets=0;otherAvailableBets=0;upcomingMatches=[];selectedMatchID="";selectedMatchLabel="";propCategoryIndex={};propsSearch="";matchDropdownOptions=[];propCategoriesLabel="";proBannerText="";hiddenBetCount=0;maxHiddenEdge=0;mobileFilterOpen=!1;activeSportsList=[];activeGamesList=[];activePropsList=[];freeTrialCtaText=qe;currentAvailableBets=0;totalAvailableBets=0;maxEdgeFilter=null;minEdgeFilter=null;maxEdge=null;minEdge=null;sortCategoryLabel="";compactSortCategoryLabel="";sortCategoryIcon=re;sortCategories=[{label:"Earliest first",sort:"date",text:"Game Time",group:"Game time"},{label:"Latest first",sort:"-date",text:"Game Time",group:"Game time"},{label:"Highest first",sort:"edge",text:"Edge",group:"Edge"},{label:"Lowest first",sort:"-edge",text:"Edge",group:"Edge"},{label:"Highest first",sort:"winprob",text:"Probability",group:"Probability"},{label:"Lowest first",sort:"-winprob",text:"Probability",group:"Probability"}];latestLastUpdated=null;faChevronUp=Re;faChevronDown=Ne;faSliders=He;faArrowDown=je;faSortAmountDown=re;faSortAmountUp=$e;faCircleInfo=Ue;selectedTags=[];activeSports=[];tagsFilterOption;matchService=y(Ze);sportDataService=y(Je);generalService=y(Ke);betService=y(We);localisationService=y(R);authHelper=y(ze);blogService=y(q);gtmTrackingService=y(Ge);searchSubject=new K;sweetSpotService=y(rt);bookmakerFilterService=y(Xe);route=y(Fe);platformId=y(ge);browserMode=Oe(this.platformId);document=y(me);transferState=y(fe);constructor(e){this.response=e}proUser$=this.authHelper.isProUser$;prepareBlock(){this.blockInitStarted=!0,this.valuePlaysError=!1,this.valueBetsSports=this.sports.map(i=>i.toUpperCase()),this.updateSortCategoryLabel();let e=this.takeCachedPropsData();e?this.postMatchesFetch(e.matches,e.data):this.valuePlaysLoading=!0,this.resetDisplayLimits(),this.proUser$.pipe(P(this.destroy$)).subscribe(i=>{i===!1&&(this.currentDisplayLimit-=1)}),this.bookOptions=U,this.matchService.getGeoData().then(()=>{this.retrieveValueBets()},()=>{this.retrieveValueBets()})}checkForInternalLinkClick(e){this.generalService.checkForInternalLinkClick(e)}ngOnInit(){this.tagsFilterOption=it.filter(i=>i.type==="best prop"||i.key==="sweet-spot"||i.key==="high-edge"||i.key==="caution"||i.key==="top-picks").map(i=>B(T({},i),{open:!1}));let e=this.tagsFilterOption.find(i=>i.key==="high-edge");e&&(e.condition=se),this.browserMode&&(this.sweetSpotService.getWarningRules().pipe(P(this.destroy$)).subscribe(i=>{this.warningRules=i,this.updateCautionTagLogic(),this.selectedTags.includes("caution")&&(this.resetDisplayLimits(),this.setDisplayedValuePlays())}),this.sweetSpotService.getRules().pipe(P(this.destroy$)).subscribe(i=>{this.sweetSpotRules=i,this.updateSweetSpotTagLogic(),this.applySweetSpotQueryParam()})),this.activeSports=A.filter(i=>i.active&&!i.hideFromMainNav&&i.propsValueSummaryEligible).map(i=>i.code),this.sports&&!this.blockInitStarted&&this.prepareBlock(),this.searchSubject.pipe(de(300),G(),P(this.destroy$)).subscribe(()=>{this.setDisplayedValuePlays()}),this.bookmakerFilterService.selectedBooks$.pipe(G(),P(this.destroy$)).subscribe(i=>{this.selectedBooks=i,this.resetDisplayLimits(),this.otherResultsHidden=!1,this.setDisplayedValuePlays()})}updateSweetSpotTagLogic(){let e=this.tagsFilterOption.find(r=>r.key==="sweet-spot"),i=this.tagsFilterOption.find(r=>r.key==="top-picks"),t=r=>this.sweetSpotRules.some(d=>{if(!(d.sport===r.Sport))return!1;let p=!1;if((r.prop_name===d.market||r.bet===d.market)&&(p=!0),p){let b=r.edge,x=d.min_range*100,V=d.max_range?d.max_range*100:1/0;return b>=x&&b<=V}return!1});this.sweetSpotRules.length>0&&(e&&(e.condition=r=>t(r)),i&&(i.condition=r=>t(r)&&se(r)),!this.valuePlaysLoading&&this.valuePlays.length>0&&this.setDisplayedValuePlays())}updateCautionTagLogic(){let e=this.tagsFilterOption.find(i=>i.key==="caution");e&&this.warningRules.length>0&&(e.condition=i=>this.warningRules.some(t=>{if(!(t.sport===i.Sport))return!1;let d=!1;if((i.prop_name===t.market||i.bet===t.market)&&(d=!0),d){let m=i.edge,p=t.min_range*100,b=t.max_range?t.max_range*100:1/0;return m>=p&&m<=b}return!1}))}onSearchKeyup(){this.searchSubject.next(this.propsSearch)}ngOnChanges(e){!this.blockInitStarted&&e.sports.currentValue?this.prepareBlock():e.sports?.currentValue&&e.sports?.previousValue&&e.sports.currentValue!==e.sports.previousValue&&this.prepareBlock()}onTagsChange(e){this.selectedTags=e,this.resetDisplayLimits(),this.setDisplayedValuePlays()}sweetSpotQueryApplied=!1;applySweetSpotQueryParam(){this.sweetSpotQueryApplied||this.route.
1snapshot.queryParamMap.get("tag")!=="sweet-spot"||this.sweetSpotRules.length===0||this.proUser$.pipe(P(this.destroy$)).subscribe(i=>{i&&!this.sweetSpotQueryApplied&&(this.sweetSpotQueryApplied=!0,this.onTagsChange(["sweet-spot"]))})}setFilterTimeframe=e=>{this.proUser$.pipe(P(this.destroy$)).subscribe(i=>{i?(this.filterTimeframe=e,this.resetDisplayLimits(),this.setDisplayedValuePlays(),this.sportPickCount()):this.showProModal("timeframe-toggle")})};showProModal(e){let i={event:"pro_modal_appearance",event_category:e};this.gtmTrackingService.pushTagAndNavigate(i),this.blogService.setProModalData(!0)}setFilterEdge=(e,i)=>{this.minEdgeFilter=e,this.maxEdgeFilter=i,this.resetDisplayLimits(),this.setDisplayedValuePlays()};showMorePicks=()=>{this.currentDisplayLimit+=this.startingDisplayLimit,this.setDisplayedValuePlays()};showMoreOtherPicks=()=>{this.otherDisplayLimit+=this.startingDisplayLimit,this.setDisplayedValuePlays()};resetDisplayLimits(){this.currentDisplayLimit=this.startingDisplayLimit,this.otherDisplayLimit=this.startingDisplayLimit}sortDropdownOptions(e){return this.sortCategories.map(i=>({value:i.sort,label:i.label,group:i.group,locked:i.sort!==this.betSort&&e===!1,icon:i.sort.startsWith("-")?this.faSortAmountUp:this.faSortAmountDown}))}updateSortCategoryLabel(){let e=this.sortCategories.find(i=>i.sort===this.betSort);e&&(this.sortCategoryLabel=`Sort: ${e.text.toLowerCase()}, ${e.label.toLowerCase()}`,this.compactSortCategoryLabel=`Sort: ${e.text.toLowerCase()}`,this.sortCategoryIcon=e.sort.startsWith("-")?this.faSortAmountUp:this.faSortAmountDown)}onSortChange(e){let i=this.sortCategories.find(t=>t.sort===e);i&&this.setBetSort(i)}setBetSort(e){this.proUser$.pipe(P(this.destroy$)).subscribe(i=>{if(i)this.betSort=e.sort,this.updateSortCategoryLabel(),this.resetDisplayLimits(),this.setDisplayedValuePlays();else{let t={event:"pro_modal_appearance",event_category:"sort-toggle"};this.gtmTrackingService.pushTagAndNavigate(t),this.blogService.setProModalData(!0)}})}retrieveValueBets=()=>{this.valuePlays.length===0&&(this.valuePlaysLoading=!0),this.valuePlaysError=!1,this.sportDataService.getConciseUpcomingMatchData(this.valueBetsSports).pipe(P(this.destroy$)).subscribe(e=>{this.postMatchesFetch(e)},()=>{this.valuePlaysError=!0})};postMatchesFetch=(e,i)=>{if(this.upcomingMatches=e,e.forEach(r=>{r.UserDate=N(`${r.Date}`)}),i){this.postPicksFetch(i);return}let t=this.getPropsBlockStateKey();this.sportDataService.getPropsQuickPicksData(this.valueBetsSports,U).pipe(P(this.destroy$)).subscribe(r=>{Le(this.platformId)&&this.transferState.set(t,{matches:e,data:B(T({},r),{picks:r.picks.filter(d=>d.edge>2)})}),this.postPicksFetch(r)},r=>{this.valuePlaysError=!0})};getPropsBlockStateKey(){return`value-summary-props-block:${this.valueBetsSports.join(",")}`}takeCachedPropsData(){if(!this.browserMode)return null;let e=this.getPropsBlockStateKey(),i=this.transferState.get(e,null);return i&&this.transferState.remove(e),i}postPicksFetch=e=>{let i=e.picks;this.propCategoryIndex=e.prop_categories;let t=[],r=-1/0,d=1/0,m=0;for(let p of i)try{if(p?.Date&&typeof p.Date=="string"&&p.Date!=="null"&&p.Date!=="undefined"){let b=N(p.Date);b&&(p.UserDate=b)}if(p.Team===p.HomeTeam?.Abv?p.PlayerTeam=p.HomeTeam:p.Team===p.AwayTeam?.Abv&&(p.PlayerTeam=p.AwayTeam),this.valueBetsSports.includes(p.Sport.toUpperCase())&&p.edge>2&&j(H(p.UserDate,15))&&(t.push(p),p.edge>r&&(r=p.edge),p.edge<d&&(d=p.edge),p.LastUpdated)){let b=N(p.LastUpdated).getTime();b>m&&(m=b)}}catch(b){console.error(b)}this.valuePlays=this.createCanonicalPropPlays(t),this.valuePlays.length>0?(this.maxEdge=Math.ceil(r*10)/10,this.minEdge=Math.trunc(d*10)/10):(this.maxEdge=null,this.minEdge=null),m>0?(this.latestLastUpdated=new Date(m),this.response&&this.response.set("Last-Modified",this.latestLastUpdated.toUTCString())):this.latestLastUpdated=null,this.setDisplayedValuePlays(),this.sportPickCount(),this.valuePlaysLoading=!1,this.cdr.markForCheck()};toggleFilterBetType=e=>{this.filterBetTypes.includes(e)?this.filterBetTypes.splice(this.filterBetTypes.indexOf(e),1):this.filterBetTypes.push(e),this.resetDisplayLimits(),this.setDisplayedValuePlays()};setFilterSport=e=>{this.selectedSport=e,this.resetDisplayLimits(),this.selectedMatchID="",this.selectedMatchLabel="",this.selectedSport==="all"?this.filterBetTypes=[]:this.filterBetTypes=Object.keys(this.propCategoryIndex[this.selectedSport]||[]),this.setDisplayedValuePlays()};toggleAllFilterBetTypes=e=>{this.filterBetTypes.length===Object.keys(this.propCategoryIndex[this.selectedSport]).length?this.filterBetTypes=[]:this.filterBetTypes=Object.keys(this.propCategoryIndex[this.selectedSport]).slice(),this.resetDisplayLimits(),this.setDisplayedValuePlays()};setSelectedMatch=(e,i)=>{this.selectedMatchID=e,this.selectedMatchLabel=i,this.setDisplayedValuePlays()};trackValuePlay(e,i){return[i.SIMatchID,i.prop_id,i.UniqueName||i.player||"",i.Team||"",i.bet,i.line??"",i.bookmaker].join("|")}setDisplayedValuePlays(){if(this.selectedSport!=="all"){let m=this.upcomingMatches.filter(x=>x.Sport===this.selectedSport&&j(H(x.UserDate,15))).sort((x,V)=>$(x.UserDate,V.UserDate)),p=[],b=new Set;for(let x of m){let V=[x.HomeTeam.Abv,x.AwayTeam.Abv].sort().join("-");b.has(V)||(p.push(x),b.add(V))}this.matchDropdownOptions=p.map(x=>({matchID:x.SIMatchID,label:`${this.generalService.teamNameDisplay(x.AwayTeam)} vs. ${this.generalService.teamNameDisplay(x.HomeTeam)}`})),this.matchPickCount(),this.propCategoryPickCount(),this.filterBetTypes.length===Object.keys(this.propCategoryIndex?.[this.selectedSport]||[]).length?this.propCategoriesLabel="All Props":this.filterBetTypes.length===0?this.propCategoriesLabel="Select Prop Type":this.propCategoriesLabel=this.filterBetTypes.map(x=>this.propCategoryIndex[this.selectedSport]?.[x]).join(", ")}else this.matchDropdownOptions=[],this.propCategoriesLabel="";let e=this.isAllSportsbooksSelected(),i=this.getDisplayableValuePlays(this.selectedBooks,e),t=new Set(i.map(m=>m.canonicalKey)),r=e?[]:this.getDisplayableValuePlays(this.getOtherSportsbooks(),!1).filter(m=>!t.has(m.canonicalKey)),d=i;if(this.preferredAvailableBets=i.length,this.otherAvailableBets=r.length,this.totalAvailableBets=e?d.length:i.length+r.length,this.currentAvailableBets=d.length,this.displayedValuePlays=d.slice(0,this.currentDisplayLimit),this.displayedOtherValuePlays=e||this.otherResultsHidden?[]:r.slice(0,this.otherDisplayLimit),d.length>this.freeLimit){this.hiddenBetCount=d.length-this.freeLimit;let m=d.slice(this.freeLimit);this.maxHiddenEdge=m.length>0?Math.max(...m.map(p=>p.edge)):0,this.proBannerText=`Access ${this.hiddenBetCount} more ${this.hiddenBetCount===1?"bet with":"bets including"}
1 ${this.indefinitePrefix(this.maxHiddenEdge.toFixed(0))} ${this.maxHiddenEdge.toFixed(0)}% edge`}else this.proBannerText="";this.showMorePreferredVisible=d.length>this.currentDisplayLimit,this.showMoreOtherVisible=!e&&!this.otherResultsHidden&&r.length>this.otherDisplayLimit,this.cdr.markForCheck()}isAllSportsbooksSelected(){return this.bookmakerFilterService.isAllSelected(this.selectedBooks)}isPredictionMarketOnly(){return this.bookmakerFilterService.isPredictionMarketOnly(this.selectedBooks)}openEmptyStatePicker(){this.emptyStatePicker?.openPicker()}getOtherSportsbooks(){return this.bookmakerFilterService.getOtherBooks(this.selectedBooks)}hideOtherResults(){this.otherResultsHidden=!0,this.setDisplayedValuePlays()}showOtherResults(){this.otherResultsHidden=!1,this.setDisplayedValuePlays()}scrollToOtherBets(){if(!this.browserMode)return;this.otherResultsHidden&&this.showOtherResults(),this.cdr.detectChanges();let e=this.otherBetsSection?.nativeElement;if(!e)return;let i=this.document.defaultView;if(!i)return;let t=this.document.querySelector("header")?.offsetHeight??0,r=e.getBoundingClientRect().top+i.scrollY-t;i.scrollTo({top:r,behavior:"smooth"})}createCanonicalPropPlays(e){let i=new Map;for(let t of e){let r=this.getCanonicalPropKey(t);i.set(r,[...i.get(r)||[],B(T({},t),{canonicalKey:r})])}return Array.from(i.entries()).map(([t,r])=>{let d=[...r].sort((p,b)=>this.compareSportsbookOptions(p,b)),m=B(T({},d[0]),{isBestOdds:!0});return B(T({},m),{sportsbookOptions:d,bestOddsOption:m,isBestOdds:!0,canonicalKey:t})})}getCanonicalPropKey(e){return[e.SIMatchID,e.prop_id,e.UniqueName||e.player||"",e.Team||"",e.bet,this.normaliseLineValue(e.line)].join("|")}normaliseLineValue(e){return e==null?"":String(e)}compareSportsbookOptions(e,i){return e.edge!==i.edge?i.edge-e.edge:e.bookmaker.localeCompare(i.bookmaker)}getScopedValuePlays(e,i=!1){return this.valuePlays.map(t=>this.createScopedValuePlay(t,e,i)).filter(t=>!!t)}getDisplayableValuePlays(e,i=!1){return this.getScopedValuePlays(e,i).filter(t=>this.fitsValuePlaysFilter(t)).sort((t,r)=>this.sortValuePlays(t,r))}createScopedValuePlay(e,i,t){if(t)return B(T({},e),{bestOddsOption:e.bestOddsOption,isBestOdds:!0});let r=(e.sportsbookOptions||[]).filter(m=>i.includes(m.bookmaker));if(r.length===0)return null;let d=[...r].sort((m,p)=>this.compareSportsbookOptions(m,p))[0];return B(T(T({},e),d),{sportsbookOptions:e.sportsbookOptions,bestOddsOption:e.bestOddsOption,isBestOdds:this.isBestOddsOption(d,e),canonicalKey:e.canonicalKey})}isBestOddsOption(e,i){return e.bookmaker===i.bookmaker||e.odds===i.odds&&e.edge===i.edge&&e.line===i.line}sortValuePlays(e,i){if(this.betSort==="date"){let t=$(e.UserDate,i.UserDate);return t===0?i.edge-e.edge:t}if(this.betSort==="-date"){let t=$(i.UserDate,e.UserDate);return t===0?i.edge-e.edge:t}return this.betSort==="-winprob"?e.probability-i.probability:this.betSort==="winprob"?i.probability-e.probability:this.betSort==="edge"?i.edge-e.edge:this.betSort==="-edge"?e.edge-i.edge:i.edge-e.edge}indefinitePrefix(e){return/^(8|11|18)$/.test(e)?"an":"a"}sportPickCount(){let e={};this.getScopedValuePlays(this.selectedBooks,this.isAllSportsbooksSelected()).forEach(t=>{this.fitsValuePlaysFilter(t,!0)&&(e[t.Sport.toUpperCase()]=e[t.Sport.toUpperCase()]+1||1)}),this.activeSportsList=this.valueBetsSports.map(t=>({name:t,count:e[t]||0})),this.activeSportsList.sort((t,r)=>r.count-t.count)}matchPickCount(){let e={};this.getScopedValuePlays(this.selectedBooks,this.isAllSportsbooksSelected()).forEach(t=>{this.fitsValuePlaysFilter(t,!0)&&(e[t.SIMatchID]=e[t.SIMatchID]+1||1)}),this.activeGamesList=this.matchDropdownOptions.map(t=>({matchID:t.matchID,label:t.label,count:e[t.matchID]||0})),this.activeGamesList.sort((t,r)=>r.count-t.count)}propCategoryPickCount(){let e={};this.activePropsList=[],this.getScopedValuePlays(this.selectedBooks,this.isAllSportsbooksSelected()).forEach(t=>{this.fitsValuePlaysFilter(t,!0)&&t.Sport.toUpperCase()===this.selectedSport.toUpperCase()&&(e[t.prop_id.toString()]=e[t.prop_id]+1||1)});for(let t in this.propCategoryIndex[this.selectedSport]){let r=this.propCategoryIndex[this.selectedSport][t];this.activePropsList.push({name:r,propID:t,count:e[t]||0})}this.activePropsList.sort((t,r)=>r.count-t.count)}fitsValuePlaysFilter(e,i=!1){let t=!1;return this.propsSearch!==""?e.Sport.toLowerCase()==="ten"||(t=gt(this.propsSearch,[e.HomeTeam.DisplayName,e.HomeTeam.Nickname,e.HomeTeam.Abv,e.AwayTeam.DisplayName,e.AwayTeam.Nickname,e.AwayTeam.Abv,e.player,e.prop_text])):t=!0,!(!t||!i&&this.selectedSport.toUpperCase()!=="ALL"&&(this.selectedSport.toUpperCase()!==e.Sport.toUpperCase()||!this.filterBetTypes.includes(e.prop_id.toString())||this.selectedMatchID!==""&&this.selectedMatchID.toUpperCase()!==e.SIMatchID.toUpperCase())||!j(H(e.UserDate,15))||Qe(e.UserDate,new Date)>this.filterTimeframe||this.maxEdgeFilter&&this.minEdgeFilter&&!(e.edge<=this.maxEdgeFilter&&e.edge>=this.minEdgeFilter)||this.selectedTags.length>0&&!this.tagsFilterOption.filter(m=>this.selectedTags.includes(m.key)).some(m=>m.condition&&m.condition(e)))}openProModal(){let e={event:"pro_modal_appearance",event_category:"insert-banner"};this.gtmTrackingService.pushTagAndNavigate(e),this.blogService.setProModalData(!0)}openModalIfNotPro(){this.proUser$.pipe(P(this.destroy$)).subscribe(e=>{if(!e){let i={event:"pro_modal_appearance",event_category:"search-bar"};this.gtmTrackingService.pushTagAndNavigate(i),this.blogService.setProModalData(!0)}})}ngOnDestroy(){this.destroy$.next(),this.destroy$.complete()}openFilter(){this.mobileFilterOpen=!0}showTagsInfoPopup(){this.blogService.setTagsHelpInfoModalData(!0)}static \u0275fac=function(i){return new(i||o)(_e(at,8))};static \u0275cmp=L({type:o,selectors:[["app-value-summary-props-block"]],viewQuery:function(i,t){if(i&1&&we(St,5)(Pt,5),i&2){let r;J(r=X())&&(t.otherBetsSection=r.first),J(r=X())&&(t.emptyStatePicker=r.first)}},hostBindings:function(i,t){i&1&&S("click",function(d){return t.checkForInternalLinkClick(d)})},inputs:{sports:"sports"},features:[he],decls:17,vars:36,consts:[["emptyStatePicker",""],["otherBetsSection",""],[1,"external-value-bets-props"],[1,"flex","flex-col","sm:flex-row","sm:items-center","sm:gap-2.5","flex-wrap"],[1,"value-bets-list","mt-4"],["type","bet-row",3,"lines"],[1,"bets-placeholder"],[1,"show-more-ctr"],["shadow","none"],[3,"mobileFilterOpenChange","selectedTagsChange","selectedSport","valueBetsSports","activeSportsList","setFilterSport","mobileFilterOpen","selectedMatchID","selectedMatchLabel","setSelectedMatch","activeGamesList","propCategoriesLabel","filterBetTypes","propCategoryIndex","activePropsList","toggleFilterBetType","toggleAllFilterBetTypes","filterTimeframe","displayedValuePlays","setFilterTimeframe","maxEdge","minEdge","minEdgeFilter","maxEdgeFilter","setFilterEdge","tagsList","selectedTags"],["placeholder","Search for a team or player",1,"order-1","max-sm:mb-2.5",3,"valueChange","focusin","value","readonly"],[1,"mobile-filters","order-3","sm:order-2"],[1,"flex","gap-2"],[1,"flex","max-sm:w-1/2","justify-between","h-9","bg-white","px-2","sm:px-4","py-2","text-gray-900","gap-2.5","sm:gap-3","items-center","shadow","shadow-slate-300","hover:bg-slate-200","rounded","text-sm","font-medium","whitespace-nowrap",3,"click"],[3,"icon"],["mobileSheetTitle","Sort by","listMaxHeightClass","max-h-[350px]","placeholder","Sort by",1,"flex-auto","max-sm:w-1/2","sm:min-w-[290px]",3,"valueChange","options","value","searchable","triggerLabel","compactTriggerLabel","leadingIcon"],[1,"last-updated","text-xs","order-4","sm:order-3","mt-2","sm:ml-auto"],[1,"lu-time"],[1,"error-main"],[1,"retry-link",3,"click"],[1,"my-3","flex","min-h-32","flex-col","items-center","justify-center","rounded-md","border","border-dashed","border-slate-400","px-4","py-8","text-center"],[1,"flex","flex-wrap","items-center","gap-x-3","gap-y-2","body-text-small-primary","sm:body-text-medium-primary","font-medium","sm:font-semibold"],["type","button",1,"mt-4","inline-flex","h-10","items-center","justify-center","rounded-md","bg-highlight-100","px-5","text-sm","font-semibold","text-white","shadow-sm","transition","hover:bg-highlight-100/80",3,"click"],[3,"hideTrigger"],[1,"text-base","font-bold","text-gray-950"],[1,"mt-2","max-w-md","text-sm","text-gray-600"],[1,"flex","flex-wrap","items-center","gap-2","sm:contents"],[1,"rounded","bg-gray-200","px-2","py-1","body-text-xsmall-primary","sm:body-text-small-primary","font-medium","sm:font-semibold"],[3,"bareTrigger"],["type","button",1,"inline-flex","h-9","items-center","rounded-full","border","border-slate-300","bg-white","px-3","text-xs","
1sm:text-sm","font-semibold","text-gray-950","shadow-sm","transition","hover:bg-slate-50","sm:ml-auto"],["type","button",1,"inline-flex","h-9","items-center","rounded-full","border","border-slate-300","bg-white","px-3","text-xs","sm:text-sm","font-semibold","text-gray-950","shadow-sm","transition","hover:bg-slate-50","sm:ml-auto",3,"click"],[1,"prop-gate-slot",2,"min-height","129px"],["ngSkipHydration","",1,"value-bet",3,"play","proOnly"],[3,"padded","showBackground"],["role","button","tabindex","0","aria-label","Unlock all props with Dimers Pro",1,"pro-banner","w-full","flex","flex-col","sm:flex-row","justify-center","sm:justify-between","items-center","gap-2.5","cursor-pointer",3,"click","keydown.enter","keydown.space"],["src","https://imgix.cosmicjs.com/b268f1c0-dab2-11ee-a698-6f33e3e4a628-Best-Props-icon.svg?auto=format","alt","Best Props icon","height","80","width","80",1,"hidden","md:flex","h-20","w-20"],[1,"text-2xl","font-bold"],[1,"pro-button-group"],[1,"pro-button"],[1,"normal-case"],["aria-hidden","true"],[1,"show-more-btn",3,"click"],["shadow","card-sm","customClasses","bg-gray-100 p-4 mt-6 flex flex-col gap-2",3,"padded","showBackground","overflow"],[1,"flex","flex-col","gap-3","sm:flex-row","sm:items-center","sm:justify-between"],[1,"font-semibold","body-text-medium-primary"],[1,"rounded","bg-slate-200","px-2","py-1","font-semibold","body-text-small-primary"],["type","button",1,"btn-small-outline",3,"click"],[1,"text-sm",3,"icon"]],template:function(i,t){if(i&1){let r=w();s(0,"div",2),Te(1),D(2,"async"),h(3,Tt,10,10,"div",3),s(4,"div",4),h(5,Bt,1,1,"app-skeleton",5),h(6,Vt,8,1,"div",6),h(7,Mt,2,1,"div",6),h(8,Dt,2,1,"div",6),h(9,Ht,2,1),Q(10,Wt,2,1,null,null,t.trackValuePlay,!0),h(12,Qt,3,0,"div",7),h(13,Yt,14,10,"div"),n(),f(14,"app-bookie-logo-row",8),n(),s(15,"app-best-prop-mobile-filter",9),te("mobileFilterOpenChange",function(m){return v(r),ee(t.mobileFilterOpen,m)||(t.mobileFilterOpen=m),C(m)}),S("selectedTagsChange",function(m){return t.onTagsChange(m)}),n(),f(16,"app-tags-help-popup")}i&2&&(a(),Be(F(2,33,t.proUser$)),a(2),g(!t.valuePlaysLoading&&!t.valuePlaysError?3:-1),a(2),g(t.valuePlaysLoading&&!t.valuePlaysError?5:-1),a(),g(t.valuePlaysError?6:-1),a(),g(!t.valuePlaysLoading&&!t.valuePlaysError&&t.valuePlays.length===0?7:-1),a(),g(!t.valuePlaysLoading&&!t.valuePlaysError&&t.valuePlays.length>0&&t.displayedValuePlays.length===0&&(t.isAllSportsbooksSelected()||t.otherAvailableBets===0)?8:-1),a(),g(!t.valuePlaysLoading&&!t.valuePlaysError&&t.valuePlays.length>0&&t.totalAvailableBets>0?9:-1),a(),Z(t.displayedValuePlays),a(2),g(t.showMorePreferredVisible?12:-1),a(),g(!t.isAllSportsbooksSelected()&&t.otherAvailableBets>0?13:-1),a(2),_("selectedSport",t.selectedSport)("valueBetsSports",t.valueBetsSports)("activeSportsList",t.activeSportsList)("setFilterSport",t.setFilterSport),Y("mobileFilterOpen",t.mobileFilterOpen),_("selectedMatchID",t.selectedMatchID)("selectedMatchLabel",t.selectedMatchLabel)("setSelectedMatch",t.setSelectedMatch)("activeGamesList",t.activeGamesList)("propCategoriesLabel",t.propCategoriesLabel)("filterBetTypes",t.filterBetTypes)("propCategoryIndex",t.propCategoryIndex)("activePropsList",t.activePropsList)("toggleFilterBetType",t.toggleFilterBetType)("toggleAllFilterBetTypes",t.toggleAllFilterBetTypes)("filterTimeframe",t.filterTimeframe)("displayedValuePlays",t.currentAvailableBets)("setFilterTimeframe",t.setFilterTimeframe)("maxEdge",t.maxEdge)("minEdge",t.minEdge)("minEdgeFilter",t.minEdgeFilter)("maxEdgeFilter",t.maxEdgeFilter)("setFilterEdge",t.setFilterEdge)("tagsList",t.tagsFilterOption)("selectedTags",t.selectedTags))},dependencies:[I,Ae,le,z,_t,ft,ht,Ye,yt,ae,st,ie,ot],styles:[`@keyframes flash{to{visibility:hidden}}.external-value-bets-props{display:flex;box-sizing:border-box;flex-direction:column;justify-content:flex-start;align-items:stretch;font-family:Work Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;font-weight:400;max-width:100%;margin:0 auto;padding:4px 0}.external-value-bets-props *{box-sizing:border-box}.external-value-bets-props .value-bets-notes{color:#100d2c}.external-value-bets-props .value-bets-notes .last-updated .lu-time{color:#627087}.external-value-bets-props .value-bets-list{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:8px}.external-value-bets-props .value-bets-list .bets-placeholder{height:100px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px;font-size:16px}.external-value-bets-props .value-bets-list .bets-placeholder .animated-ellipsis .dot{animation:flash .6s steps(3,start) infinite}.external-value-bets-props .value-bets-list .bets-placeholder .animated-ellipsis .dot.dot1{animation-delay:0s}.external-value-bets-props .value-bets-list .bets-placeholder .animated-ellipsis .dot.dot2{animation-delay:.2s}.external-value-bets-props .value-bets-list .bets-placeholder .animated-ellipsis .dot.dot3{animation-delay:.4s}.external-value-bets-props .value-bets-list .bets-placeholder .error-main{font-weight:500;margin-bottom:3px}.external-value-bets-props .value-bets-list .bets-placeholder .retry-link{color:#1d4ed8;cursor:pointer}.external-value-bets-props .value-bets-list .bets-placeholder .retry-link:hover{text-decoration:underline}.external-value-bets-props .value-bets-list .pro-banner{background:linear-gradient(to bottom,#edf0f3,#fff);box-shadow:0 0 4px #e0e0e0;min-height:129px;text-align:center;border:1px solid transparent;padding:20px;background-origin:border-box}.external-value-bets-props .value-bets-list .pro-banner:hover{border:1px solid #979797}@media screen and (max-width:1450px){.external-value-bets-props .value-bets-list .pro-banner{padding:20px 10px}}@media screen and (max-width:1250px){.external-value-bets-props .value-bets-list .pro-banner{min-height:158px}}.external-value-bets-props .value-bets-list .pro-banner .pro-button{border:1px solid #1d4ed8;background-color:#1d4ed8;color:#fff;display:flex;height:2.5rem;cursor:pointer;align-items:center;justify-content:center;padding:.5rem 1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;text-transform:capitalize;border-radius:4px;transition:background-color .2s linear,color .2s linear,box-shadow .2s linear;text-decoration:none}.external-value-bets-props .value-bets-list .pro-banner .pro-button:hover{background-color:#6f90ec;box-shadow:0 0 4px #e0e0e0}.external-value-bets-props .value-bets-list .pro-banner .pro-button-group{dis
1play:flex;flex-direction:column;align-items:center;gap:8px}.external-value-bets-props .value-bets-list .pro-banner .pro-button-subtext{font-size:14px;line-height:20px;font-weight:600;color:#100d2c;text-align:center}.external-value-bets-props .value-bets-list .show-more-ctr{display:flex;flex-direction:column;justify-content:center;align-items:stretch}.external-value-bets-props .value-bets-list .show-more-ctr .show-more-btn{padding:15px;cursor:pointer;font-size:14px;text-align:center;color:#fff;background-color:#100d2c;transition:background-color .2s linear;border-radius:4px}.external-value-bets-props .value-bets-list .show-more-ctr .show-more-btn:hover{background-color:#1e1953}@media screen and (max-width:1250px){.external-value-bets-props{padding:5px}}@media screen and (max-width:650px){.external-value-bets-props{padding:5px 0}}.external-value-bets-props .tags-dropdown-btn .options{visibility:hidden;position:absolute;overflow-y:auto;margin:10px 0 0;border-radius:4px;background:#fff;box-shadow:0 0 10px #e0e0e0;animation-name:fadeInDown;-webkit-animation-name:fadeInDown;animation-duration:.2s;animation-fill-mode:both;-webkit-animation-duration:.2s;-webkit-animation-fill-mode:both}.external-value-bets-props .tags-dropdown-btn.active .options{visibility:visible;opacity:0;z-index:10;animation-name:fadeInUp;-webkit-animation-name:fadeInUp;animation-duration:.2s;animation-fill-mode:both;-webkit-animation-duration:.2s;-webkit-animation-fill-mode:both}@keyframes fadeInDown{0%{transform:translateZ(0);opacity:1}to{transform:translate3d(0,20px,0);opacity:0}}@keyframes fadeInUp{0%{transform:translate3d(0,30px,0);opacity:0}to{transform:translateZ(0);opacity:1}}.external-value-bets-props .bet-tags .info-tooltip,.external-value-bets-props .high-value-info.info-tooltip{position:relative}.external-value-bets-props .bet-tags .info-tooltip:hover .tooltip-body,.external-value-bets-props .high-value-info.info-tooltip:hover .tooltip-body{display:block;pointer-events:visible}.external-value-bets-props .bet-tags .info-tooltip .tooltip-body,.external-value-bets-props .high-value-info.info-tooltip .tooltip-body{display:none;pointer-events:none;position:absolute;bottom:100%;z-index:2;padding:12px;font-weight:400;font-size:14px;margin-bottom:5px} 2`],encapsulation:2,changeDetection:0})}return o})();function ei(o,c){if(o&1&&f(0,"app-page-intro-copy",5),o&2){let e=l();_("html",e.trustedDesc)}}function ti(o,c){if(o&1&&f(0,"app-value-summary-props-block",7),o&2){let e=l();_("sports",e.valueBetsSports)}}function ii(o,c){o&1&&f(0,"app-skeleton",8),o&2&&_("lines",8)}function oi(o,c){if(o&1&&f(0,"app-reasons-to-trust",11),o&2){let e=l();_("reasonsToTrust",e.reasonsToTrust)}}function ri(o,c){if(o&1&&f(0,"div",12),o&2){let e=l();_("innerHTML",e.trustedCopy,ye)}}function ai(o,c){if(o&1&&f(0,"app-faq-section",14),o&2){let e=l();_("faqSection",e.faqSection)}}var vt=(()=>{class o{metaSetter=y(tt);localisationService=y(R);blogService=y(q);sanitiser=y(Ee);destroyRef=y(ue);title="Best Prop Bets Today";trustedDesc;trustedCopy;reasonsToTrust=null;faqSection;valueBetsSports=this.localisationService.sportPrioritySort(A).filter(e=>e.propsValueSummaryEligible).map(e=>e.code);ngOnInit(){this.retrieveAndSetMetadata()}retrieveAndSetMetadata(){this.blogService.getAppSettings("prop-bets").pipe(Ie(this.destroyRef)).subscribe(e=>{this.postMetaFetch(e)},()=>{this.title="Best Prop Bets Today",this.reasonsToTrust=null,this.metaSetter.setMeta({title:"Dimers",description:"No more watching from the sidelines. Dimers gives sports fans the news, tools & analysis to Make the Play.",metaImageURL:"https://cdn.ciphersports.io/images/dimers-site/generic_meta.jpeg",canonicalURL:"https://www.dimers.com/props",structuredData:pe({pageCode:"best-props",pageUrl:"https://www.dimers.com/props",fallbackTitle:"Best Prop Bets Today"})})})}postMetaFetch(e){this.title=lt(e.page_title,"Best Prop Bets Today"),this.metaSetter.setMeta({title:e.app_title,seoTitle:e.seo_title,description:e.seo_description,metaImageURL:e.thumbnail?.url||"https://cdn.ciphersports.io/images/dimers-site/generic_meta.jpeg",canonicalURL:"https://www.dimers.com/props",structuredData:[pe({pageCode:"best-props",pageUrl:"https://www.dimers.com/props",fallbackTitle:"Best Prop Bets Today",settings:e}),{"@context":"https://schema.org","@type":"HowTo",name:e.app_title||"Best Prop Bets - Value Player Props",description:e.seo_description||"Find the best value player prop bets with data-driven analysis and statistical insights",image:"https://cdn.ciphersports.io/images/dimers-site/generic_meta.jpeg",totalTime:"PT20M",supply:[{"@type":"HowToSupply",name:"Sports Betting Bankroll"},{"@type":"HowToSupply",name:"Player Statistics Database"}],tool:[{"@type":"HowToTool",name:"Prop Bet Odds Comparison"},{"@type":"HowToTool",name:"Statistical Analysis Software"}],step:[{"@type":"HowToStep",name:"Identify Value Opportunities",text:"Use statistical models to find player props where the odds offer better value than the true probability",position:1},{"@type":"HowToStep",name:"Research Player Performance",text:"Analyze recent player statistics, injuries, matchups, and historical performance in similar situations",position:2},{"@type":"HowToStep",name:"Consider Game Context",text:"Factor in weather, venue, defensive matchups, and game situation that could affect player performance",position:3},{"@type":"HowToStep",name:"Compare Across Sportsbooks",text:"Shop for the best odds on identified value props across multiple betting platforms",position:4},{"@type":"HowToStep",name:"Apply Proper Sizing",text:"Use Kelly Criterion or similar methods to determine appropriate bet size based on edge",position:5}],publisher:et},{"@context":"https://schema.org","@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Home",item:"https://www.dimers.com"},{"@type":"ListItem",position:2,name:"Best Props",item:"https://www.dimers.com/props"}]}]}),this.trustedDesc=ne(this.sanitiser,e.app_page_subheader),this.trustedCopy=ne(this.sanitiser,e.subheading_description),this.reasonsToTrust=e.reasons_to_trust?.enabled?e.reasons_to_trust:null,this.faqSection=e.faq_section}static \u0275fac=function(i){return new(i||o)};static \u0275cmp=L({type:o,selectors:[["app-value-summary-props-
2page"]],decls:18,vars:6,consts:[[1,"value-summary-props-page-content"],[1,"full-column"],[1,"page-description"],[1,"flex","gap-2","justify-between","items-center"],[1,"page-title"],[3,"html"],["tool","player-props"],[3,"sports"],["type","bet-row",3,"lines"],[1,"main-column"],[1,"mt-6"],["headingId","reasons-to-trust-prop-bets-title",3,"reasonsToTrust"],[1,"value-summary-desc",3,"innerHTML"],[1,"sidebar"],[1,"faq-full",3,"faqSection"]],template:function(i,t){i&1&&(s(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"h1",4),u(5),n()(),h(6,ei,1,1,"app-page-intro-copy",5),f(7,"app-best-bets-props-banner",6),n(),h(8,ti,1,1,"app-value-summary-props-block",7)(9,ii,1,1,"app-skeleton",8),n(),s(10,"div",9),f(11,"app-dimers-business-card",10)(12,"app-best-offers"),h(13,oi,1,1,"app-reasons-to-trust",11),h(14,ri,1,1,"div",12),n(),s(15,"div",13),f(16,"app-standard-sidebar"),n(),h(17,ai,1,1,"app-faq-section",14),n()),i&2&&(a(5),M(t.title),a(),g(t.trustedDesc?6:-1),a(2),g(t.valueBetsSports?8:9),a(5),g(t.reasonsToTrust?13:-1),a(),g(t.trustedCopy?14:-1),a(3),g(!(t.faqSection==null||t.faqSection.questions==null)&&t.faqSection.questions.length?17:-1))},dependencies:[ct,xt,mt,I,nt,bt,z,pt,dt,ut],styles:["[_nghost-%COMP%]{display:block;overflow-x:hidden}.value-summary-props-page-content[_ngcontent-%COMP%]{max-width:1270px;margin:0 auto;padding:0 10px;width:100%;display:grid;grid-template-columns:repeat(12,1fr);gap:30px;grid-auto-flow:row;align-content:start}@media screen and (max-width:850px){.value-summary-props-page-content[_ngcontent-%COMP%]{gap:30px 10px}}.value-summary-props-page-content[_ngcontent-%COMP%] .main-column[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 9;display:grid;grid-template-columns:100%;gap:30px;grid-auto-flow:row;align-content:start;max-width:100%}@media screen and (max-width:1250px){.value-summary-props-page-content[_ngcontent-%COMP%] .main-column[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 8}}@media screen and (max-width:1030px){.value-summary-props-page-content[_ngcontent-%COMP%] .main-column[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 12}}.value-summary-props-page-content[_ngcontent-%COMP%] .sidebar[_ngcontent-%COMP%]{grid-column-start:10;grid-column-end:span 3;display:grid;grid-template-columns:100%;gap:30px;grid-auto-flow:row;align-content:start;max-width:100%}@media screen and (max-width:1250px){.value-summary-props-page-content[_ngcontent-%COMP%] .sidebar[_ngcontent-%COMP%]{grid-column-start:9;grid-column-end:span 4}}@media screen and (max-width:1030px){.value-summary-props-page-content[_ngcontent-%COMP%] .sidebar[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 12}}.value-summary-props-page-content[_ngcontent-%COMP%] .narrow-main-column[_ngcontent-%COMP%]{grid-column-start:4;grid-column-end:span 6;display:grid;grid-template-columns:100%;gap:30px;grid-auto-flow:row;align-content:start;max-width:100%}@media screen and (max-width:1250px){.value-summary-props-page-content[_ngcontent-%COMP%] .narrow-main-column[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 8;grid-row:1}}@media screen and (max-width:1030px){.value-summary-props-page-content[_ngcontent-%COMP%] .narrow-main-column[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 12}}.value-summary-props-page-content[_ngcontent-%COMP%] .left-flank[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 3;display:grid;grid-template-columns:100%;gap:30px;grid-auto-flow:row;align-content:start;max-width:100%}@media screen and (max-width:1250px){.value-summary-props-page-content[_ngcontent-%COMP%] .left-flank[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 8;grid-row:2}}@media screen and (max-width:1030px){.value-summary-props-page-content[_ngcontent-%COMP%] .left-flank[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 12}}.value-summary-props-page-content[_ngcontent-%COMP%] .right-flank[_ngcontent-%COMP%]{grid-column-start:10;grid-column-end:span 3;display:grid;grid-template-columns:100%;gap:30px;grid-auto-flow:row;align-content:start;max-width:100%}
2@media screen and (max-width:1250px){.value-summary-props-page-content[_ngcontent-%COMP%] .right-flank[_ngcontent-%COMP%]{grid-column-start:9;grid-column-end:span 4}}@media screen and (max-width:1030px){.value-summary-props-page-content[_ngcontent-%COMP%] .right-flank[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 12}}.value-summary-props-page-content[_ngcontent-%COMP%] .full-column[_ngcontent-%COMP%]{grid-column-start:1;grid-column-end:span 12;display:grid;grid-template-columns:100%;gap:30px;grid-auto-flow:row;align-content:start;max-width:100%}@media screen and (max-width:850px){.value-summary-props-page-content[_ngcontent-%COMP%]{padding:0 20px}}.value-summary-props-page-content[_ngcontent-%COMP%] .faq-full[_ngcontent-%COMP%]{display:block;grid-column:1/-1;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}@media screen and (max-width:1030px){.value-summary-props-page-content[_ngcontent-%COMP%] .sidebar[_ngcontent-%COMP%]{order:1}}.page-description[_ngcontent-%COMP%] .page-title[_ngcontent-%COMP%]{font-weight:700;font-size:36px;line-height:40px;color:#333;margin:0}@media screen and (max-width:850px){.page-description[_ngcontent-%COMP%] .page-title[_ngcontent-%COMP%]{font-weight:600;line-height:32px;font-size:24px;min-height:32px}}.page-description[_ngcontent-%COMP%]{margin:0}.value-summary-desc[_ngcontent-%COMP%]{font-weight:400;font-size:16px;line-height:24px;margin-top:12px;color:#100d2c}.value-summary-desc[_ngcontent-%COMP%] .note[_ngcontent-%COMP%]{font-size:14px;display:inline-block;margin-top:5px}.value-summary-desc[_ngcontent-%COMP%] .note[_ngcontent-%COMP%] .note-title[_ngcontent-%COMP%]{font-weight:500;color:#100d2c}.value-summary-desc[_ngcontent-%COMP%]{margin-top:0}"]})}return o})();var ni=[{path:"",component:vt},{path:"",redirectTo:"",pathMatch:"full"},{path:":sport",redirectTo:"/:sport/props"}],Ct=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=E({type:o});static \u0275inj=O({imports:[oe.forChild(ni),oe]})}return o})();var Vo=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=E({type:o});static \u0275inj=O({imports:[Ct]})}return o})();export{Vo as ValueSummaryPropsModule};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.