import{aH as e,B as a,z as t,aK as r,au as n,w as o,aP as l,b3 as s,am as i,ba as u,y as c,ai as d,H as v,p as b,m as f,aI as p,an as h,K as m,aW as y,aw as g,S as w,at as j,aa as x,F as k,Q as I,bc as C,aJ as A,x as R,a1 as E,P as B,aA as S,a_ as P,N as _,aU as N,a2 as T,bb as U,bz as M,bB as F,aM as O,bo as $,f as L,ag as V,E as H,bn as z,bJ as W,Y as q,U as K,aG as D,bL as Y,bO as Q,aV as X,aT as G,s as J,ap as Z,ab as ee,aY as ae,r as te}from"./index.BF7c1rfV.js";import{e as re,H as ne,O as oe,C as le,D as se,d as ie,F as ue,u as ce,A as de,am as ve,a0 as be,ag as fe,G as pe,az as he,R as me,Z as ye,a4 as ge,l as we,V as je,S as xe,an as ke,k as Ie,a8 as Ce,g as Ae,a3 as Re,r as Ee,ab as Be,M as Se,x as Pe,a5 as _e,ar as Ne,a6 as Te,_ as Ue,aC as Me,aw as Fe,i as Oe,ah as $e,j as Le,q as Ve,aa as He,aq as ze}from"./vue-vendor.CbU-cCHr.js";import{i as We}from"./numbers.DrV_xewr.js";import{j as qe,k as Ke,v as De,ad as Ye}from"./icons.BL-8H3wb.js";import{f as Qe}from"./_flatRest.plqQFgXG.js";import{_ as Xe}from"./index.OMG6Ub_n.js";import{_ as Ge}from"./index.fXM12TZa.js";import{a as Je,i as Ze}from"./mediaType.Dy7a5aX0.js";import{u as ea}from"./useCharacterNavigation.Cq0XhwKb.js";import{d as aa,l as ta,i as ra}from"./useHlsVideo.CBmUhSWR.js";var na=Object.create,oa=function(){function a(){}return function(t){if(!e(t))return{};if(na)return na(t);a.prototype=t;var r=new a;return a.prototype=void 0,r}}();function la(e,r,n,o){var l=!n;n||(n={});for(var s=-1,i=r.length;++s<i;){var u=r[s],c=void 0;void 0===c&&(c=e[u]),l?a(n,u,c):t(n,u,c)}return n}var sa=Object.prototype.hasOwnProperty;function ia(a){if(!e(a))return function(e){var a=[];if(null!=e)for(var t in Object(e))a.push(t);return a}(a);var t=r(a),n=[];for(var o in a)("constructor"!=o||!t&&sa.call(a,o))&&n.push(o);return n}function ua(e){return n(e)?o(e,!0):ia(e)}var ca="object"==typeof exports&&exports&&!exports.nodeType&&exports,da=ca&&"object"==typeof module&&module&&!module.nodeType&&module,va=da&&da.exports===ca?s.Buffer:void 0,ba=va?va.allocUnsafe:void 0;var fa=Object.getOwnPropertySymbols?function(e){for(var a=[];e;)c(a,i(e)),e=d(e);return a}:u;function pa(e){return v(e,ua,fa)}var ha=Object.prototype.hasOwnProperty;function ma(e){var a=new e.constructor(e.byteLength);return new b(a).set(new b(e)),a}var ya=/\w*$/;var ga=f?f.prototype:void 0,wa=ga?ga.valueOf:void 0;function ja(e,a,t){var r,n,o,l=e.constructor;switch(a){case"[object ArrayBuffer]":return ma(e);case"[object Boolean]":case"[object Date]":return new l(+e);case"[object DataView]":return function(e,a){var t=a?ma(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.byteLength)}(e,t);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return function(e,a){var t=a?ma(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.length)}(e,t);case"[object Map]":case"[object Set]":return new l;case"[object Number]":case"[object String]":return new l(e);case"[object RegExp]":return(o=new(n=e).constructor(n.source,ya.exec(n))).lastIndex=n.lastIndex,o;case"[object Symbol]":return r=e,wa?Object(wa.call(r)):{}}}var xa=y&&y.isMap,ka=xa?m(xa):function(e){return p(e)&&"[object Map]"==h(e)};var Ia=y&&y.isSet,Ca=Ia?m(Ia):function(e){return p(e)&&"[object Set]"==h(e)},Aa="[object Arguments]",Ra="[object Function]",Ea="[object Object]",Ba={};function Sa(a,n,o,s,u,c){var v,b=1&n,f=2&n,p=4&n;if(o&&(v=u?o(a,s,u,c):o(a)),void 0!==v)return v;if(!e(a))return a;var m=j(a);if(m){if(v=function(e){var a=e.length,t=new e.constructor(a);return a&&"string"==typeof e[0]&&ha.call(e,"index")&&(t.index=e.index,t.input=e.input),t}(a),!b)return function(e,a){var t=-1,r=e.length;for(a||(a=Array(r));++t<r;)a[t]=e[t];return a}(a,v)}else{var y=h(a),k=y==Ra||"[object GeneratorFunction]"==y;if(g(a))return function(e,a){if(a)return e.slice();var t=e.length,r=ba?ba(t):new e.constructor(t);return e.copy(r),r}(a,b);if(y==Ea||y==Aa||k&&!u){if(v=f||k?{}:function(e){return"function"!=typeof e.constructor||r(e)?{}:oa(d(e))}(a),!b)return f?function(e,a){return la(e,fa(e),a)}(a,function(e,a){return e&&la(a,ua(a),e)}(v,a)):function(e,a){return la(e,i(e),a)}(a,function(e,a){return e&&la(a,l(a),e)}(v,a))}else{if(!Ba[y])return u?a:{};v=ja(a,y,b)}}c||(c=new w);var I=c.get(a);if(I)return I;c.set(a,v),Ca(a)?a.forEach(function(e){v.add(Sa(e,n,o,e,a,c))}):ka(a)&&a.forEach(function(e,t){v.set(t,Sa(e,n,o,t,a,c))});var C=m?void 0:(p?f?pa:x:f?ua:l)(a);return function(e,a){for(var t=-1,r=null==e?0:e.length;++t<r&&!1!==a(e[t],t,e););}(C||a,function(e,r){C&&(e=a[r=e]),t(v,r,Sa(e,n,o,r,a,c))}),v}function Pa(e,a){return a.length<2?e:k(e,function(e,a,t){var r=-1,n=e.length;a<0&&(a=-a>n?0:n+a),(t=t>n?n:t)<0&&(t+=n),n=a>t?0:t-a>>>0,a>>>=0;for(var o=Array(n);++r<n;)o[r]=e[r+a];return o}(a,0,-1))}Ba[Aa]=Ba["[object Array]"]=Ba["[object ArrayBuffer]"]=Ba["[object DataView]"]=Ba["[object Boolean]"]=Ba["[object Date]"]=Ba["[object Float32Array]"]=Ba["[object Float64Array]"]=Ba["[object Int8Array]"]=Ba["[object Int16Array]"]=Ba["[object Int32Array]"]=Ba["[object Map]"]=Ba["[object Number]"]=Ba[Ea]=Ba["[object RegExp]"]=Ba["[object Set]"]=Ba["[object String]"]=Ba["[object Symbol]"]=Ba["[object Uint8Array]"]=Ba["[object Uint8ClampedArray]"]=Ba["[object Uint16Array]"]=Ba["[object Uint32Array]"]=!0,Ba["[object Error]"]=Ba[Ra]=Ba["[object WeakMap]"]=!1;var _a=Object.prototype.hasOwnProperty;function Na(e,a){var t=-1,r=(a=I(a,e)).length;if(!r)return!0;for(;++t<r;){var n=C(a[t]);if("__proto__"===n&&!_a.call(e,"__proto__"))return!1;if(("constructor"===n||"prototype"===n)&&t<r-1)return!1}var o=Pa(e,a);return null==o||delete o[C(function(e){var a=null==e?0:e.length;return a?e[a-1]:void 0}(a))]}function Ta(e){return A(e)?void 0:e}var Ua=Qe(function(e,a){var t={};if(null==e)return t;var r=!1;a=R(a,function(a){return a=I(a,e),r||(r=a.length>1),a}),la(e,pa(e),t),r&&(t=Sa(t,7,Ta));for(var n=a.length;n--;)Na(t,a[n]);return t});const Ma=e=>re(e);const Fa=e=>{const a=ne(e)?e:[e],t=[];return a.forEach(e=>{var a;ne(e)?t.push(...Fa(e)):oe(e)&&(null==(a=e.component)?void 0:a.subTree)?t.push(e,...Fa(e.component.subTree)):oe(e)&&ne(e.children)?t.push(...Fa(e.children)):oe(e)&&2===e.shapeFlag?t.push(...Fa(e.type())):t.push(e)}),t},Oa=(e,a)=>{const t=fe({}),r=fe([]),n=new WeakMap,o=()=>{r.value=((e,a,t)=>Fa(e.subTree).filter(e=>{var t;return oe(e)&&(null==(t=e.type)?void 0:t.name)===a&&!!e.component}).map(e=>e.component.uid).map(e=>t[e]).filter(e=>!!e))(e,a,t.value)},l=e=>e.render();return{children:r,addChild:e=>{t.value[e.uid]=e,ve(t),be(()=>{const a=e.getVnode().el,r=a.parentNode;if(!n.has(r)){n.set(r,[]);const e=r.insertBefore.bind(r);r.insertBefore=(a,o)=>(n.get(r).some(e=>a===e||o===e)&&ve(t),e(a,o))}n.get(r).push(a)})},removeChild:e=>{delete t.value[e.uid],ve(t);const a=e.getVnode().el,r=a.parentNode,o=n.get(r),l=o.indexOf(a);o.splice(l,1)},ChildrenSorter:ce({setup:(e,{slots:a})=>()=>(o(),a.default?de(l,{render:a.default}):null)})}},$a=Symbol("tabsRootContextKey"),La=_({tabs:{type:T(Array),default:()=>N([])},tabRefs:{type:T(Object),default:()=>N({})}}),Va="ElTabBar";var Ha=ce({name:Va,__name:"tab-bar",props:La,setup(e,{expose:a}){const t=e,r=pe($a);r||U(Va,"<el-tabs><el-tab-bar /></el-tabs>");const n=M("tabs"),o=Ce(),l=Ce(),s=Ae(()=>{var e;return O(r.props.defaultValue)||Boolean(null==(e=l.value)?void 0:e.transform)}),i=()=>l.value=(()=>{let e=0,a=0;const n=["top","bottom"].includes(r.props.tabPosition)?"width":"height",o="width"===n?"x":"y",l="x"===o?"left":"top";return t.tabs.every(r=>{if(O(r.paneName))return!1;const o=t.tabRefs[r.paneName];if(!o)return!1;if(!r.active)return!0;e=o[`offset${Ma(l)}`],a=o[`client${Ma(n)}`];const s=window.getComputedStyle(o);return"width"===n&&(a-=Number.parseFloat(s.paddingLeft)+Number.parseFloat(s.paddingRight),e+=Number.parseFloat(s.paddingLeft)),!1}),{[n]:`${a}px`,transform:`translate${Ma(o)}(${e}px)`}})(),u=[];he(()=>t.tabs,async()=>{await me(),i(),u.forEach(e=>e.stop()),u.length=0,Object.values(t.tabRefs).forEach(e=>{u.push(F(e,i))})},{immediate:!0});const c=F(o,()=>i());return ye(()=>{u.forEach(e=>e.stop()),u.length=0,c.stop()}),a({ref:o,update:i}),(e,a)=>s.value?(ge(),we("div",{key:0,ref_key:"barRef",ref:o,class:xe([ke(n).e("active-bar"),ke(n).is(ke(r).props.tabPosition)]),style:je(l.value)},null,6)):Ie("v-if",!0)}});const za=_({panes:{type:T(Array),default:()=>N([])},currentName:{type:[String,Number],default:""},editable:Boolean,type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean,tabindex:{type:[String,Number],default:void 0}}),Wa="ElTabNav",qa=ce({name:Wa,props:za,emits:{tabClick:(e,a,t)=>t instanceof Event,tabRemove:(e,a)=>a instanceof Event},setup(e,{expose:a,emit:t}){const r=pe($a);r||U(Wa,"<el-tabs><tab-nav /></el-tabs>");const n=M("tabs"),o=z(),l=W(),s=Ce(),i=Ce(),u=Ce(),c=Ce({}),d=Ce(),v=Ce(!1),b=Ce(0),f=Ce(!1),p=Ce(!0),h=Ce(!1),m=fe(),y=Ae(()=>["top","bottom"].includes(r.props.tabPosition)),g=Ae(()=>y.value?"width":"height"),w=Ae(()=>{const e="width"===g.value?"X":"Y";return{transition:h.value?"none":void 0,transform:`translate${e}(-${b.value}px)`}}),{width:j,height:x}=$(s),{width:k,height:I}=$(i,{width:0,height:0},{box:"border-box"}),C=Ae(()=>y.value?j.value:x.value),A=Ae(()=>y.value?k.value:I.value),{onWheel:R}=(({atEndEdge:e,atStartEdge:a,layout:t},r)=>{let n,o=0;const l=t=>t<0&&a.value||t>0&&e.value;return{hasReachedEdge:l,onWheel:e=>{B(n);let{deltaX:a,deltaY:s}=e;e.shiftKey&&0!==s&&(a=s,s=0);const i="horizontal"===t.value?a:s;l(i)||(o+=i,S()||0===i||e.preventDefault(),n=P(()=>{r(o),o=0}))}}})({atStartEdge:Ae(()=>b.value<=0),atEndEdge:Ae(()=>A.value-b.value<=C.value),layout:Ae(()=>y.value?"horizontal":"vertical")},e=>{b.value=q(b.value+e,0,A.value-C.value)}),E=e=>{h.value=!0,R(e),P(()=>{h.value=!1})},_=()=>{if(!s.value)return;const e=s.value.getBoundingClientRect()[g.value],a=b.value;a&&(b.value=a>e?a-e:0)},N=()=>{if(!s.value||!i.value)return;const e=i.value.getBoundingClientRect()[g.value],a=s.value.getBoundingClientRect()[g.value],t=b.value;We(e-t,a)&&(b.value=e-t>2*a?t+a:e-a)},T=async()=>{const a=i.value;if(!(v.value&&u.value&&s.value&&a))return;await me();const t=c.value[e.currentName];if(!t)return;const r=s.value,n=t.getBoundingClientRect(),o=r.getBoundingClientRect(),l=o.left+1,d=o.right-1,f=a.getBoundingClientRect(),p=y.value?f.width-o.width:f.height-o.height,h=b.value;let m=h;y.value?(n.left<l&&(m=h-(l-n.left)),n.right>d&&(m=h+n.right-d)):(n.top<o.top&&(m=h-(o.top-n.top)),n.bottom>o.bottom&&(m=h+(n.bottom-o.bottom))),m=Math.max(m,0),b.value=Math.min(m,p)},O=()=>{var a;if(!i.value||!s.value)return;e.stretch&&(null==(a=d.value)||a.update());const t=i.value.getBoundingClientRect()[g.value],r=s.value.getBoundingClientRect()[g.value],n=b.value;r<t?(v.value=v.value||{},v.value.prev=n,v.value.next=We(t,n+r),We(r,t-n)&&(b.value=t-r)):(v.value=!1,n>0&&(b.value=0))},K=e=>{let a=0;switch(V(e)){case H.left:case H.up:a=-1;break;case H.right:case H.down:a=1;break;default:return}const t=Array.from(e.currentTarget.querySelectorAll("[role=tab]:not(.is-disabled)"));let r=t.indexOf(e.target)+a;r<0?r=t.length-1:r>=t.length&&(r=0),t[r].focus({preventScroll:!0}),t[r].click(),D()},D=()=>{p.value&&(f.value=!0)},Y=()=>f.value=!1;return he(o,e=>{"hidden"===e?p.value=!1:"visible"===e&&setTimeout(()=>p.value=!0,50)}),he(l,e=>{e?setTimeout(()=>p.value=!0,50):p.value=!1}),F(u,()=>{P(O)}),be(()=>setTimeout(()=>T(),0)),Re(()=>O()),a({scrollToActiveTab:T,removeFocus:Y,focusActiveTab:async()=>{var a;await me(),null==(a=c.value[e.currentName])||a.focus({preventScroll:!0})},tabListRef:i,tabBarRef:d,scheduleRender:()=>ve(m)}),()=>{const a=v.value?[Ee("span",{class:[n.e("nav-prev"),n.is("disabled",!v.value.prev)],onClick:_},[Ee(L,null,{default:()=>[Ee(qe,null,null)]})]),Ee("span",{class:[n.e("nav-next"),n.is("disabled",!v.value.next)],onClick:N},[Ee(L,null,{default:()=>[Ee(Ke,null,null)]})])]:null,o=e.panes.map((a,o)=>{var l,s;const i=a.uid,u=a.props.disabled,d=a.props.name??a.index??`${o}`,v=!u&&(a.isClosable||!1!==a.props.closable&&e.editable);a.index=`${o}`;const b=v?Ee(L,{class:"is-icon-close",onClick:e=>t("tabRemove",a,e)},{default:()=>[Ee(De,null,null)]}):null,p=(null==(s=(l=a.slots).label)?void 0:s.call(l))||a.props.label,h=!u&&a.active?e.tabindex??r.props.tabindex:-1;return Ee("div",{ref:e=>((e,a)=>{c.value[a]=e})(e,d),class:[n.e("item"),n.is(r.props.tabPosition),n.is("active",a.active),n.is("disabled",u),n.is("closable",v),n.is("focus",f.value)],id:`tab-${d}`,key:`tab-${i}`,"aria-controls":`pane-${d}`,role:"tab","aria-selected":a.active,tabindex:h,onFocus:()=>D(),onBlur:()=>Y(),onClick:e=>{Y(),t("tabClick",a,d,e)},onKeydown:e=>{const r=V(e);!v||r!==H.delete&&r!==H.backspace||t("tabRemove",a,e)}},[p,b])});return m.value,Ee("div",{ref:u,class:[n.e("nav-wrap"),n.is("scrollable",!!v.value),n.is(r.props.tabPosition)]},[a,Ee("div",{class:n.e("nav-scroll"),ref:s},[e.panes.length>0?Ee("div",{class:[n.e("nav"),n.is(r.props.tabPosition),n.is("stretch",e.stretch&&["top","bottom"].includes(r.props.tabPosition))],ref:i,style:w.value,role:"tablist",onKeydown:K,onWheel:E},[e.type?null:Ee(Ha,{ref:d,tabs:[...e.panes],tabRefs:c.value},null),o]):null])])}}}),Ka=_({type:{type:String,values:["card","border-card",""],default:""},closable:Boolean,addable:Boolean,modelValue:{type:[String,Number]},defaultValue:{type:[String,Number]},editable:Boolean,tabPosition:{type:String,values:["top","right","bottom","left"],default:"top"},beforeLeave:{type:T(Function),default:()=>!0},stretch:Boolean,tabindex:{type:[String,Number],default:0}}),Da=e=>Se(e)||D(e),Ya=ce({name:"ElTabs",props:Ka,emits:{[K]:e=>Da(e),tabClick:(e,a)=>a instanceof Event,tabChange:e=>Da(e),edit:(e,a)=>["remove","add"].includes(a),tabRemove:e=>Da(e),tabAdd:()=>!0},setup(e,{emit:a,slots:t,expose:r}){const n=M("tabs"),o=Ae(()=>["left","right"].includes(e.tabPosition)),{children:l,addChild:s,removeChild:i,ChildrenSorter:u}=Oa(Pe(),"ElTabPane"),c=Ce(),d=Ce((O(e.modelValue)?e.defaultValue:e.modelValue)??"0"),v=async(t,r=!1)=>{var n,o,s,i;if(d.value!==t&&!O(t))try{let u;if(e.beforeLeave){const a=e.beforeLeave(t,d.value);u=a instanceof Promise?await a:a}else u=!0;if(!1!==u){const e=null==(n=l.value.find(e=>e.paneName===d.value))?void 0:n.isFocusInsidePane();d.value=t,r&&(a(K,t),a("tabChange",t)),null==(s=null==(o=c.value)?void 0:o.removeFocus)||s.call(o),e&&(null==(i=c.value)||i.focusActiveTab())}}catch{}},b=(e,t,r)=>{e.props.disabled||(a("tabClick",e,r),v(t,!0))},f=(e,t)=>{e.props.disabled||O(e.props.name)||(t.stopPropagation(),a("edit",e.props.name,"remove"),a("tabRemove",e.props.name))},p=()=>{a("edit",void 0,"add"),a("tabAdd")},h=e=>{const a=V(e);[H.enter,H.numpadEnter].includes(a)&&p()},m=a=>{const t=a.el.firstChild,r=["bottom","right"].includes(e.tabPosition)?a.children[0].el:a.children[1].el;t!==r&&t.before(r)};return he(()=>e.modelValue,e=>v(e)),he(d,async()=>{var e;await me(),null==(e=c.value)||e.scrollToActiveTab()}),_e($a,{props:e,currentName:d,registerPane:s,unregisterPane:i,nav$:c}),r({currentName:d,get tabNavRef(){return Ua(c.value,["scheduleRender"])}}),()=>{const a=t["add-icon"],r=e.editable||e.addable?Ee("div",{class:[n.e("new-tab"),o.value&&n.e("new-tab-vertical")],tabindex:e.tabindex,onClick:p,onKeydown:h},[a?Be(t,"add-icon"):Ee(L,{class:n.is("icon-plus")},{default:()=>[Ee(Ye,null,null)]})]):null,s=Ee("div",{class:[n.e("header"),o.value&&n.e("header-vertical"),n.is(e.tabPosition)]},[Ee(u,null,{default:()=>Ee(qa,{ref:c,currentName:d.value,editable:e.editable,type:e.type,panes:l.value,stretch:e.stretch,onTabClick:b,onTabRemove:f},null),$stable:!0}),r]),i=Ee("div",{class:n.e("content")},[Be(t,"default")]);return Ee("div",{class:[n.b(),n.m(e.tabPosition),{[n.m("card")]:"card"===e.type,[n.m("border-card")]:"border-card"===e.type}],onVnodeMounted:m,onVnodeUpdated:m},[i,s])}}}),Qa=_({label:{type:String,default:""},name:{type:[String,Number]},closable:{type:Boolean,default:void 0},disabled:Boolean,lazy:Boolean}),Xa=["id","aria-hidden","aria-labelledby"],Ga="ElTabPane";var Ja=ce({name:Ga,__name:"tab-pane",props:Qa,setup(e){const a=e,t=Pe(),r=Ne(),n=pe($a);n||U(Ga,"usage: <el-tabs><el-tab-pane /></el-tabs/>");const o=M("tab-pane"),l=Ce(),s=Ce(),i=Ae(()=>a.closable??n.props.closable),u=Ae(()=>n.currentName.value===(a.name??s.value)),c=Ce(u.value),d=Ae(()=>a.name??s.value),v=Ae(()=>!a.lazy||c.value||u.value);he(u,e=>{e&&(c.value=!0)});const b=Te({uid:t.uid,getVnode:()=>t.vnode,slots:r,props:a,paneName:d,active:u,index:s,isClosable:i,isFocusInsidePane:()=>{var e;return null==(e=l.value)?void 0:e.contains(document.activeElement)}});return n.registerPane(b),ye(()=>{n.unregisterPane(b)}),Ue(()=>{var e;r.label&&(null==(e=n.nav$.value)||e.scheduleRender())}),(e,a)=>v.value?Me((ge(),we("div",{key:0,id:`pane-${d.value}`,ref_key:"paneRef",ref:l,class:xe(ke(o).b()),role:"tabpanel","aria-hidden":!u.value,"aria-labelledby":`tab-${d.value}`},[Be(e.$slots,"default")],10,Xa)),[[Fe,u.value]]):Ie("v-if",!0)}});const Za=Y(Ya,{TabPane:Ja}),et=Q(Ja),at={class:"card-hover h-full glass-effect rounded-xl overflow-hidden cursor-pointer border border-transparent hover:border-primary"},tt=["src"],rt={class:"absolute top-3 left-3 px-3 h-6 bg-black/30 rounded-full flex items-center space-x-1 backdrop-blur-sm z-[2]"},nt={class:"text-white text-[0.8rem] leading-[1.3rem]"},ot={class:"info-section absolute bottom-0 left-0 right-0 p-2 md:p-4"},lt={class:"character-name text-white font-semibold mb-2"},st={class:"character-introduction text-white mb-2 md:mb-3 line-clamp-2"},it=te(ce({__name:"index",props:{characterInfo:{},isHome:{type:Boolean,default:!1},isVideoPlaying:{type:Boolean,default:!1},cardId:{default:void 0}},emits:["mouseenter","mouseleave","resourceLoaded"],setup(e,{emit:a}){const t=ze(),{toCharacterChat:r}=ea(),n=Ce(null),o=Ce(7),l=Ce(!1),s=Ce(null),i=Ce(null);let u=null,c=null;const d=new WeakSet;be(()=>{me(()=>{(()=>{if(!n.value)return;const e=n.value,a=e.offsetWidth,t=e.querySelectorAll(".tag");let r=0,l=0;t.forEach((e,t)=>{const n=e.offsetWidth,o=0===t?n:n+8;r+o<=a&&(r+=o,l++)}),o.value=l})()})});const v=e,b=a,f=Ce(!1),p=Ce(!1),h=Ce(!1),m=()=>{if(h.value)return;const e=!!C.value.videoUrl;if(f.value||e&&p.value){h.value=!0;const e=v.cardId||v.characterInfo.id||v.characterInfo.userId;b("resourceLoaded",e)}},y=()=>{f.value=!0,m()},g=()=>{f.value=!0,m()},w=()=>{p.value=!0,m()},j=()=>{p.value=!0,l.value=!0,m()},x=()=>{v.isHome&&(b("mouseenter"),I.value&&ae())},k=()=>{v.isHome&&b("mouseleave")},I=Ae(()=>{var e;return 1===(null==(e=v.characterInfo)?void 0:e.isLive)}),C=Ae(()=>{var e;if(v.characterInfo.coverMedia)return v.characterInfo.coverMedia;const a=null==(e=v.characterInfo.bodyMedias)?void 0:e[0];return{videoUrl:void 0,imageUrl:a?ee(a):""}}),A=Ae(()=>!!C.value.videoUrl&&!l.value),R=Ae(()=>C.value.videoUrl&&Ze(C.value.videoUrl)),E=Ae(()=>v.isHome?A.value&&v.isVideoPlaying:A.value),B=Ae(()=>(()=>{const e=navigator.userAgent;return/XiaoMi|MiuiBrowser|UCBrowser|Huawei|Honor|vivo|OPPO|Heytap|Quark|Weibo|baiduboxapp|MicroMessenger|QQBrowser|mqqbrowser/i.test(e)})()),S=()=>{aa(u),u=null},P=()=>{const e=i.value,a=s.value;if(!e||!a)return;const t=e.getContext("2d");if(!t)return;if(a.readyState<2||!a.videoWidth||!a.videoHeight)return;const r=window.devicePixelRatio||1,n=e.getBoundingClientRect(),o=Math.max(1,Math.round(n.width*r)),l=Math.max(1,Math.round(n.height*r));e.width===o&&e.height===l||(e.width=o,e.height=l);const u=a.videoWidth/a.videoHeight;let c,d,v,b;o/l>u?(c=o,d=o/u,v=0,b=0):(d=l,c=l*u,v=(o-c)/2,b=0),t.clearRect(0,0,o,l),t.drawImage(a,v,b,c,d)},_=()=>{null!==c&&(cancelAnimationFrame(c),c=null)},N=()=>{const e=s.value,a=C.value.videoUrl;e&&a&&(S(),e.removeAttribute("src"),e.load(),u=ta(e,a,{onError:()=>{j()}}),!u&&ra(a)&&j())},T=()=>{if(R.value)return;const e=s.value;e&&(E.value?e.play().catch(()=>{}):(e.pause(),e.currentTime=0))};he(E,()=>{T()},{flush:"post"}),he(s,e=>{e&&!d.has(e)&&(d.add(e),e.addEventListener("loadeddata",()=>{B.value&&P()}),e.addEventListener("play",()=>{B.value&&(()=>{if(null!==c)return;const e=()=>{c=null;const a=s.value;!a||a.paused||a.ended||(P(),c=requestAnimationFrame(e))};c=requestAnimationFrame(e)})()}),e.addEventListener("pause",()=>{B.value&&_()})),e&&me(()=>{N(),E.value&&T()})}),he(()=>C.value.videoUrl,(e,a)=>{e!==a&&me(()=>{N()})}),he(()=>v.characterInfo,()=>{l.value=!1,f.value=!1,p.value=!1,h.value=!1});const U=async()=>{if(v.isHome&&I.value){const e=v.characterInfo.userId||v.characterInfo.id;if(!e)return;return void(await X({router:t,userId:e,avatarUrl:v.characterInfo.headerUrl,characterName:v.characterInfo.personName||v.characterInfo.name,showLiveAvatar:I.value,avatarSize:80}))}G("user_click",{userId:v.characterInfo.userId}),v.isHome&&G("home_user_chat_click",{userId:v.characterInfo.userId}),await(async e=>{await r(e)&&Z(!0)})(v.characterInfo.userId)};return ye(()=>{S(),_()}),(a,t)=>{const r=Je,l=J,u=Ge,c=Xe;return ge(),we("div",{class:"character-card",onMouseenter:x,onMouseleave:k},[Oe("div",at,[Oe("div",{class:"relative aspect-[9/16] overflow-hidden",onClick:U},[Ee(r,{src:ke(C).imageUrl,alt:e.characterInfo.personName,lazy:!e.isHome,class:"card-image w-full h-full object-cover object-top absolute inset-0",onLoad:y,onError:g},null,8,["src","alt","lazy"]),ke(A)?(ge(),we(ue,{key:0},[ke(R)?(ge(),we("img",{key:0,src:ke(C).videoUrl,class:xe(["card-image","video-layer","w-full","h-full","object-cover","object-top","absolute","inset-0",{"video-visible":ke(E)}]),onLoad:w,onError:j},null,42,tt)):ke(B)?(ge(),we("div",{key:1,class:xe(["card-image","video-layer","w-full","h-full","absolute","inset-0","overflow-hidden",{"video-visible":ke(E)}])},[Oe("video",{ref_key:"nativeVideoRef",ref:s,class:"card-image-offscreen",loop:"",muted:"",playsinline:"",autoplay:"",preload:"auto",disablepictureinpicture:"",disableremoteplayback:"",controlslist:"nodownload noremoteplayback nofullscreen","x-webkit-airplay":"deny",crossorigin:"anonymous",onLoadeddata:w,onError:j},null,544),Oe("canvas",{ref_key:"canvasRef",ref:i,class:"w-full h-full absolute inset-0",style:{"z-index":"1"}},null,512)],2)):(ge(),we("video",{key:2,ref_key:"nativeVideoRef",ref:s,class:xe(["card-image","video-layer","w-full","h-full","object-cover","object-top","absolute","inset-0",{"video-visible":ke(E)}]),loop:"",muted:"",playsinline:"",preload:"auto",disablepictureinpicture:"",disableremoteplayback:"",controlslist:"nodownload noremoteplayback nofullscreen","x-webkit-airplay":"deny",onLoadeddata:w,onError:j},null,34))],64)):Ie("",!0),t[0]||(t[0]=Oe("div",{class:"hover-overlay"},null,-1)),Oe("div",rt,[Ee(l,{name:"chat-3-line",size:"12"}),Oe("span",nt,$e((d=e.characterInfo.chatsCount,d>=1e6?`${(d/1e6).toFixed(1)}m`:d>=1e3?`${(d/1e3).toFixed(1)}k`:`${d}`)),1)]),ke(I)?(ge(),Le(u,{key:1,class:"absolute top-3 right-3 z-[2]"})):(ge(),Le(c,{key:2,status:e.characterInfo.chatStatus,class:"absolute top-3 right-3 z-[2]"},null,8,["status"])),Oe("div",ot,[Oe("div",lt,[Ve($e(e.characterInfo.personName)+" ",1),e.characterInfo.age?(ge(),we(ue,{key:0},[Ve(" ,"+$e(e.characterInfo.age),1)],64)):Ie("",!0)]),Oe("p",st,$e(e.characterInfo.introduction),1),e.characterInfo.userTags&&e.characterInfo.userTags.length>0?(ge(),we("div",{key:0,ref_key:"tagsContainerRef",ref:n,class:"tags-container flex flex-nowrap gap-2 overflow-hidden"},[(ge(!0),we(ue,null,He((e.characterInfo.userTags||[]).slice(0,7),(e,a)=>(ge(),we("span",{key:e,style:je({visibility:a<ke(o)?"visible":"hidden"}),class:"tag px-2 py-[2px] rounded-full text-white text-[0.8rem] leading-[1.3rem] h-[24px] flex-shrink-0 whitespace-nowrap"},$e(e),5))),128))],512)):Ie("",!0)])])])],32);var d}}}),[["__scopeId","data-v-6e3957e5"]]);export{et as E,it as _,Za as a};