videoDL-b3672d70.js 3.3 KB

1
  1. import{_ as e}from"./index.vue_vue_type_script_setup_true_lang-2d85d3ad.js";/* empty css *//* empty css *//* empty css *//* empty css */import{d as a,S as l,b8 as s,a4 as t,aG as r,_ as o,o as i,c as n,a as u,w as p,b as d,m,x as c,e as v,t as b,z as _,l as y,F as f,y as g,b6 as h,Z as j,a$ as x}from"./index-f181b510.js";/* empty css *//* empty css */import{b as k}from"./index-5936bc9e.js";/* empty css */import"./http-fe2c0cad.js";/* empty css *//* empty css *//* empty css */const w=o(a({components:{ElButton:l},props:{urls:{type:Array,required:!0},fileName:{type:String,default:""}},setup:e=>({download:()=>{const a=s.service({text:"正在解析视频",background:"rgba(0,0,0,.2)"});if(!e.urls.length)return void t.error("没有可下载的文件");const l=document.createElement("a");l.style.display="none",l.href="#",document.body.appendChild(l),e.urls.forEach((s=>{r.get(s.download_video_url,{responseType:"blob"}).then((t=>{l.download=`《${e.fileName}》${s.series_name}.mp4`;const r=new Blob([t.data]),o=URL.createObjectURL(r);l.href=o,l.click(),URL.revokeObjectURL(o),a.close()})).catch((e=>{console.error(e),t.error("下载失败"),a.close()}))}))}})}),[["render",function(e,a,s,t,r,o){const m=l;return i(),n("div",null,[u(m,{type:"primary",onClick:e.download},{default:p((()=>[d("下载")])),_:1},8,["onClick"])])}]]),C={class:"wrapper"},N=["src"],L={class:"video-wrapper"},U={class:"flex items-center justify-between h-10"},R={class:"w-full text-base font-medium"},V={class:"ml-2 text-lg font-bold text-dark-600"},$={key:0},E=o(a({__name:"videoDL",props:{primary:String|Number},setup(a){const l=a,s=m(),t=m([]),r=m({page:1,limit:100}),o=m([]);l.primary;const E=m({}),S=m({}),q=m([]),z=e=>{k({video_id:l.primary.id,...e}).then((e=>{o.value=e.data,E.value={limit:e.limit,total:e.total}}))},B=e=>{r.value.page=Number(e.page),z(r.value)};return c((()=>{z(r.value)})),(a,r)=>{const m=h,c=w,k=j,z=x,I=e;return i(),n(f,null,[u(m,{title:"注:如需批量下载,则多选目标集数,点击下载按钮即可",type:"warning","show-icon":"",closable:!1}),v("div",C,[(i(),n("video",{id:"my-player",style:{width:"500px"},key:S.value.public_video_url,class:"video-js",controls:"",autoplay:"",ref_key:"myVideo",ref:s},[v("source",{src:S.value.public_video_url,type:"video/mp4"},null,8,N)])),v("div",L,[v("div",U,[v("div",R,[d("剧名: "),v("span",V,b(l.primary.name),1),d(),S.value.series_name?(i(),n("span",$,"(当前播放"+b(S.value.series_name)+")",1)):_("",!0)]),t.value.length>0?(i(),y(c,{key:0,urls:q.value,fileName:l.primary.name},null,8,["urls","fileName"])):_("",!0)]),E.value.total?(i(),y(I,{key:0,meta:E.value,onChange:B},{content:p((()=>[u(z,{modelValue:t.value,"onUpdate:modelValue":r[0]||(r[0]=e=>t.value=e),size:"large",class:"flex flex-wrap items-center"},{default:p((()=>[(i(!0),n(f,null,g(o.value,((e,a)=>(i(),y(k,{border:"",class:"video-item",onChange:a=>(e=>{S.value=t.value.find((a=>a.public_video_url==e.public_video_url))??{},q.value=t.value,q.value})(e),key:a,label:e},{default:p((()=>[d(b(e.series_sequence),1)])),_:2},1032,["onChange","label"])))),128))])),_:1},8,["modelValue"])])),_:1},8,["meta"])):_("",!0)])])],64)}}}),[["__scopeId","data-v-211692ee"]]);export{E as default};