import{aN as e,F as a,z as t,aQ as r,az as n,w as o,aV as l,bc as s,ap as i,bj as u,y as c,al as d,K as v,p as b,m as f,aO as p,aq as h,N as m,b1 as y,aB as g,S as w,ay as j,ad as x,J as k,X as I,bl as C,aP as A,x as R,a3 as E,W as S,aF as B,b7 as N,Q as P,a$ as _,a4 as T,bk as M,bJ as F,bL as O,aS as U,by as $,e as V,aj as L,E as z,bx as H,bT as W,$ as q,U as D,aM as K,bV as Q,bY as X,a6 as Y,b0 as Z,a_ as G,s as J,at as ee,ae,b5 as te,aZ as re,aK as ne,r as oe}from"./index.DHkYopKB.js";import{e as le,H as se,O as ie,C as ue,D as ce,d as de,F as ve,u as be,A as fe,am as pe,a0 as he,ag as me,G as ye,az as ge,R as we,Z as je,a4 as xe,l as ke,V as Ie,S as Ce,an as Ae,k as Re,a8 as Ee,g as Se,a3 as Be,r as Ne,ab as Pe,M as _e,x as Te,a5 as Me,ar as Fe,a6 as Oe,_ as Ue,aC as $e,aw as Ve,i as Le,ah as ze,j as He,q as We,aa as qe,aq as De}from"./vue-vendor.CbU-cCHr.js";import{i as Ke}from"./numbers.DrV_xewr.js";import{j as Qe,k as Xe,v as Ye,ad as Ze}from"./icons.BL-8H3wb.js";import{f as Ge}from"./_flatRest.B7dnNgmh.js";import{_ as Je}from"./index.D-floT3g.js";import{_ as ea}from"./index.BmEwwL6m.js";import{a as aa,i as ta}from"./mediaType.7Pdo58gR.js";import{u as ra}from"./useCharacterNavigation.Cq0XhwKb.js";import{f as na}from"./utils-vendor.CIoRGLTT.js";var oa=Object.create,la=function(){function a(){}return function(t){if(!e(t))return{};if(oa)return oa(t);a.prototype=t;var r=new a;return a.prototype=void 0,r}}();function sa(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 ia=Object.prototype.hasOwnProperty;function ua(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&&ia.call(a,o))&&n.push(o);return n}function ca(e){return n(e)?o(e,!0):ua(e)}var da="object"==typeof exports&&exports&&!exports.nodeType&&exports,va=da&&"object"==typeof module&&module&&!module.nodeType&&module,ba=va&&va.exports===da?s.Buffer:void 0,fa=ba?ba.allocUnsafe:void 0;var pa=Object.getOwnPropertySymbols?function(e){for(var a=[];e;)c(a,i(e)),e=d(e);return a}:u;function ha(e){return v(e,ca,pa)}var ma=Object.prototype.hasOwnProperty;function ya(e){var a=new e.constructor(e.byteLength);return new b(a).set(new b(e)),a}var ga=/\w*$/;var wa=f?f.prototype:void 0,ja=wa?wa.valueOf:void 0;function xa(e,a,t){var r,n,o,l=e.constructor;switch(a){case"[object ArrayBuffer]":return ya(e);case"[object Boolean]":case"[object Date]":return new l(+e);case"[object DataView]":return function(e,a){var t=a?ya(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?ya(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,ga.exec(n))).lastIndex=n.lastIndex,o;case"[object Symbol]":return r=e,ja?Object(ja.call(r)):{}}}var ka=y&&y.isMap,Ia=ka?m(ka):function(e){return p(e)&&"[object Map]"==h(e)};var Ca=y&&y.isSet,Aa=Ca?m(Ca):function(e){return p(e)&&"[object Set]"==h(e)},Ra="[object Arguments]",Ea="[object Function]",Sa="[object Object]",Ba={};function Na(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]&&ma.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==Ea||"[object GeneratorFunction]"==y;if(g(a))return function(e,a){if(a)return e.slice();var t=e.length,r=fa?fa(t):new e.constructor(t);return e.copy(r),r}(a,b);if(y==Sa||y==Ra||k&&!u){if(v=f||k?{}:function(e){return"function"!=typeof e.constructor||r(e)?{}:la(d(e))}(a),!b)return f?function(e,a){return sa(e,pa(e),a)}(a,function(e,a){return e&&sa(a,ca(a),e)}(v,a)):function(e,a){return sa(e,i(e),a)}(a,function(e,a){return e&&sa(a,l(a),e)}(v,a))}else{if(!Ba[y])return u?a:{};v=xa(a,y,b)}}c||(c=new w);var I=c.get(a);if(I)return I;c.set(a,v),Aa(a)?a.forEach(function(e){v.add(Na(e,n,o,e,a,c))}):Ia(a)&&a.forEach(function(e,t){v.set(t,Na(e,n,o,t,a,c))});var C=m?void 0:(p?f?ha:x:f?ca: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,Na(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[Ra]=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[Sa]=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[Ea]=Ba["[object WeakMap]"]=!1;var _a=Object.prototype.hasOwnProperty;function Ta(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 Ma(e){return A(e)?void 0:e}var Fa=Ge(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}),sa(e,ha(e),t),r&&(t=Na(t,7,Ma));for(var n=a.length;n--;)Ta(t,a[n]);return t});const Oa=e=>le(e);const Ua=e=>{const a=se(e)?e:[e],t=[];return a.forEach(e=>{var a;se(e)?t.push(...Ua(e)):ie(e)&&(null==(a=e.component)?void 0:a.subTree)?t.push(e,...Ua(e.component.subTree)):ie(e)&&se(e.children)?t.push(...Ua(e.children)):ie(e)&&2===e.shapeFlag?t.push(...Ua(e.type())):t.push(e)}),t},$a=(e,a)=>{const t=me({}),r=me([]),n=new WeakMap,o=()=>{r.value=((e,a,t)=>Ua(e.subTree).filter(e=>{var t;return ie(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,pe(t),he(()=>{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)&&pe(t),e(a,o))}n.get(r).push(a)})},removeChild:e=>{delete t.value[e.uid],pe(t);const a=e.getVnode().el,r=a.parentNode,o=n.get(r),l=o.indexOf(a);o.splice(l,1)},ChildrenSorter:be({setup:(e,{slots:a})=>()=>(o(),a.default?fe(l,{render:a.default}):null)})}},Va=Symbol("tabsRootContextKey"),La=P({tabs:{type:T(Array),default:()=>_([])},tabRefs:{type:T(Object),default:()=>_({})}}),za="ElTabBar";var Ha=be({name:za,__name:"tab-bar",props:La,setup(e,{expose:a}){const t=e,r=ye(Va);r||M(za,"<el-tabs><el-tab-bar /></el-tabs>");const n=F("tabs"),o=Ee(),l=Ee(),s=Se(()=>{var e;return U(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(U(r.paneName))return!1;const o=t.tabRefs[r.paneName];if(!o)return!1;if(!r.active)return!0;e=o[`offset${Oa(l)}`],a=o[`client${Oa(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${Oa(o)}(${e}px)`}})(),u=[];ge(()=>t.tabs,async()=>{await we(),i(),u.forEach(e=>e.stop()),u.length=0,Object.values(t.tabRefs).forEach(e=>{u.push(O(e,i))})},{immediate:!0});const c=O(o,()=>i());return je(()=>{u.forEach(e=>e.stop()),u.length=0,c.stop()}),a({ref:o,update:i}),(e,a)=>s.value?(xe(),ke("div",{key:0,ref_key:"barRef",ref:o,class:Ce([Ae(n).e("active-bar"),Ae(n).is(Ae(r).props.tabPosition)]),style:Ie(l.value)},null,6)):Re("v-if",!0)}});const Wa=P({panes:{type:T(Array),default:()=>_([])},currentName:{type:[String,Number],default:""},editable:Boolean,type:{type:String,values:["card","border-card",""],default:""},stretch:Boolean,tabindex:{type:[String,Number],default:void 0}}),qa="ElTabNav",Da=be({name:qa,props:Wa,emits:{tabClick:(e,a,t)=>t instanceof Event,tabRemove:(e,a)=>a instanceof Event},setup(e,{expose:a,emit:t}){const r=ye(Va);r||M(qa,"<el-tabs><tab-nav /></el-tabs>");const n=F("tabs"),o=H(),l=W(),s=Ee(),i=Ee(),u=Ee(),c=Ee({}),d=Ee(),v=Ee(!1),b=Ee(0),f=Ee(!1),p=Ee(!0),h=Ee(!1),m=me(),y=Se(()=>["top","bottom"].includes(r.props.tabPosition)),g=Se(()=>y.value?"width":"height"),w=Se(()=>{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=Se(()=>y.value?j.value:x.value),A=Se(()=>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=>{S(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,B()||0===i||e.preventDefault(),n=N(()=>{r(o),o=0}))}}})({atStartEdge:Se(()=>b.value<=0),atEndEdge:Se(()=>A.value-b.value<=C.value),layout:Se(()=>y.value?"horizontal":"vertical")},e=>{b.value=q(b.value+e,0,A.value-C.value)}),E=e=>{h.value=!0,R(e),N(()=>{h.value=!1})},P=()=>{if(!s.value)return;const e=s.value.getBoundingClientRect()[g.value],a=b.value;a&&(b.value=a>e?a-e:0)},_=()=>{if(!s.value||!i.value)return;const e=i.value.getBoundingClientRect()[g.value],a=s.value.getBoundingClientRect()[g.value],t=b.value;Ke(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 we();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)},U=()=>{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=Ke(t,n+r),Ke(r,t-n)&&(b.value=t-r)):(v.value=!1,n>0&&(b.value=0))},D=e=>{let a=0;switch(L(e)){case z.left:case z.up:a=-1;break;case z.right:case z.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(),K()},K=()=>{p.value&&(f.value=!0)},Q=()=>f.value=!1;return ge(o,e=>{"hidden"===e?p.value=!1:"visible"===e&&setTimeout(()=>p.value=!0,50)}),ge(l,e=>{e?setTimeout(()=>p.value=!0,50):p.value=!1}),O(u,()=>{N(U)}),he(()=>setTimeout(()=>T(),0)),Be(()=>U()),a({scrollToActiveTab:T,removeFocus:Q,focusActiveTab:async()=>{var a;await we(),null==(a=c.value[e.currentName])||a.focus({preventScroll:!0})},tabListRef:i,tabBarRef:d,scheduleRender:()=>pe(m)}),()=>{const a=v.value?[Ne("span",{class:[n.e("nav-prev"),n.is("disabled",!v.value.prev)],onClick:P},[Ne(V,null,{default:()=>[Ne(Qe,null,null)]})]),Ne("span",{class:[n.e("nav-next"),n.is("disabled",!v.value.next)],onClick:_},[Ne(V,null,{default:()=>[Ne(Xe,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?Ne(V,{class:"is-icon-close",onClick:e=>t("tabRemove",a,e)},{default:()=>[Ne(Ye,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 Ne("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:()=>K(),onBlur:()=>Q(),onClick:e=>{Q(),t("tabClick",a,d,e)},onKeydown:e=>{const r=L(e);!v||r!==z.delete&&r!==z.backspace||t("tabRemove",a,e)}},[p,b])});return m.value,Ne("div",{ref:u,class:[n.e("nav-wrap"),n.is("scrollable",!!v.value),n.is(r.props.tabPosition)]},[a,Ne("div",{class:n.e("nav-scroll"),ref:s},[e.panes.length>0?Ne("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:D,onWheel:E},[e.type?null:Ne(Ha,{ref:d,tabs:[...e.panes],tabRefs:c.value},null),o]):null])])}}}),Ka=P({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}}),Qa=e=>_e(e)||K(e),Xa=be({name:"ElTabs",props:Ka,emits:{[D]:e=>Qa(e),tabClick:(e,a)=>a instanceof Event,tabChange:e=>Qa(e),edit:(e,a)=>["remove","add"].includes(a),tabRemove:e=>Qa(e),tabAdd:()=>!0},setup(e,{emit:a,slots:t,expose:r}){const n=F("tabs"),o=Se(()=>["left","right"].includes(e.tabPosition)),{children:l,addChild:s,removeChild:i,ChildrenSorter:u}=$a(Te(),"ElTabPane"),c=Ee(),d=Ee((U(e.modelValue)?e.defaultValue:e.modelValue)??"0"),v=async(t,r=!1)=>{var n,o,s,i;if(d.value!==t&&!U(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(D,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||U(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=L(e);[z.enter,z.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 ge(()=>e.modelValue,e=>v(e)),ge(d,async()=>{var e;await we(),null==(e=c.value)||e.scrollToActiveTab()}),Me(Va,{props:e,currentName:d,registerPane:s,unregisterPane:i,nav$:c}),r({currentName:d,get tabNavRef(){return Fa(c.value,["scheduleRender"])}}),()=>{const a=t["add-icon"],r=e.editable||e.addable?Ne("div",{class:[n.e("new-tab"),o.value&&n.e("new-tab-vertical")],tabindex:e.tabindex,onClick:p,onKeydown:h},[a?Pe(t,"add-icon"):Ne(V,{class:n.is("icon-plus")},{default:()=>[Ne(Ze,null,null)]})]):null,s=Ne("div",{class:[n.e("header"),o.value&&n.e("header-vertical"),n.is(e.tabPosition)]},[Ne(u,null,{default:()=>Ne(Da,{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=Ne("div",{class:n.e("content")},[Pe(t,"default")]);return Ne("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])}}}),Ya=P({label:{type:String,default:""},name:{type:[String,Number]},closable:{type:Boolean,default:void 0},disabled:Boolean,lazy:Boolean}),Za=["id","aria-hidden","aria-labelledby"],Ga="ElTabPane";var Ja=be({name:Ga,__name:"tab-pane",props:Ya,setup(e){const a=e,t=Te(),r=Fe(),n=ye(Va);n||M(Ga,"usage: <el-tabs><el-tab-pane /></el-tabs/>");const o=F("tab-pane"),l=Ee(),s=Ee(),i=Se(()=>a.closable??n.props.closable),u=Se(()=>n.currentName.value===(a.name??s.value)),c=Ee(u.value),d=Se(()=>a.name??s.value),v=Se(()=>!a.lazy||c.value||u.value);ge(u,e=>{e&&(c.value=!0)});const b=Oe({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),je(()=>{n.unregisterPane(b)}),Ue(()=>{var e;r.label&&(null==(e=n.nav$.value)||e.scheduleRender())}),(e,a)=>v.value?$e((xe(),ke("div",{key:0,id:`pane-${d.value}`,ref_key:"paneRef",ref:l,class:Ce(Ae(o).b()),role:"tabpanel","aria-hidden":!u.value,"aria-labelledby":`tab-${d.value}`},[Pe(e.$slots,"default")],10,Za)),[[Ve,u.value]]):Re("v-if",!0)}});const et=Q(Xa,{TabPane:Ja}),at=X(Ja),tt={class:"card-hover h-full glass-effect rounded-xl overflow-hidden cursor-pointer border border-transparent hover:border-primary"},rt=["src"],nt={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]"},ot={class:"text-white text-[0.8rem] leading-[1.3rem]"},lt={class:"info-section absolute bottom-0 left-0 right-0 p-2 md:p-4"},st={class:"character-name text-white font-semibold mb-2"},it={class:"character-introduction text-white mb-2 md:mb-3 line-clamp-2"},ut=oe(be({__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=De(),{toCharacterChat:r}=ra(),n=Ee(null),o=Ee(7),l=Ee(!1),s=Ee(null),i=Ee(null);let u=null,c=null;const d=new WeakSet;he(()=>{we(()=>{(()=>{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=Ee(!1),p=Ee(!1),h=Ee(!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&&te())},k=()=>{v.isHome&&b("mouseleave")},I=Se(()=>{var e;return 1===(null==(e=v.characterInfo)?void 0:e.isLive)}),C=Se(()=>{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?ae(a):""}}),A=Se(()=>!!C.value.videoUrl&&!l.value),R=Se(()=>C.value.videoUrl&&ta(C.value.videoUrl)),E=Ee(null),S=Ee(!1);v.isHome&&na(E,([e])=>{S.value=!!(null==e?void 0:e.isIntersecting)},{rootMargin:"200px 0px",threshold:0});const B=Se(()=>v.isHome?A.value&&v.isVideoPlaying&&S.value:A.value),N=Se(()=>(()=>{const e=navigator.userAgent;return/XiaoMi|MiuiBrowser|UCBrowser|Huawei|Honor|vivo|OPPO|Heytap|Quark|Weibo|baiduboxapp|MicroMessenger|QQBrowser|mqqbrowser/i.test(e)})()),P=()=>{Y(u),u=null},_=()=>{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)},T=()=>{null!==c&&(cancelAnimationFrame(c),c=null)},M=()=>{const e=s.value,a=C.value.videoUrl;e&&a&&(P(),e.removeAttribute("src"),e.load(),u=re(e,a,{onError:()=>{j()}}),!u&&ne(a)&&j())},F=()=>{if(R.value)return;const e=s.value;e&&(B.value?e.play().catch(()=>{}):(e.pause(),e.currentTime=0))};ge(B,()=>{F()},{flush:"post"}),ge(s,e=>{e&&!d.has(e)&&(d.add(e),e.addEventListener("loadeddata",()=>{N.value&&_()}),e.addEventListener("play",()=>{B.value?N.value&&(()=>{if(null!==c)return;const e=()=>{c=null;const a=s.value;!a||a.paused||a.ended||(_(),c=requestAnimationFrame(e))};c=requestAnimationFrame(e)})():e.pause()}),e.addEventListener("pause",()=>{N.value&&T()})),e&&we(()=>{M(),F()})}),ge(()=>C.value.videoUrl,(e,a)=>{e!==a&&we(()=>{M()})}),ge(()=>v.characterInfo,()=>{l.value=!1,f.value=!1,p.value=!1,h.value=!1});const O=async()=>{if(v.isHome&&I.value){const e=v.characterInfo.userId||v.characterInfo.id;if(!e)return;return void(await Z({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)&&ee(!0)})(v.characterInfo.userId)};return je(()=>{P(),T()}),(a,t)=>{const r=aa,l=J,u=ea,c=Je;return xe(),ke("div",{ref_key:"cardRef",ref:E,class:"character-card",onMouseenter:x,onMouseleave:k},[Le("div",tt,[Le("div",{class:"relative aspect-[9/16] overflow-hidden",onClick:O},[Ne(r,{src:Ae(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"]),Ae(A)?(xe(),ke(ve,{key:0},[Ae(R)?(xe(),ke("img",{key:0,src:Ae(C).videoUrl,class:Ce(["card-image","video-layer","w-full","h-full","object-cover","object-top","absolute","inset-0",{"video-visible":Ae(B)}]),onLoad:w,onError:j},null,42,rt)):Ae(N)?(xe(),ke("div",{key:1,class:Ce(["card-image","video-layer","w-full","h-full","absolute","inset-0","overflow-hidden",{"video-visible":Ae(B)}])},[Le("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),Le("canvas",{ref_key:"canvasRef",ref:i,class:"w-full h-full absolute inset-0",style:{"z-index":"1"}},null,512)],2)):(xe(),ke("video",{key:2,ref_key:"nativeVideoRef",ref:s,class:Ce(["card-image","video-layer","w-full","h-full","object-cover","object-top","absolute","inset-0",{"video-visible":Ae(B)}]),loop:"",muted:"",playsinline:"",preload:"auto",disablepictureinpicture:"",disableremoteplayback:"",controlslist:"nodownload noremoteplayback nofullscreen","x-webkit-airplay":"deny",onLoadeddata:w,onError:j},null,34))],64)):Re("",!0),t[0]||(t[0]=Le("div",{class:"hover-overlay"},null,-1)),Le("div",nt,[Ne(l,{name:"chat-3-line",size:"12"}),Le("span",ot,ze((d=e.characterInfo.chatsCount,d>=1e6?`${(d/1e6).toFixed(1)}m`:d>=1e3?`${(d/1e3).toFixed(1)}k`:`${d}`)),1)]),Ae(I)?(xe(),He(u,{key:1,class:"absolute top-3 right-3 z-[2]"})):(xe(),He(c,{key:2,status:e.characterInfo.chatStatus,class:"absolute top-3 right-3 z-[2]"},null,8,["status"])),Le("div",lt,[Le("div",st,[We(ze(e.characterInfo.personName)+" ",1),e.characterInfo.age?(xe(),ke(ve,{key:0},[We(" ,"+ze(e.characterInfo.age),1)],64)):Re("",!0)]),Le("p",it,ze(e.characterInfo.introduction),1),e.characterInfo.userTags&&e.characterInfo.userTags.length>0?(xe(),ke("div",{key:0,ref_key:"tagsContainerRef",ref:n,class:"tags-container flex flex-nowrap gap-2 overflow-hidden"},[(xe(!0),ke(ve,null,qe((e.characterInfo.userTags||[]).slice(0,7),(e,a)=>(xe(),ke("span",{key:e,style:Ie({visibility:a<Ae(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"},ze(e),5))),128))],512)):Re("",!0)])])])],544);var d}}}),[["__scopeId","data-v-c79a0aa2"]]);export{at as E,ut as _,et as a};