import{d as ae,a as y,bg as V,p as r,bh as Ae,k as $,s as S,v as ie,Q as Y,j as le,g as w,u as e,y as Me,bi as Oe,bj as Fe,f as F,V as $e,r as He,b as Pe,w as b,e as H,i as A,h as je,l as De,t as qe,F as Be,_ as Ee}from"./index-CfPTl27C.js";const Re=()=>{window.cancelAnimationFrame=window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||window.oCancelAnimationFrame||window.msCancelAnimationFrame||function(a){return window.clearTimeout(a)},window.requestAnimationFrame=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){return window.setTimeout(a,1e3/60)}}()},We=(a,d)=>{if(a===d)return!0;if(a.length!==d.length)return!1;for(let u=0;ue(t)<0),Z=r(()=>Math.abs(e(t))({step:1,limitMoveNum:5,hoverStop:!0,direction:"top",openTouch:!0,singleHeight:0,singleWidth:0,waitTime:1e3,switchOffset:30,autoPlay:!0,navigation:!1,switchSingleStep:134,switchDelay:400,switchDisabledClass:"disabled",isSingleRemUnit:!1})),o=r(()=>p({},e(ce),m.classOption)),ue=r(()=>e(K)?"":e(o).switchDisabledClass),fe=r(()=>e(Z)?"":e(o).switchDisabledClass),me=r(()=>({position:"absolute",margin:`${e(x)/2}px 0 0 -${e(o).switchOffset}px`,transform:"translate(-100%,-50%)"})),de=r(()=>({position:"absolute",margin:`${e(x)/2}px 0 0 ${e(h)+e(o).switchOffset}px`,transform:"translateY(-50%)"})),E=r(()=>e(o).direction!=="bottom"&&e(o).direction!=="top"),ee=r(()=>e(E)?{float:"left",overflow:"hidden"}:{overflow:"hidden"}),pe=r(()=>({transform:`translate(${e(t)}px,${e(i)}px)`,transition:`all ${B} ${e(v)}ms`,overflow:"hidden"})),R=r(()=>e(o).navigation),W=r(()=>e(R)?!1:e(o).autoPlay),te=r(()=>m.data.length>=e(o).limitMoveNum),ne=r(()=>e(o).hoverStop&&e(W)&&e(te)),z=r(()=>e(o).openTouch),oe=r(()=>e(o).isSingleRemUnit?parseInt(window.getComputedStyle(document.documentElement,null).fontSize):1),L=r(()=>e(o).singleWidth*e(oe)),N=r(()=>e(o).singleHeight*e(oe)),_=r(()=>{let n;const s=e(o).step;if(e(E)?n=e(L):n=e(N),n>0&&n%s>0)throw"如果设置了单步滚动,step需是单步大小的约数,否则无法保证单步滚动结束的位置是否准确";return s});function ve(){t.value=0,i.value=0,M(),se()}function he(){if(e(K)){if(Math.abs(e(t)){M()},g+20)):M()}function ge(n){if(!e(z)||n.targetTouches.length>1||n.scale&&n.scale!==1)return;const s=n.targetTouches[0],{direction:c}=e(o),g={x:s.pageX-D.x,y:s.pageY-D.y};n.preventDefault();const O=Math.abs(g.x)0&&(i.value=0);else if(s==="bottom"){const c=e(P)/2*-1;e(i)0&&(t.value=0);else if(s==="right"){const c=e(k)*-1;e(t){v.value=0,T()},e(v))}function Se(){e(ne)&&Te()}function ke(){e(ne)&&_e()}function T(){q||(I=requestAnimationFrame(function(){const n=e(P)/2,s=e(k)/2,{direction:c,waitTime:g}=e(o);c==="top"?(Math.abs(e(i))>=n&&(l("scrollEnd"),i.value=0),i.value-=_.value):c==="bottom"?(e(i)>=0&&(l("scrollEnd"),i.value=n*-1),i.value+=_.value):c==="left"?(Math.abs(e(t))>=s&&(l("scrollEnd"),t.value=0),t.value-=_.value):c==="right"&&(e(t)>=0&&(l("scrollEnd"),t.value=s*-1),t.value+=_.value),C&&clearTimeout(C),e(N)?Math.abs(e(i))%e(N){T()},g):T():e(L)&&Math.abs(e(t))%e(L){T()},g):T()}))}function se(){Me(()=>{const{switchDelay:n}=e(o);if(j.value="",e(E)){x.value=e(Q).offsetHeight,h.value=e(Q).offsetWidth;let s=e(G).offsetWidth;e(W)&&(s=s*2+1),e(J).style.width=s+"px",k.value=s}if(e(W))B="ease-in",v.value=0;else{B="linear",v.value=n;return}e(te)?(j.value=e(G).innerHTML,setTimeout(()=>{var s;P.value=(s=e(J))==null?void 0:s.offsetHeight,T()},0)):(M(),i.value=t.value=0)})}function _e(){q=!1,T()}function Te(){q=!0,C&&clearTimeout(C),M()}function xe(n){e(o).direction==="left"||e(o).direction==="right"||Oe(()=>{n.deltaY>0?i.value-=_.value:i.value+=_.value},50)()}return Ae(()=>{se()}),Fe(()=>{M(),clearTimeout(C)}),d({reset:ve}),(n,s)=>(F(),$("div",{ref:"wrap"+a.classOption.key},[R.value?(F(),$("div",{key:0,style:S(me.value),class:ie(ue.value),onClick:he},[Y(n.$slots,"left-switch")],6)):le("",!0),R.value?(F(),$("div",{key:1,style:S(de.value),class:ie(fe.value),onClick:we},[Y(n.$slots,"right-switch")],6)):le("",!0),w("div",{ref:"realBox"+a.classOption.key,style:S(pe.value),onMouseenter:Se,onMouseleave:ke,onTouchstartPassive:ye,onTouchmovePassive:ge,onTouchend:be,onMousewheelPassive:xe},[w("div",{ref:"slotList"+a.classOption.key,style:S(ee.value)},[Y(n.$slots,"default")],4),w("div",{style:S(ee.value),innerHTML:j.value},null,12,Le)],36)],512))}}),Ve=$e(Ne),Ye={class:"card-header"},Ie={class:"item"},Ue=["textContent"],Xe=ae({name:"SeamlessScroll",__name:"seamless-scroll",setup(a){const d=y(),u=y([{title:"无缝滚动第一行无缝滚动第一行!!!!!!!!!!"},{title:"无缝滚动第二行无缝滚动第二行!!!!!!!!!!"},{title:"无缝滚动第三行无缝滚动第三行!!!!!!!!!!"},{title:"无缝滚动第四行无缝滚动第四行!!!!!!!!!!"},{title:"无缝滚动第五行无缝滚动第五行!!!!!!!!!!"},{title:"无缝滚动第六行无缝滚动第六行!!!!!!!!!!"},{title:"无缝滚动第七行无缝滚动第七行!!!!!!!!!!"},{title:"无缝滚动第八行无缝滚动第八行!!!!!!!!!!"},{title:"无缝滚动第九行无缝滚动第九行!!!!!!!!!!"}]),f=He({direction:"top"});function p(m){e(d).reset(),e(f).direction=m}return(m,l)=>{const t=H("el-button"),i=H("el-link"),v=H("el-card"),x=H("el-space");return F(),Pe(x,{wrap:""},{default:b(()=>[A(v,{class:"box-card",shadow:"never"},{header:b(()=>[w("div",Ye,[l[4]||(l[4]=w("span",{class:"font-medium"},"无缝滚动",-1)),A(t,{class:"button",link:"",type:"primary",onClick:l[0]||(l[0]=h=>p("top"))},{default:b(()=>[w("span",{style:S({color:f.direction==="top"?"red":""})}," 向上滚动 ",4)]),_:1}),A(t,{class:"button",link:"",type:"primary",onClick:l[1]||(l[1]=h=>p("bottom"))},{default:b(()=>[w("span",{style:S({color:f.direction==="bottom"?"red":""})}," 向下滚动 ",4)]),_:1}),A(t,{class:"button",link:"",type:"primary",onClick:l[2]||(l[2]=h=>p("left"))},{default:b(()=>[w("span",{style:S({color:f.direction==="left"?"red":""})}," 向左滚动 ",4)]),_:1}),A(t,{class:"button",link:"",type:"primary",onClick:l[3]||(l[3]=h=>p("right"))},{default:b(()=>[w("span",{style:S({color:f.direction==="right"?"red":""})}," 向右滚动 ",4)]),_:1})]),A(i,{class:"mt-2",href:"https://github.com/pure-admin/vue-pure-admin/blob/main/src/views/components/seamless-scroll.vue",target:"_blank"},{default:b(()=>l[5]||(l[5]=[je(" 代码位置 src/views/components/seamless-scroll.vue ")])),_:1})]),default:b(()=>[A(e(Ve),{ref_key:"scroll",ref:d,data:u.value,"class-option":f,class:"warp"},{default:b(()=>[w("ul",Ie,[(F(!0),$(Be,null,De(u.value,(h,k)=>(F(),$("li",{key:k},[w("span",{class:"title",textContent:qe(h.title)},null,8,Ue)]))),128))])]),_:1},8,["data","class-option"])]),_:1})]),_:1})}}}),Ge=Ee(Xe,[["__scopeId","data-v-ff2abade"]]);export{Ge as default};