2 lines
35 KiB
JavaScript
2 lines
35 KiB
JavaScript
import{d as a,P as e,o as l,c as t,k as s,m as u,w as _,l as c,q as i,t as n,v as r,_ as d,r as o,G as v,ap as m,a3 as f,aq as h,x as p,y,z as g,F as k,S as b,D as w,u as S,g as $,b as x,j as T,a0 as C,h as A,n as I,K as F,E as j,p as D,R as N,am as M,Q as K,ar as P,as as z,e as U}from"./index-CVDUPV_s.js";import{g as E,a as H,b as B,c as q}from"./match.Bhur6Bgz.js";import{S as R}from"./share-popup.DJvKoABp.js";import{G as V}from"./global-popup.BerBm1NW.js";import{c as L,g as G}from"./ai.D243juEN.js";import{g as W,A as Y}from"./ai.wqQWQr-Y.js";import"./share.IqKLbVyL.js";import"./aiRequest.br0QglYY.js";const J=d(a({__name:"match-detail-header",props:{title:{},subtitle:{},statusBarHeight:{}},emits:["back","share"],setup:a=>(a,d)=>{const o=e("u-icon"),v=s,m=i;return l(),t(v,{class:"detail-header",style:u({paddingTop:a.statusBarHeight+"px"})},{default:_(()=>[c(v,{class:"detail-header__nav"},{default:_(()=>[c(v,{class:"detail-header__back",onClick:d[0]||(d[0]=e=>a.$emit("back"))},{default:_(()=>[c(o,{name:"arrow-left",size:"40",color:"#333"})]),_:1}),c(v,{class:"detail-header__title-wrap"},{default:_(()=>[c(m,{class:"detail-header__title"},{default:_(()=>[n(r(a.title),1)]),_:1}),c(m,{class:"detail-header__subtitle"},{default:_(()=>[n(r(a.subtitle),1)]),_:1})]),_:1}),c(v,{class:"detail-header__share",onClick:d[1]||(d[1]=e=>a.$emit("share"))},{default:_(()=>[c(o,{name:"share",size:"36",color:"#333"})]),_:1})]),_:1})]),_:1},8,["style"])}}),[["__scopeId","data-v-db69d5fb"]]),O=d(a({__name:"match-odds-detail",props:{homeTeam:{default:""},awayTeam:{default:""},matchTime:{default:0},competitionId:{default:0},leagueName:{default:""}},setup(a){const u=a,d=[{key:"",label:"全部平台"},{key:"hg",label:"皇冠"},{key:"titan007",label:"球探"}],S=o([]),$=o([...d]),x=o(""),T=o(!1),C=o(!1),A=o(""),I=o(0),F=(a,e)=>"hg"===a?"皇冠":e,j=v(()=>{const a=[],e=new Set;return S.value.forEach(l=>{(l.platforms||[]).forEach(l=>{const t=`${l.platform_key}-${l.source_match_id||""}`;e.has(t)||(e.add(t),a.push({...l,platform_name:F(l.platform_key,l.platform_name)}))})}),a}),D=v(()=>{const a=m(u.matchTime,{competition_id:u.competitionId,league_name:u.leagueName});if(!a)return"";return`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")}`}),N=async(a=!1)=>{if(!a&&(C.value||T.value))return;if(!u.homeTeam.trim()||!u.awayTeam.trim()||!D.value)return S.value=[],void(C.value=!0);const e=I.value+1;I.value=e,T.value=!0,A.value="";try{const a=await E({home_team:u.homeTeam.trim(),away_team:u.awayTeam.trim(),match_date:D.value,source_site:x.value||void 0,limit:120});if(e!==I.value)return;S.value=Array.isArray(null==a?void 0:a.list)?a.list:[],(a=>{const e=new Map;d.forEach(a=>e.set(a.key,a)),Array.isArray(a)&&a.forEach(a=>{const l=String((null==a?void 0:a.key)||"").trim(),t=String((null==a?void 0:a.label)||"").trim();l&&t&&e.set(l,{key:l,label:F(l,t)})}),$.value=Array.from(e.values())})(null==a?void 0:a.platform_options),C.value=!0}catch(l){if(e!==I.value)return;console.error("获取比赛赔率失败",l),S.value=[],C.value=!0,A.value="赔率加载失败,请稍后重试"}finally{e===I.value&&(T.value=!1)}},M=()=>{C.value=!1,N(!0)},K=a=>{const e=Number(a||0);if(!e)return"";const l=new Date(1e3*e);return`${String(l.getMonth()+1).padStart(2,"0")}-${String(l.getDate()).padStart(2,"0")} ${String(l.getHours()).padStart(2,"0")}:${String(l.getMinutes()).padStart(2,"0")}`};return f(()=>[u.homeTeam,u.awayTeam,u.matchTime,u.competitionId,u.leagueName],()=>{C.value=!1,S.value=[],A.value="",N(!0)}),h(()=>{N()}),(a,u)=>{const d=i,o=s,v=b,m=e("u-loading"),f=e("u-button"),h=e("u-empty");return l(),t(o,{class:"match-odds-detail"},{default:_(()=>[c(v,{"scroll-x":"",class:"match-odds-detail__tabs","show-scrollbar":"false"},{default:_(()=>[c(o,{class:"match-odds-detail__tabs-inner"},{default:_(()=>[(l(!0),p(k,null,y($.value,a=>(l(),t(o,{key:a.key,class:g(["match-odds-detail__tab",{"match-odds-detail__tab--active":x.value===a.key}]),onClick:e=>{return l=a.key,void(x.value!==l&&(x.value=l,C.value=!1,N(!0)));var l}},{default:_(()=>[c(d,null,{default:_(()=>[n(r(a.label),1)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})]),_:1}),T.value?(l(),t(o,{key:0,class:"match-odds-detail__state"},{default:_(()=>[c(m,{mode:"circle"}),c(d,null,{default:_(()=>[n("赔率加载中...")]),_:1})]),_:1})):A.value?(l(),t(o,{key:1,class:"match-odds-detail__state"},{default:_(()=>[c(d,null,{default:_(()=>[n(r(A.value),1)]),_:1}),c(f,{size:"mini",type:"primary",onClick:M},{default:_(()=>[n("重新加载")]),_:1})]),_:1})):j.value.length?(l(),t(o,{key:2,class:"match-odds-detail__list"},{default:_(()=>[(l(!0),p(k,null,y(j.value,a=>(l(),t(o,{key:`${a.platform_key}-${a.source_match_id||a.update_time||0}`,class:"match-odds-platform"},{default:_(()=>[c(o,{class:"match-odds-platform__head"},{default:_(()=>[c(o,{class:"match-odds-platform__name"},{default:_(()=>[c(d,null,{default:_(()=>[n(r(a.platform_name),1)]),_:2},1024),a.show_type_text?(l(),t(d,{key:0,class:"match-odds-platform__tag"},{default:_(()=>[n(r(a.show_type_text),1)]),_:2},1024)):w("",!0)]),_:2},1024),c(d,{class:"match-odds-platform__update"},{default:_(()=>[n(r(K(a.update_time)),1)]),_:2},1024)]),_:2},1024),(l(!0),p(k,null,y(a.markets,e=>(l(),t(o,{key:`${a.source_match_id}-${e.label}`,class:"match-odds-market"},{default:_(()=>[c(o,{class:"match-odds-market__title"},{default:_(()=>[c(d,null,{default:_(()=>[n(r(e.label),1)]),_:2},1024),e.line?(l(),t(d,{key:0,class:"match-odds-market__line"},{default:_(()=>[n(r(e.line),1)]),_:2},1024)):w("",!0)]),_:2},1024),c(o,{class:"match-odds-market__values"},{default:_(()=>[(l(!0),p(k,null,y(e.values,a=>(l(),t(o,{key:`${e.label}-${a.label}`,class:"match-odds-value"},{default:_(()=>[c(d,{class:"match-odds-value__label"},{default:_(()=>[n(r(a.label),1)]),_:2},1024),c(d,{class:"match-odds-value__number"},{default:_(()=>[n(r(a.value),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024)]),_:2},1024))),128))]),_:2},1024))),128))]),_:1})):(l(),t(o,{key:3,class:"match-odds-detail__state"},{default:_(()=>[c(h,{text:"暂无赔率",mode:"data"})]),_:1}))]),_:1})}}}),[["__scopeId","data-v-8dc1bccc"]]),Q=d(a({__name:"match_detail",setup(a){const d=S(),E=v(()=>{var a;return(null==(a=d.userInfo)?void 0:a.vip_info)||{}}),Q=v(()=>!!E.value.is_vip),X=v(()=>E.value.vip_level_name||"会员"),Z=v(()=>E.value.vip_expire_time||""),aa=o(W(E.value)),ea=o(0),la=o(500),ta=o(!0),sa=o({}),ua=o(!1),_a=o(!1),ca=o({}),ia=o(!1),na=o([]),ra=o(""),da=o(""),oa=o(!1),va=o(!1);let ma=null;const fa=v(()=>{var a;return String((null==(a=sa.value)?void 0:a.live_url)||"").trim()}),ha=v(()=>{var a;return Array.isArray(null==(a=sa.value)?void 0:a.live_list)?sa.value.live_list:[]}),pa=v(()=>{var a,e,l;const t=(null==(a=sa.value)?void 0:a.living_tv)??(null==(e=sa.value)?void 0:e.live_source)??(null==(l=sa.value)?void 0:l.livingTv)??"";return Array.isArray(t)?t.map(a=>"string"==typeof a?a.trim():a&&"object"==typeof a?String(a.live_tag||a.name||a.title||a.source_name||a.label||"").trim():"").filter(Boolean).join("、"):String(t||"").trim()}),ya=[{key:"live",label:"文字直播"},{key:"data",label:"比赛数据"},{key:"odds",label:"赔率"},{key:"lineup",label:"阵容"},{key:"recent",label:"近期战绩"},{key:"ai",label:"AI分析"}],ga=o("live"),ka=o([]),ba=v(()=>ka.value.filter(a=>1===a.team_side&&1===a.is_starter)),wa=v(()=>ka.value.filter(a=>1===a.team_side&&0===a.is_starter)),Sa=v(()=>ka.value.filter(a=>2===a.team_side&&1===a.is_starter)),$a=v(()=>ka.value.filter(a=>2===a.team_side&&0===a.is_starter)),xa=a=>String(a||"").trim(),Ta=a=>{const e=xa(a);if(!e)return"";const l=e.toLowerCase();return"pending"===l||"0"===l?"待抓取":"success"===l||"1"===l?"已抓取":"failed"===l||"error"===l||"2"===l?"抓取失败":e},Ca=a=>xa(null==a?void 0:a.title)||xa(null==a?void 0:a.name)||xa(null==a?void 0:a.label)||xa(null==a?void 0:a.live_tag)||xa(null==a?void 0:a.source_name)||"直播线路",Aa=a=>{const e=xa(a);if(!e)return"";const l=e.match(/(\d{2}:\d{2}:\d{2})$/);if(l)return l[1];const t=e.match(/(\d{2}:\d{2})$/);if(t)return t[1];if(/^\d{10,13}$/.test(e)){const a=13===e.length?Number(e):1e3*Number(e);return Za(a/1e3)}return e},Ia=a=>{const e=[Ta(null==a?void 0:a.fetch_status),Aa((null==a?void 0:a.last_fetch_at)||(null==a?void 0:a.update_time))].filter(Boolean);return e.length?e.join(" · "):"点击选择直播线路"},Fa=(a,e)=>xa(null==a?void 0:a.id)||`${Ca(a)}-${e}`,ja=a=>(a=>{const e=[],l=new Set,t=a=>{const t=xa(a);t&&!l.has(t)&&(l.add(t),e.push(t))};return t(null==a?void 0:a.default_play_url),Array.isArray(null==a?void 0:a.stream_options)&&a.stream_options.forEach(a=>{t(null==a?void 0:a.default_play_url),t(null==a?void 0:a.play_url_m3u8),t(null==a?void 0:a.play_url_hd_m3u8),t(null==a?void 0:a.play_url),t(null==a?void 0:a.url),t(null==a?void 0:a.live_url),t(null==a?void 0:a.play_url_flv),t(null==a?void 0:a.play_url_hd_flv)}),t(null==a?void 0:a.play_url_m3u8),t(null==a?void 0:a.play_url_hd_m3u8),t(null==a?void 0:a.play_url),t(null==a?void 0:a.live_url),t(null==a?void 0:a.play_url_flv),t(null==a?void 0:a.play_url_hd_flv),e})(a).find(a=>(a=>/\.(m3u8|mp4)(\?|$)/i.test(a))(a))||"",Da=a=>xa(null==a?void 0:a.source_url)||xa(null==a?void 0:a.live_url)||fa.value,Na=v(()=>ha.value.map((a,e)=>{const l=ja(a);return{...a,lineKey:Fa(a,e),displayTitle:Ca(a),metaText:Ia(a),playUrl:l,sourceUrl:Da(a),hasDirectPlay:!!l}})),Ma=v(()=>Na.value.find(a=>a.lineKey===ra.value)||Na.value[0]||null),Ka=v(()=>{var a;return(null==(a=Ma.value)?void 0:a.playUrl)||""}),Pa=v(()=>{var a;return(null==(a=Ma.value)?void 0:a.sourceUrl)||fa.value}),za=v(()=>{var a;return(null==(a=Ma.value)?void 0:a.displayTitle)||"直播线路"});v(()=>{var a;return(null==(a=Ma.value)?void 0:a.metaText)||""});const Ua=v(()=>{var a;return`${(null==(a=Ma.value)?void 0:a.lineKey)||"live"}-${Ka.value}`}),Ea=()=>{Ka.value&&I(()=>{setTimeout(()=>{var a;try{const e=P("match-live-player");null==(a=null==e?void 0:e.play)||a.call(e)}catch(e){console.warn("自动播放直播失败",e)}},80)})};f(Na,a=>{if(!a.length)return ra.value="",da.value="",oa.value=!1,void(va.value=!1);a.some(a=>a.lineKey===ra.value)||(ra.value=(a.find(a=>a.hasDirectPlay)||a[0]).lineKey,da.value="")},{immediate:!0}),f(Ka,a=>{da.value="",oa.value=!!a,a&&Ea()},{immediate:!0});const Ha=v(()=>{const a=sa.value;let e=null;if(a.tech_stats)try{e="string"==typeof a.tech_stats?JSON.parse(a.tech_stats):a.tech_stats}catch(l){e=null}return e&&0!==e.length?e.map(a=>{const e=Number(a.home)||0,l=Number(a.away)||0,t=e+l||1,s=String(a.type).includes("率");return{label:a.type,home:s?e+"%":e,away:s?l+"%":l,homePct:s?e:Math.round(e/t*100),awayPct:s?l:Math.round(l/t*100)}}):[]}),Ba=()=>{I(()=>{const a=F().windowHeight||667;j().select(".detail-header").boundingClientRect(e=>{const l=(null==e?void 0:e.height)||ea.value+120;la.value=a-l}).exec()})};$({success:a=>{ea.value=0,Ba()}}),h(()=>{Ba()});const qa=a=>{ma&&clearInterval(ma),ma=setInterval(async()=>{var e;try{const l=na.value.length>0?Math.max(...na.value.map(a=>a.msg_id||0)):0,t=await B({match_id:a,last_msg_id:l});(null==(e=null==t?void 0:t.list)?void 0:e.length)&&(na.value=[...na.value,...t.list])}catch(l){}},3e4)},Ra=async a=>{var e;try{const l=await q({match_id:a});(null==(e=null==l?void 0:l.list)?void 0:e.length)&&(ka.value=l.list)}catch(l){}},Va=a=>{a?U({url:`/pages/webview/webview?url=${encodeURIComponent(a)}`}):T({title:"暂无直播链接",icon:"none"})},La=()=>{Va(fa.value)},Ga=()=>{Na.value.length?va.value=!va.value:T({title:"暂无直播线路",icon:"none"})},Wa=()=>{Va(Pa.value)},Ya=()=>{Ka.value?I(()=>{var a,e;try{const l=P("match-live-player");null==(a=null==l?void 0:l.requestFullScreen)||a.call(l,{direction:90}),null==(e=null==l?void 0:l.play)||e.call(l)}catch(l){console.warn("进入全屏播放失败",l),T({title:"当前设备暂不支持全屏",icon:"none"})}}):T({title:"暂无可全屏播放的视频",icon:"none"})},Ja=()=>{oa.value=!1,da.value="当前线路播放失败,可切换其他线路或打开源站继续观看"},Oa=()=>{Ka.value&&(oa.value=!0)},Qa=()=>{oa.value=!1},Xa=()=>{oa.value=!1},Za=a=>{if(!a)return"";const e=String(a),l=e.match(/(\d{2}):(\d{2}):(\d{2})\s*$/);if(l)return`${l[1]}:${l[2]}:${l[3]}`;if(/^\d{9,}$/.test(e)){const a=new Date(1e3*Number(e));return`${String(a.getHours()).padStart(2,"0")}:${String(a.getMinutes()).padStart(2,"0")}:${String(a.getSeconds()).padStart(2,"0")}`}return e},ae=()=>{C()},ee=()=>{var a;const e=null==(a=sa.value)?void 0:a.id;e&&U({url:`/pages/ai_analysis/ai_analysis?type=match&id=${e}`})},le={W:"胜",D:"平",L:"负"},te=a=>le[a]||a,se=a=>{if(!a)return"";const e=new Date(1e3*a);return`${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`},ue=a=>{if(!a)return"";const e=m(a,sa.value);if(!e)return"";return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")} ${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`},_e=async a=>{_a.value=!0;const e=["prediction","factors","odds","summary"];for(const t of e)try{const e=await G({match_id:a,section:t});ca.value[t]=e.data||{},void 0!==e.remain_count&&(aa.value=Number(e.remain_count))}catch(l){}_a.value=!1};return x(a=>{const e=Number((null==a?void 0:a.id)||0);e>0?((async a=>{var e;ta.value=!0,da.value="";try{const l=await H({id:a});sa.value=l||{},(null==(e=null==l?void 0:l.live_text)?void 0:e.length)&&(na.value=l.live_text),1===(null==l?void 0:l.status)&&(null==l?void 0:l.match_id)&&qa(l.match_id),(null==l?void 0:l.match_id)&&Ra(l.match_id)}catch(l){console.error("获取赛事详情失败",l),T({title:"获取详情失败",icon:"none"})}finally{ta.value=!1}})(e),(async a=>{try{const e=await L({match_id:a});e.unlocked&&(ua.value=!0,_e(a)),void 0!==e.remain_count&&(aa.value=e.remain_count)}catch(e){}})(e)):(T({title:"参数错误",icon:"none"}),setTimeout(()=>C(),1500))}),A(()=>{ma&&(clearInterval(ma),ma=null)}),(a,d)=>{const o=e("u-loading"),v=i,m=s,f=e("match-card"),h=D,S=e("u-button"),$=M,x=e("u-icon"),T=b;return l(),t(m,{class:"match-detail"},{default:_(()=>[c(J,{"status-bar-height":ea.value,title:"赛事详情",subtitle:sa.value.league_name||"赛事信息加载中",onBack:ae,onShare:d[0]||(d[0]=a=>ia.value=!0)},null,8,["status-bar-height","subtitle"]),ta.value?(l(),t(m,{key:0,class:"detail-loading"},{default:_(()=>[c(o,{mode:"circle"}),c(v,null,{default:_(()=>[n("加载中...")]),_:1})]),_:1})):(l(),t(T,{key:1,"scroll-y":"",class:"detail-content",style:u({height:la.value+"px"})},{default:_(()=>[0!==sa.value.status?(l(),t(m,{key:0,class:"match-info-wrap"},{default:_(()=>[c(f,{match:sa.value},null,8,["match"])]),_:1})):(l(),t(m,{key:1,class:"match-info-wrap"},{default:_(()=>[c(m,{class:"upcoming-card"},{default:_(()=>[c(m,{class:"upcoming-card__header"},{default:_(()=>[c(m,{class:"upcoming-card__tags"},{default:_(()=>[c(v,{class:"upcoming-card__league"},{default:_(()=>[n(r(sa.value.league_name),1)]),_:1}),sa.value.round_name?(l(),t(m,{key:0,class:"upcoming-card__tag upcoming-card__tag--blue"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(sa.value.round_name),1)]),_:1})]),_:1})):w("",!0),sa.value.is_hot?(l(),t(m,{key:1,class:"upcoming-card__hot"},{default:_(()=>[c(v,null,{default:_(()=>[n("热")]),_:1})]),_:1})):w("",!0)]),_:1})]),_:1}),c(m,{class:"upcoming-card__teams"},{default:_(()=>[c(m,{class:"upcoming-card__team"},{default:_(()=>[sa.value.home_icon?(l(),t(h,{key:0,class:"upcoming-card__icon",src:sa.value.home_icon,mode:"aspectFit"},null,8,["src"])):w("",!0),c(v,{class:"upcoming-card__name"},{default:_(()=>[n(r(sa.value.home_team),1)]),_:1})]),_:1}),c(m,{class:"upcoming-card__center"},{default:_(()=>[c(v,{class:"upcoming-card__score"},{default:_(()=>[n("0")]),_:1}),c(v,{class:"upcoming-card__vs"},{default:_(()=>[n("VS")]),_:1}),c(v,{class:"upcoming-card__score"},{default:_(()=>[n("0")]),_:1})]),_:1}),c(m,{class:"upcoming-card__team"},{default:_(()=>[sa.value.away_icon?(l(),t(h,{key:0,class:"upcoming-card__icon",src:sa.value.away_icon,mode:"aspectFit"},null,8,["src"])):w("",!0),c(v,{class:"upcoming-card__name"},{default:_(()=>[n(r(sa.value.away_team),1)]),_:1})]),_:1})]),_:1}),c(m,{class:"upcoming-card__divider"}),c(m,{class:"upcoming-card__footer"},{default:_(()=>[c(m,{class:"upcoming-card__status"},{default:_(()=>[c(v,null,{default:_(()=>[n("未开始")]),_:1})]),_:1}),c(v,{class:"upcoming-card__time"},{default:_(()=>[n(r(ue(sa.value.match_time)),1)]),_:1})]),_:1})]),_:1})]),_:1})),ha.value.length?(l(),t(m,{key:2,class:"live-entrance"},{default:_(()=>[c(m,{class:"live-entrance__player-card"},{default:_(()=>[c(m,{class:"live-entrance__player-header"},{default:_(()=>[c(m,{class:"live-entrance__player-title-wrap"},{default:_(()=>[c(v,{class:"live-entrance__player-title"},{default:_(()=>[n(r(za.value),1)]),_:1})]),_:1}),c(m,{class:"live-entrance__player-actions"},{default:_(()=>[Ka.value?(l(),t(S,{key:0,size:"mini",shape:"circle",plain:"",onClick:N(Ya,["stop"])},{default:_(()=>[n(" 全屏播放 ")]),_:1})):w("",!0),c(S,{size:"mini",shape:"circle",plain:"",onClick:N(Ga,["stop"])},{default:_(()=>[n(r(va.value?"收起线路":"切换线路"),1)]),_:1})]),_:1})]),_:1}),Ka.value?(l(),t(m,{key:0,class:"live-entrance__player-wrap"},{default:_(()=>[(l(),t($,{id:"match-live-player",key:Ua.value,class:"live-entrance__player",src:Ka.value,poster:sa.value.home_icon||sa.value.away_icon||"",autoplay:!0,controls:!0,"show-play-btn":!0,"show-center-play-btn":!0,"show-progress":!1,"show-fullscreen-btn":!0,"page-gesture":!0,"object-fit":"contain",onPlay:Xa,onLoadedmetadata:Qa,onWaiting:Oa,onError:Ja},null,8,["src","poster"]))]),_:1})):(l(),t(m,{key:1,class:"live-entrance__player-empty"},{default:_(()=>[c(v,{class:"live-entrance__player-empty-title"},{default:_(()=>[n("当前线路暂无可用直播放流")]),_:1}),c(v,{class:"live-entrance__player-empty-desc"},{default:_(()=>[n("可切换其他线路,或打开当前线路源站继续观看")]),_:1}),Pa.value?(l(),t(S,{key:0,size:"mini",shape:"circle",plain:"",class:"live-entrance__empty-action",onClick:N(Wa,["stop"])},{default:_(()=>[n(" 打开当前线路源站 ")]),_:1})):w("",!0)]),_:1})),da.value?(l(),t(v,{key:2,class:"live-entrance__player-error"},{default:_(()=>[n(r(da.value),1)]),_:1})):w("",!0),va.value?(l(),t(m,{key:3,class:"live-entrance__selector"},{default:_(()=>[(l(!0),p(k,null,y(Na.value,(a,e)=>(l(),t(m,{key:a.lineKey,class:g(["live-entrance__selector-item",{"live-entrance__selector-item--active":a.lineKey===ra.value}]),onClick:e=>(a=>{ra.value=a.lineKey,da.value="",oa.value=!!a.playUrl,va.value=!1,a.playUrl&&Ea()})(a)},{default:_(()=>[c(m,{class:"live-entrance__selector-main"},{default:_(()=>[c(m,{class:"live-entrance__selector-index"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(e+1),1)]),_:2},1024)]),_:2},1024),c(m,{class:"live-entrance__selector-content"},{default:_(()=>[c(v,{class:"live-entrance__selector-title"},{default:_(()=>[n(r(a.displayTitle),1)]),_:2},1024),c(v,{class:"live-entrance__selector-desc"},{default:_(()=>[n(r(a.metaText),1)]),_:2},1024)]),_:2},1024)]),_:2},1024),c(v,{class:"live-entrance__selector-tag"},{default:_(()=>[n(r(a.lineKey===ra.value?"当前播放":a.hasDirectPlay?"点击切换":"源站兜底"),1)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})):w("",!0)]),_:1})]),_:1})):fa.value?(l(),t(m,{key:3,class:"live-entrance"},{default:_(()=>[c(m,{class:"live-entrance__fallback-card",onClick:La},{default:_(()=>[c(m,{class:"live-entrance__left"},{default:_(()=>[c(m,{class:"live-entrance__badge"},{default:_(()=>[c(v,null,{default:_(()=>[n("直播")]),_:1})]),_:1}),c(m,{class:"live-entrance__content"},{default:_(()=>[c(v,{class:"live-entrance__title"},{default:_(()=>[n("直播详情")]),_:1}),c(v,{class:"live-entrance__desc"},{default:_(()=>[n(r(pa.value||"点击进入第三方直播页查看实时内容"),1)]),_:1})]),_:1})]),_:1}),c(m,{class:"live-entrance__action"},{default:_(()=>[c(v,null,{default:_(()=>[n("立即查看")]),_:1}),c(x,{name:"arrow-right",size:"26",color:"#c7d2fe"})]),_:1})]),_:1})]),_:1})):w("",!0),c(T,{"scroll-x":"",class:"detail-tabs","show-scrollbar":"false"},{default:_(()=>[c(m,{class:"detail-tabs__inner"},{default:_(()=>[(l(),p(k,null,y(ya,a=>c(m,{key:a.key,class:g(["detail-tabs__item",{"detail-tabs__item--active":ga.value===a.key}]),onClick:e=>ga.value=a.key},{default:_(()=>[c(v,null,{default:_(()=>[n(r(a.label),1)]),_:2},1024),"live"===a.key&&1===sa.value.status?(l(),t(m,{key:0,class:"detail-tabs__dot"})):w("",!0)]),_:2},1032,["class","onClick"])),64))]),_:1})]),_:1}),c(m,{class:"detail-tab-body"},{default:_(()=>["live"===ga.value?(l(),t(T,{key:0,"scroll-y":"",class:"detail-tab-scroll"},{default:_(()=>[na.value.length?(l(),t(m,{key:0,class:"live-text"},{default:_(()=>[(l(!0),p(k,null,y([...na.value].reverse(),a=>(l(),t(m,{class:"live-text__item",key:a.msg_id},{default:_(()=>[c(m,{class:"live-text__left"},{default:_(()=>[a.avatar?(l(),t(h,{key:0,class:"live-text__avatar",src:a.avatar,mode:"aspectFill"},null,8,["src"])):(l(),t(m,{key:1,class:"live-text__avatar live-text__avatar--default"},{default:_(()=>[c(v,null,{default:_(()=>[n(r((a.username||"").slice(0,1)),1)]),_:2},1024)]),_:2},1024))]),_:2},1024),c(m,{class:"live-text__right"},{default:_(()=>[c(m,{class:"live-text__meta"},{default:_(()=>[c(v,{class:"live-text__name"},{default:_(()=>[n(r(a.username),1)]),_:2},1024),c(v,{class:"live-text__time"},{default:_(()=>[n(r(Za(a.create_time||a.timestamp)),1)]),_:2},1024)]),_:2},1024),c(v,{class:"live-text__msg"},{default:_(()=>[n(r(a.message),1)]),_:2},1024),a.image?(l(),t(h,{key:0,class:"live-text__image",src:a.image,mode:"widthFix",onClick:e=>{return l=a.image,void z({urls:[l],current:l});var l}},null,8,["src","onClick"])):w("",!0)]),_:2},1024)]),_:2},1024))),128))]),_:1})):(l(),t(m,{key:1,class:"live-text__empty"},{default:_(()=>[c(v,null,{default:_(()=>[n("暂无文字直播数据")]),_:1})]),_:1}))]),_:1})):w("",!0),"data"===ga.value?(l(),t(T,{key:1,"scroll-y":"",class:"detail-tab-scroll"},{default:_(()=>[w("",!0),0!==sa.value.status?(l(),t(m,{key:1,class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[c(v,null,{default:_(()=>[n("技术统计")]),_:1})]),_:1}),c(m,{class:"tech-stats"},{default:_(()=>[(l(!0),p(k,null,y(Ha.value,a=>(l(),t(m,{class:"tech-stats__row",key:a.label},{default:_(()=>[c(m,{class:"tech-stats__nums"},{default:_(()=>[c(v,{class:"tech-stats__home-val"},{default:_(()=>[n(r(a.home),1)]),_:2},1024),c(v,{class:"tech-stats__label"},{default:_(()=>[n(r(a.label),1)]),_:2},1024),c(v,{class:"tech-stats__away-val"},{default:_(()=>[n(r(a.away),1)]),_:2},1024)]),_:2},1024),c(m,{class:"tech-stats__bars"},{default:_(()=>[c(m,{class:"tech-stats__bar tech-stats__bar--home",style:u({width:a.homePct+"%"})},null,8,["style"]),c(m,{class:"tech-stats__bar tech-stats__bar--away",style:u({width:a.awayPct+"%"})},null,8,["style"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0),0===sa.value.status?(l(),t(m,{key:2,class:"live-text__empty"},{default:_(()=>[c(v,null,{default:_(()=>[n("比赛尚未开始")]),_:1})]),_:1})):w("",!0)]),_:1})):w("",!0),"odds"===ga.value?(l(),t(T,{key:2,"scroll-y":"",class:"detail-tab-scroll"},{default:_(()=>[c(O,{"home-team":sa.value.home_team,"away-team":sa.value.away_team,"match-time":sa.value.match_time,"competition-id":sa.value.competition_id,"league-name":sa.value.league_name},null,8,["home-team","away-team","match-time","competition-id","league-name"])]),_:1})):w("",!0),"lineup"===ga.value?(l(),t(T,{key:3,"scroll-y":"",class:"detail-tab-scroll"},{default:_(()=>[ka.value.length?(l(),t(m,{key:0},{default:_(()=>[c(m,{class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[sa.value.home_icon?(l(),t(h,{key:0,class:"tab-card__team-icon",src:sa.value.home_icon,mode:"aspectFit"},null,8,["src"])):w("",!0),c(v,null,{default:_(()=>[n(r(sa.value.home_team)+" 首发",1)]),_:1})]),_:1}),c(m,{class:"lineup-grid"},{default:_(()=>[(l(!0),p(k,null,y(ba.value,a=>(l(),t(m,{class:"lineup-player",key:a.id},{default:_(()=>[a.person_logo?(l(),t(h,{key:0,class:"lineup-player__avatar",src:a.person_logo,mode:"aspectFill"},null,8,["src"])):(l(),t(m,{key:1,class:"lineup-player__avatar lineup-player__avatar--default"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(a.shirt_number||"#"),1)]),_:2},1024)]),_:2},1024)),c(v,{class:"lineup-player__name"},{default:_(()=>[n(r(a.person_name),1)]),_:2},1024),c(v,{class:"lineup-player__pos"},{default:_(()=>[n(r(a.position||""),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1}),wa.value.length?(l(),t(m,{key:0,class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(sa.value.home_team)+" 替补",1)]),_:1})]),_:1}),c(m,{class:"lineup-grid"},{default:_(()=>[(l(!0),p(k,null,y(wa.value,a=>(l(),t(m,{class:"lineup-player",key:a.id},{default:_(()=>[a.person_logo?(l(),t(h,{key:0,class:"lineup-player__avatar",src:a.person_logo,mode:"aspectFill"},null,8,["src"])):(l(),t(m,{key:1,class:"lineup-player__avatar lineup-player__avatar--default"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(a.shirt_number||"#"),1)]),_:2},1024)]),_:2},1024)),c(v,{class:"lineup-player__name"},{default:_(()=>[n(r(a.person_name),1)]),_:2},1024),c(v,{class:"lineup-player__pos"},{default:_(()=>[n(r(a.position||""),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0),c(m,{class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[sa.value.away_icon?(l(),t(h,{key:0,class:"tab-card__team-icon",src:sa.value.away_icon,mode:"aspectFit"},null,8,["src"])):w("",!0),c(v,null,{default:_(()=>[n(r(sa.value.away_team)+" 首发",1)]),_:1})]),_:1}),c(m,{class:"lineup-grid"},{default:_(()=>[(l(!0),p(k,null,y(Sa.value,a=>(l(),t(m,{class:"lineup-player",key:a.id},{default:_(()=>[a.person_logo?(l(),t(h,{key:0,class:"lineup-player__avatar",src:a.person_logo,mode:"aspectFill"},null,8,["src"])):(l(),t(m,{key:1,class:"lineup-player__avatar lineup-player__avatar--default"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(a.shirt_number||"#"),1)]),_:2},1024)]),_:2},1024)),c(v,{class:"lineup-player__name"},{default:_(()=>[n(r(a.person_name),1)]),_:2},1024),c(v,{class:"lineup-player__pos"},{default:_(()=>[n(r(a.position||""),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1}),$a.value.length?(l(),t(m,{key:1,class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(sa.value.away_team)+" 替补",1)]),_:1})]),_:1}),c(m,{class:"lineup-grid"},{default:_(()=>[(l(!0),p(k,null,y($a.value,a=>(l(),t(m,{class:"lineup-player",key:a.id},{default:_(()=>[a.person_logo?(l(),t(h,{key:0,class:"lineup-player__avatar",src:a.person_logo,mode:"aspectFill"},null,8,["src"])):(l(),t(m,{key:1,class:"lineup-player__avatar lineup-player__avatar--default"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(a.shirt_number||"#"),1)]),_:2},1024)]),_:2},1024)),c(v,{class:"lineup-player__name"},{default:_(()=>[n(r(a.person_name),1)]),_:2},1024),c(v,{class:"lineup-player__pos"},{default:_(()=>[n(r(a.position||""),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0)]),_:1})):(l(),t(m,{key:1,class:"live-text__empty"},{default:_(()=>[c(v,null,{default:_(()=>[n("暂无阵容数据")]),_:1})]),_:1}))]),_:1})):w("",!0),"recent"===ga.value?(l(),t(T,{key:4,"scroll-y":"",class:"detail-tab-scroll"},{default:_(()=>{var a,e,s;return[sa.value.history&&sa.value.history.length?(l(),t(m,{key:0,class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[c(v,null,{default:_(()=>[n("对赛往绩")]),_:1})]),_:1}),c(m,{class:"match-history"},{default:_(()=>[(l(!0),p(k,null,y(sa.value.history,a=>(l(),t(m,{class:"match-history__item",key:a.id},{default:_(()=>[c(m,{class:"match-history__date"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(se(a.match_time)),1)]),_:2},1024)]),_:2},1024),c(m,{class:"match-history__teams"},{default:_(()=>[c(v,{class:"match-history__team"},{default:_(()=>[n(r(a.home_team),1)]),_:2},1024),c(v,{class:"match-history__score"},{default:_(()=>[n(r(a.home_score)+" - "+r(a.away_score),1)]),_:2},1024),c(v,{class:"match-history__team"},{default:_(()=>[n(r(a.away_team),1)]),_:2},1024)]),_:2},1024),c(v,{class:"match-history__league"},{default:_(()=>[n(r(a.league_name),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0),sa.value.home_recent&&sa.value.home_recent.length?(l(),t(m,{key:1,class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[sa.value.home_icon?(l(),t(h,{key:0,class:"tab-card__team-icon",src:sa.value.home_icon,mode:"aspectFit"},null,8,["src"])):w("",!0),c(v,null,{default:_(()=>[n(r(sa.value.home_team)+" 近期",1)]),_:1})]),_:1}),c(m,{class:"match-recent"},{default:_(()=>[(l(!0),p(k,null,y(sa.value.home_recent,a=>(l(),t(m,{class:"match-recent__item",key:a.id},{default:_(()=>[c(m,{class:"match-recent__left"},{default:_(()=>[c(v,{class:g(["match-recent__result","match-recent__result--"+a.result])},{default:_(()=>[n(r(te(a.result)),1)]),_:2},1032,["class"]),c(v,{class:"match-recent__vs"},{default:_(()=>[n("VS")]),_:1}),c(v,{class:"match-recent__opponent"},{default:_(()=>[n(r(a.opponent),1)]),_:2},1024)]),_:2},1024),c(m,{class:"match-recent__right"},{default:_(()=>[c(m,{class:"match-recent__score"},{default:_(()=>[c(v,{class:"match-recent__score-num"},{default:_(()=>[n(r(a.team_score),1)]),_:2},1024),c(v,{class:"match-recent__score-sep"},{default:_(()=>[n("-")]),_:1}),c(v,{class:"match-recent__score-num"},{default:_(()=>[n(r(a.opponent_score),1)]),_:2},1024)]),_:2},1024),c(v,{class:"match-recent__date"},{default:_(()=>[n(r(se(a.match_time)),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0),sa.value.away_recent&&sa.value.away_recent.length?(l(),t(m,{key:2,class:"tab-card"},{default:_(()=>[c(m,{class:"tab-card__title"},{default:_(()=>[sa.value.away_icon?(l(),t(h,{key:0,class:"tab-card__team-icon",src:sa.value.away_icon,mode:"aspectFit"},null,8,["src"])):w("",!0),c(v,null,{default:_(()=>[n(r(sa.value.away_team)+" 近期",1)]),_:1})]),_:1}),c(m,{class:"match-recent"},{default:_(()=>[(l(!0),p(k,null,y(sa.value.away_recent,a=>(l(),t(m,{class:"match-recent__item",key:a.id},{default:_(()=>[c(m,{class:"match-recent__left"},{default:_(()=>[c(v,{class:g(["match-recent__result","match-recent__result--"+a.result])},{default:_(()=>[n(r(te(a.result)),1)]),_:2},1032,["class"]),c(v,{class:"match-recent__vs"},{default:_(()=>[n("VS")]),_:1}),c(v,{class:"match-recent__opponent"},{default:_(()=>[n(r(a.opponent),1)]),_:2},1024)]),_:2},1024),c(m,{class:"match-recent__right"},{default:_(()=>[c(m,{class:"match-recent__score"},{default:_(()=>[c(v,{class:"match-recent__score-num"},{default:_(()=>[n(r(a.team_score),1)]),_:2},1024),c(v,{class:"match-recent__score-sep"},{default:_(()=>[n("-")]),_:1}),c(v,{class:"match-recent__score-num"},{default:_(()=>[n(r(a.opponent_score),1)]),_:2},1024)]),_:2},1024),c(v,{class:"match-recent__date"},{default:_(()=>[n(r(se(a.match_time)),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0),(null==(a=sa.value.history)?void 0:a.length)||(null==(e=sa.value.home_recent)?void 0:e.length)||(null==(s=sa.value.away_recent)?void 0:s.length)?w("",!0):(l(),t(m,{key:3,class:"live-text__empty"},{default:_(()=>[c(v,null,{default:_(()=>[n("暂无战绩数据")]),_:1})]),_:1}))]}),_:1})):w("",!0),"ai"===ga.value?(l(),t(T,{key:5,"scroll-y":"",class:"detail-tab-scroll"},{default:_(()=>[ua.value?(l(),t(m,{key:0,class:"tab-card"},{default:_(()=>{var a,e,s,u;return[c(m,{class:"tab-card__title"},{default:_(()=>[c(v,null,{default:_(()=>[n("AI智能分析")]),_:1}),c(v,{class:"tab-card__badge tab-card__badge--green"},{default:_(()=>[n("已解锁")]),_:1})]),_:1}),ca.value.prediction?(l(),t(m,{key:0,class:"match-ai-inline"},{default:_(()=>{var a,e;return[c(m,{class:"match-ai-inline__row"},{default:_(()=>[c(v,{class:"match-ai-inline__label"},{default:_(()=>[n("预测结果")]),_:1}),c(v,{class:"match-ai-inline__val match-ai-inline__val--highlight"},{default:_(()=>{var a,e;return[n(r((null==(e=null==(a=ca.value.prediction)?void 0:a.prediction)?void 0:e.result)||"待分析"),1)]}),_:1})]),_:1}),c(m,{class:"match-ai-inline__row"},{default:_(()=>[c(v,{class:"match-ai-inline__label"},{default:_(()=>[n("置信度")]),_:1}),c(v,{class:"match-ai-inline__val"},{default:_(()=>{var a,e;return[n(r((null==(e=null==(a=ca.value.prediction)?void 0:a.prediction)?void 0:e.confidence)||0)+"%",1)]}),_:1})]),_:1}),c(m,{class:"match-ai-inline__row"},{default:_(()=>[c(v,{class:"match-ai-inline__label"},{default:_(()=>[n("比分预测")]),_:1}),c(v,{class:"match-ai-inline__val"},{default:_(()=>{var a,e;return[n(r((null==(e=null==(a=ca.value.prediction)?void 0:a.prediction)?void 0:e.score_predict)||"-"),1)]}),_:1})]),_:1}),(null==(e=null==(a=ca.value.prediction)?void 0:a.prediction)?void 0:e.reasoning)?(l(),t(m,{key:0,class:"match-ai-inline__reasoning"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(ca.value.prediction.prediction.reasoning),1)]),_:1})]),_:1})):w("",!0)]}),_:1})):w("",!0),(null==(e=null==(a=ca.value.factors)?void 0:a.key_factors)?void 0:e.length)?(l(),t(m,{key:1,class:"match-ai-inline__tags"},{default:_(()=>[c(v,{class:"match-ai-inline__label"},{default:_(()=>[n("关键因素")]),_:1}),c(m,{class:"match-ai-inline__tag-wrap"},{default:_(()=>[(l(!0),p(k,null,y(ca.value.factors.key_factors,(a,e)=>(l(),t(v,{key:e,class:"match-ai-inline__tag match-ai-inline__tag--green"},{default:_(()=>[n(r(a),1)]),_:2},1024))),128))]),_:1})]),_:1})):w("",!0),(null==(s=ca.value.odds)?void 0:s.odds_opinion)?(l(),t(m,{key:2,class:"match-ai-inline__row"},{default:_(()=>[c(v,{class:"match-ai-inline__label"},{default:_(()=>[n("赔率推荐")]),_:1}),c(v,{class:"match-ai-inline__val match-ai-inline__val--highlight"},{default:_(()=>[n(r(ca.value.odds.odds_opinion.value_bet),1)]),_:1})]),_:1})):w("",!0),(null==(u=ca.value.summary)?void 0:u.summary)?(l(),t(m,{key:3,class:"match-ai-inline__summary"},{default:_(()=>[c(v,null,{default:_(()=>[n(r(ca.value.summary.summary),1)]),_:1})]),_:1})):w("",!0),_a.value?(l(),t(m,{key:4,class:"match-ai-inline__loading"},{default:_(()=>[c(v,null,{default:_(()=>[n("AI分析加载中...")]),_:1})]),_:1})):w("",!0),c(m,{class:"match-ai-inline__more",onClick:ee},{default:_(()=>[c(v,null,{default:_(()=>[n("查看完整分析 ›")]),_:1})]),_:1})]}),_:1})):(l(),t(m,{key:1,class:"tab-card"},{default:_(()=>[c(m,{class:"match-ai",onClick:ee},{default:_(()=>[c(m,{class:"match-ai__badge"},{default:_(()=>[n("AI")]),_:1}),c(m,{class:"match-ai__content"},{default:_(()=>[c(v,{class:"match-ai__title"},{default:_(()=>[n("获取AI赛事深度分析")]),_:1}),c(v,{class:"match-ai__desc"},{default:_(()=>[n("基于大数据的智能预测与胜负分析")]),_:1})]),_:1}),c(m,{class:"match-ai__arrow"},{default:_(()=>[c(v,null,{default:_(()=>[n("›")]),_:1})]),_:1})]),_:1}),c(m,{class:"match-ai__vip-info"},{default:_(()=>[Q.value?(l(),t(v,{key:0,class:"match-ai__vip-tag match-ai__vip-tag--vip"},{default:_(()=>[n("VIP")]),_:1})):w("",!0),Q.value?(l(),t(v,{key:1,class:"match-ai__vip-text"},{default:_(()=>[n("尊贵的"+r(X.value)+",到期时间"+r(Z.value),1)]),_:1})):w("",!0),Q.value?w("",!0):(l(),t(v,{key:2,class:"match-ai__vip-tag"},{default:_(()=>[n("免费")]),_:1})),Q.value?w("",!0):(l(),t(v,{key:3,class:"match-ai__vip-text"},{default:_(()=>[n(r(K(Y))+",今日剩余"+r(aa.value)+"次",1)]),_:1}))]),_:1})]),_:1}))]),_:1})):w("",!0)]),_:1})]),_:1},8,["style"])),ia.value?(l(),t(R,{key:2,show:ia.value,"onUpdate:show":d[1]||(d[1]=a=>ia.value=a),"page-type":"match",path:`/pages/match_detail/match_detail?id=${sa.value.id||""}`,title:(sa.value.home_team||"")+" vs "+(sa.value.away_team||"")},null,8,["show","path","title"])):w("",!0),c(V)]),_:1})}}}),[["__scopeId","data-v-11d61883"]]);export{Q as default};
|