13 lines
28 KiB
JavaScript
13 lines
28 KiB
JavaScript
|
|
import{aA as Qe,r as m,c as Xe,m as Je,Y as Ze,al as y,z as f,A as h,B as s,R as r,J as c,u as a,P as n,O as g,a5 as et,Q as ue,M as T,a4 as tt,D as q,I as ve,K as ot,S as lt,T as st,W as K}from"./vue-vendor-164775a6.js";import{_ as at,f as rt,u as nt,a as it,L as ct,g as dt}from"./index-36b4201c.js";import{_ as pe}from"./avatar-default-20a1956c.js";import{E as w,a as Q,u as ut,o as vt,f as pt,v as X,q as _t,r as mt,t as _e,j as ft,x as ht,y as gt,z as yt,e as wt,A as kt,B as bt}from"./element-plus-83a396df.js";import{g as Tt,d as me,a as St,r as xt,b as Ct}from"./userWorks-2c5b5447.js";import"./utils-edfcd65b.js";const Dt={class:"works-page"},Ut={class:"sidebar"},Vt={class:"nav-menu"},zt={class:"nav-item active"},Et={class:"divider"},It={class:"tools-menu"},Bt={class:"main-content"},Ot={class:"top-header"},Lt={class:"header-right"},Rt={class:"points"},Ft={class:"points-icon"},At={class:"points-number"},Mt={class:"user-avatar"},Wt=["alt"],Nt={class:"toolbar"},Pt={class:"filters-bar"},qt={class:"filters-left"},Ht={class:"filters-right"},$t={class:"select-row"},jt=["onClick"];const Gt=["src","data-cover","poster"],Yt=["src","alt"],Kt={key:3,class:"work-placeholder"},Qt={class:"placeholder-text"},Xt={key:4,class:"checker"},Jt=["onClick"],Zt={class:"meta"},eo=["title"],to={class:"sub"},oo={key:0,class:"detail-content"},lo={class:"detail-left"},so={class:"video-container"},ao={key:0,class:"video-error-overlay"},ro={class:"error-content"},no={class:"error-actions"},io=["src","poster"],co=["src","alt"],uo={class:"detail-right"},vo={class:"detail-header"},po={class:"user-info"},_o={class:"avatar"},mo=["alt"],fo={class:"username"},ho={class:"tabs"},go={key:0,class:"description-section"},yo={class:"section-title"},wo={class:"description-text"},ko={key:1,class:"reference-content"},bo={class:"input-details-section"},To={class:"section-title"},So={class:"input-images"},xo={class:"input-image-item"},Co=["src","alt"],Do={class:"input-image-item"},Uo=["src","alt"],Vo={class:"description-section"},zo={class:"section-title"},Eo={class:"description-text"},Io={key:2,class:"description-section"},Bo={class:"section-title"},Oo={class:"description-text"},Lo={class:"metadata-section"},Ro={class:"metadata-item"},Fo={class:"label"},Ao={class:"value"},Mo={class:"metadata-item"},Wo={class:"label"},No={class:"value"},Po={class:"metadata-item"},qo={class:"label"},Ho={class:"value"},$o={key:0,class:"metadata-item"},jo={class:"label"},Go={class:"value"},Yo={key:1,class:"metadata-item"},Ko={class:"label"},Qo={class:"value"},Xo={class:"metadata-item"},Jo={class:"label"},Zo={class:"value"},el={key:2,class:"metadata-item"},tl={class:"label"},ol={class:"value"},ll={class:"action-section"},sl={key:0,class:"loading-indicator"},al={key:1,class:"finished"},rl=["title"],nl={__name:"MyWorks",setup(il){const{t:o}=rt(),C=Qe(),fe=nt(),J=m({username:"",nickname:"",bio:"",avatar:"",id:"",points:0,frozenPoints:0}),E=m("all");m([]);const U=m(""),z=m("all"),I=m(""),H=m("date");m("desc");const B=m(""),O=m(!1),S=m(new Set),A=m(!1),v=m(null),D=m("detail"),L=m(!1),$=m(null),R=m(1),Z=m(20),F=m(!1),M=m(!0),x=m([]),ee=m(!1),W=m(new Set),te=e=>e?e.startsWith("http://")||e.startsWith("https://")||e.startsWith("/")?e:"/"+e:null,oe=e=>{var u,b;const t=te(e.resultUrl),l=te(e.thumbnailUrl),i=l||t||"/images/backgrounds/welcome.jpg";return console.log(`转换作品 ${e.id}:`,{原始resultUrl:e.resultUrl,原始thumbnailUrl:e.thumbnailUrl,处理后resultUrl:t,处理后thumbnailUrl:l,最终cover:i}),{id:((u=e.id)==null?void 0:u.toString())||e.taskId||"",title:e.title||e.prompt||"未命名作品",cover:i,resultUrl:t||"",type:e.workType==="TEXT_TO_VIDEO"||e.workType==="IMAGE_TO_VIDEO"||e.workType==="STORYBOARD_VIDEO"?"video":"image",category:e.workType==="TEXT_TO_VIDEO"?"文生视频":e.workType==="IMAGE_TO_VIDEO"?"图生视频":e.workType==="STORYBOARD_VIDEO"?"分镜视频":e.workType==="STORYBOARD_IMAGE"?"分镜图":"未知",sizeText:e.fileSize||"未知大小",createTime:e.createdAt?new Date(e.createdAt).toLocaleString("zh-CN"):"",date:e.createdAt?new Date(e.createdAt).toLocaleDateString(
|
||
|
|
<svg class="el-icon" style="width: 1em; height: 1em; font-size: 32px; margin-bottom: 8px;">
|
||
|
|
<use href="#icon-video-play"></use>
|
||
|
|
</svg>
|
||
|
|
<div class="placeholder-text" style="font-size: 13px; color: #999;">视频加载失败</div>
|
||
|
|
<div class="placeholder-text" style="font-size: 11px; color: #666; margin-top: 4px;">文件可能不存在</div>
|
||
|
|
`,l.style.cssText="position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); display: flex; flex-direction: column; align-items: center; justify-content: center;",e.appendChild(l)}},We=e=>{const t=e.target,l=t.src;if(console.error("❌ 图片加载失败:",l),console.error("错误详情:",e),W.value.add(l),fetch(l,{method:"GET"}).then(i=>{i.ok?console.log("✓ 图片文件存在但浏览器无法加载,可能是 CORS 或格式问题"):console.error(`✗ HTTP ${i.status}: ${i.statusText} - 文件不存在或无权限`)}).catch(i=>{console.error("✗ 网络错误或文件不存在:",i.message)}),t){t.style.display="none";const i=t.parentElement.querySelector(".work-placeholder");if(i)i.style.display="flex";else{const u=document.createElement("div");u.className="work-placeholder",u.innerHTML=`
|
||
|
|
<svg class="el-icon" style="width: 1em; height: 1em; font-size: 24px;">
|
||
|
|
<use href="#icon-video-play"></use>
|
||
|
|
</svg>
|
||
|
|
<div class="placeholder-text">加载失败</div>
|
||
|
|
`,t.parentElement.appendChild(u)}}},ie=async()=>{var e;try{const t=await dt();if(console.log("获取用户信息响应:",t),t&&t.data&&t.data.success&&t.data.data){const l=t.data.data;console.log("用户数据:",l),J.value={username:l.username||"",nickname:l.nickname||l.username||"",bio:l.bio||"",avatar:l.avatar||"",id:l.id?String(l.id):"",points:l.points||0,frozenPoints:l.frozenPoints||0},console.log("设置后的用户信息:",J.value)}else console.error("获取用户信息失败:",((e=t==null?void 0:t.data)==null?void 0:e.message)||"未知错误"),w.error(o("profile.loadUserInfoFailed"))}catch(t){console.error("加载用户信息失败:",t),w.error(o("profile.loadUserInfoFailed")+": "+(t.message||"未知错误"))}};return Je(()=>{ie(),N()}),Ze(()=>{R.value=1,x.value=[],ie(),N()}),(e,t)=>{var de;const l=y("el-icon"),i=y("el-tag"),u=y("el-radio-button"),b=y("el-radio-group"),p=y("el-option"),k=y("el-select"),_=y("el-button"),V=y("el-input"),ce=y("el-checkbox"),Ne=y("el-tooltip"),P=y("el-dropdown-item"),Pe=y("el-dropdown-menu"),qe=y("el-dropdown"),He=y("el-space"),$e=y("el-card"),je=y("el-col"),Ge=y("el-row"),Ye=y("el-dialog"),Ke=y("el-empty");return f(),h("div",Dt,[s("aside",Ut,[t[12]||(t[12]=s("div",{class:"logo"},[s("img",{src:it,alt:"Logo"})],-1)),s("nav",Vt,[s("div",{class:"nav-item",onClick:Ie},[r(l,null,{default:c(()=>[r(a(ut))]),_:1}),s("span",null,n(a(o)("profile.title")),1)]),s("div",{class:"nav-item",onClick:Be},[r(l,null,{default:c(()=>[r(a(vt))]),_:1}),s("span",null,n(a(o)("profile.subscription")),1)]),s("div",zt,[r(l,null,{default:c(()=>[r(a(pt))]),_:1}),s("span",null,n(a(o)("works.title")),1)])]),s("div",Et,[s("span",null,n(a(o)("profile.tools")),1)]),s("nav",It,[s("div",{class:"nav-item",onClick:Oe},[r(l,null,{default:c(()=>[r(a(X))]),_:1}),s("span",null,n(a(o)("works.textToVideo")),1)]),s("div",{class:"nav-item",onClick:Le},[r(l,null,{default:c(()=>[r(a(_t))]),_:1}),s("span",null,n(a(o)("works.imageToVideo")),1)]),s("div",{class:"nav-item",onClick:Re},[r(l,null,{default:c(()=>[r(a(mt))]),_:1}),s("span",null,n(a(o)("works.storyboardVideo")),1),r(i,{size:"small",type:"primary",class:"sora-tag"},{default:c(()=>[...t[11]||(t[11]=[g("Sora2.0",-1)])]),_:1})])])]),s("main",Bt,[s("header",Ot,[s("div",Lt,[s("div",Rt,[s("div",Ft,[r(l,null,{default:c(()=>[r(a(_e))]),_:1})]),s("span",At,n(a(fe).availablePoints),1)]),r(ct),s("div",Mt,[s("img",{src:pe,alt:a(o)("dashboard.userAvatar")},null,8,Wt)])])]),s("div",{class:"content-area",onScroll:we},[s("div",Nt,[r(b,{modelValue:E.value,"onUpdate:modelValue":t[0]||(t[0]=d=>E.value=d),size:"small",class:"seg-control"},{default:c(()=>[r(u,{label:"all"},{default:c(()=>[g(n(a(o)("works.all")),1)]),_:1}),r(u,{label:"video"},{default:c(()=>[g(n(a(o)("works.video")),1)]),_:1}),r(u,{label:"image"},{default:c(()=>[g(n(a(o)("works.image")),1)]),_:1})]),_:1},8,["modelValue"])]),s("div",Pt,[s("div",qt,[r(k,{modelValue:U.value,"onUpdate:modelValue":t[1]||(t[1]=d=>U.value=d),placeholder:a(o)("works.dateFilter"),size:"small",style:{width:"100px"}},{default:c(()=>[r(p,{label:a(o)("works.today"),value:"today"},null,8,["label"]),r(p,{label:a(o)("works.thisWeek"),value:"week"},null,8,["label"]),r(p,{label:a(o)("works.thisMonth"),value:"month"},null,8,["label"])]),_:1},8,["modelValue","placeholder"]),r(k,{modelValue:z.value,"onUpdate:modelValue":t[2]||(t[2]=d=>z.value=d),placeholder:a(o)("works.taskType"),size:"small",style:{width:"100px"},onChange:ge},{default:c(()=>[r(p,{label:a(o)("works.all"),value:"all"},null,8,["label"]),r(p,{label:a(o)("works.textToVideo"),value:"text2video"},null,8,["label"]),r(p,{label:a(o)("works.imageToVideo"),value:"image2video"},null,8,["label"]),r(p,{label:a(o)("works.storyboardVideo"),value:"storyboard"},null,8,["label"])]),_:1},8,["modelValue","placeholder"]),r(k,{modelValue:I.value,"onUpdate:modelValue":t[3]||(t[3]=d=>I.value=d),placeholder:a(o)("works.resolution"),clearable:"",size:"small",style:{width:"100px"}},{default:c(()=>[r(p,{label:a(o)("works.sd"),value:"sd"},null,8,["label"]),r(p,{label:a(o)("works.hd"),value:"hd"},null,8,["label"]),r(p,{label:
|