su-swiper.iJtkIP10.js 3.7 KB

1
  1. import{v as e,c as t,a,b as i,e as l,d as s,w as r,f as u,L as o,n as d,x as n,F as c,y as p,u as g,s as y,z as m,g as f,j as h,a9 as v,aU as _,k as b,i as S,ay as w,ax as k}from"./index-DNuNVpwk.js";import{_ as x}from"./mp-html.vue_vue_type_style_index_0_scoped_b0aa647f_lang.DLRgampy.js";import{_ as P}from"./_plugin-vue_export-helper.BCo6x5W8.js";const H=P({__name:"su-swiper",props:{circular:{type:Boolean,default:!0},autoplay:{type:Boolean,default:!1},interval:{type:Number,default:3e3},duration:{type:Number,default:500},mode:{type:String,default:"default"},imageMode:{type:String,default:"scaleToFill"},list:{type:Array,default:()=>[]},dotStyle:{type:String,default:"long"},dotCur:{type:String,default:"ss-bg-opactity-block"},bg:{type:String,default:"bg-none"},height:{type:Number,default:0},imgHeight:{type:Number,default:0},imgTopRadius:{type:Number,default:0},imgBottomRadius:{type:Number,default:0},isPreview:{type:Boolean,default:!1},seizeHeight:{type:Number,default:200}},setup(P){const H=e({imgHeight:0,cur:0,moveX:0,videoPlaySataus:!1,heightList:[]}),T=e({videoRef:{}}),N=P,C=e=>{"touch"!==e.detail.source&&"autoplay"!==e.detail.source||(H.cur=e.detail.current,H.videoPlaySataus=!1,"video"===N.list[H.cur].type&&T.videoRef[`video_${H.cur}`].pausePlay())},$=()=>{if(!N.isPreview)return;let e=v.clone(N.list);e.forEach(((t,a)=>{"video"===t.type&&e.splice(a,1)})),_({urls:e.length<1?[N.src]:e.reduce(((e,t)=>(e.push(t.src),e)),[]),current:H.cur})},z=e=>{},R=e=>{H.moveX=0},X=e=>{N.list[H.cur].currentTime=e.detail.currentTime},j=t((()=>{let e;return 0!==N.height&&(e=N.height),0===N.height&&(0!==H.imgHeight?e=H.imgHeight:0!==N.seizeHeight&&(e=N.seizeHeight)),{height:e+"rpx"}}));function B(e){if(0===N.height){let t=e.detail.height/e.detail.width*750;H.imgHeight<t&&(H.imgHeight=t)}}return(e,t)=>{const v=b,_=a(i("su-video"),x),L=S,A=w,F=k;return l(),s(L,null,{default:r((()=>[u(L,{class:o(["ui-swiper",[N.mode,N.bg,N.ui]])},{default:r((()=>[u(F,{circular:N.circular,current:H.cur,autoplay:N.autoplay&&!H.videoPlaySataus,interval:N.interval,duration:N.duration,onTransition:z,onAnimationfinish:R,style:d(j.value),onChange:C},{default:r((()=>[(l(!0),n(c,null,p(N.list,((e,t)=>(l(),s(A,{class:o(["swiper-item",{cur:H.cur==t}]),key:t,onClick:t=>(e=>{"video"===e.type?H.videoPlaySataus=!0:(e.urlParams&&e.urlParams.title?y.$router.go(e.url,{title:e.urlParams.title}):y.$router.go(e.url),$())})(e)},{default:r((()=>[u(L,{class:"ui-swiper-main"},{default:r((()=>["image"===e.type?(l(),s(v,{key:0,class:"swiper-image",mode:N.imageMode,src:e.src,width:"100%",height:"100%",onLoad:B},null,8,["mode","src"])):(l(),s(_,{key:1,ref_for:!0,ref:e=>T.videoRef[`video_${t}`]=e,poster:g(y).$url.cdn(e.poster),src:g(y).$url.cdn(e.src),index:t,moveX:H.moveX,initialTime:e.currentTime||0,height:P.seizeHeight,onVideoTimeupdate:X},null,8,["poster","src","index","moveX","initialTime","height"]))])),_:2},1024)])),_:2},1032,["class","onClick"])))),128))])),_:1},8,["circular","current","autoplay","interval","duration","style"]),H.videoPlaySataus?m("",!0):(l(),n(c,{key:0},["tag"!=N.dotStyle?(l(),s(L,{key:0,class:o(["ui-swiper-dot",N.dotStyle])},{default:r((()=>[(l(!0),n(c,null,p(N.list,((e,t)=>(l(),s(L,{class:o(["line-box",[H.cur==t?"cur":"",N.dotCur]]),key:t},null,8,["class"])))),128))])),_:1},8,["class"])):m("",!0),"tag"==N.dotStyle?(l(),s(L,{key:1,class:o(["ui-swiper-dot",N.dotStyle])},{default:r((()=>[u(L,{class:o(["ui-tag radius-lg",[N.dotCur]]),style:{"pointer-events":"none",padding:"0 10rpx"}},{default:r((()=>[u(L,{style:{transform:"scale(0.7)"}},{default:r((()=>[f(h(H.cur+1)+" / "+h(N.list.length),1)])),_:1})])),_:1},8,["class"])])),_:1},8,["class"])):m("",!0)],64))])),_:1},8,["class"])])),_:1})}}},[["__scopeId","data-v-4535a83c"]]);export{H as _};