PageSourceSearch

https://statics.piclumen.com/app-1790217403140/_nuxt/BlkLiUnJ.js

js piclumen.com collected 2026-09-24 09:44:40 UTC 3,703 bytes, 1 lines download raw bytes

1import{_ as e}from"./Bx1xfRBz.js";import{w as t,r as a,f as n,a5 as l,a4 as o,j as u,c as s,o as i,a as r,e as v,l as c,P as d,S as p,I as m,K as h}from"./CmUz1GCm.js";const f={class:"infinite-slider"},g=e({__name:"Slider",props:{options:{type:Array,required:!0,default:()=>[]},autoplay:{type:Boolean,default:!0},interval:{type:Number,default:5e3},duration:{type:Number,default:500}},emits:["change"],setup(e,{expose:g,emit:y}){const x=e,$=a(0),T=a(!1);let b=null;const k=a(!1);let q=null;const A=y,w=c((()=>{const e=x.options.length;if(e<=1)return{prev:[],next:[]};if(1===e)return{prev:[],next:[]};return{prev:[x.options[e-1]],next:[x.options[0]]}})),F=c((()=>w.value.prev.length+x.options.length+w.value.next.length)),M=c((()=>{const e=w.value.prev.length;return 100*-(($.value+e)/F.value)})),S=c((()=>({transform:`translateX(${M.value}%)`,transition:T.value?`transform ${x.duration}ms ease`:"none",display:"flex",width:100*F.value+"%"}))),X=()=>{if(x.options.length<=1)return;T.value=!0;const e=$.value+1;e<x.options.length?$.value=e:$.value=x.options.length;const t=x.duration,a=performance.now(),n=e=>{e-a<t?q=requestAnimationFrame(n):(q=null,j())};q=requestAnimationFrame(n)},_=()=>{if(x.options.length<=1)return;T.value=!0;const e=$.value-1;$.value=e>=0?e:-1;const t=x.duration,a=performance.now(),n=e=>{e-a<t?q=requestAnimationFrame(n):(q=null,j())};q=requestAnimationFrame(n)},j=()=>{const e=x.options.length;$.value>=e?(T.value=!1,$.value=0):$.value<0?(T.value=!1,$.value=e-1):T.value=!1,q&&(cancelAnimationFrame(q),q=null),A("change",$.value)},C=a(0),I=a(0),N=a(0),Y=a(!1),z=e=>{if(x.options.length<=1)return;const t=e.touches[0];C.value=t.clientX,I.value=t.clientY,N.value=t.clientX,Y.value=!0,k.value=!0,T.value&&(T.value=!1)},B=e=>{if(!Y.value||x.options.length<=1)return;const t=e.touches[0],a=t.clientX,n=t.clientY,l=Math.abs(a-C.value),o=Math.abs(n-I.value);if(o>1.5*l&&o>15)return void(Y.value=!1);N.value=a;const u=(a-C.value)/window.innerWidth*100,s=w.value.prev.length,i=-($.value+s)*(100/F.value)+u/F.value,r=document.querySelector(".slider-track");r&&(r.style.transition="none",r.style.transform=`translateX(${i}%)`)},K=()=>{if(!Y.value||x.options.length<=1)return void(Y.value=!1);const e=N.value-C.value,t=document.querySelector(".slider-track");t&&(t.style.transition=`transform ${x.duration}ms cubic-bezier(0.25, 0.1, 0.25, 1)`),Math.abs(e)>10?e>0?_():X():(T.value=!0,setTimeout((()=>{T.value=!1}),x.duration)),Y.value=!1,setTimeout((()=>{k.value=!1}),x.duration)},P=()=>{b&&(clearTimeout(b),b=null),q&&(cancelAnimationFrame(q),q=null)},W=()=>{if(!x.autoplay||x.options.length<=1)return;P();const e=()=>{k.value||T.value||X(),b=setTimeout(e,x.interval)};b=setTimeout(e,x.interval)},D=()=>{k.value=!0},E=()=>{k.value=!1};return t((()=>x.options),(e=>{$.value=0,T.value=!1}),{deep:!1}),n(W),l(W),o(P),u(P),g({next:X,prev:_,goTo:e=>{e>=0&&e<x.options.length&&(T.value=!0,$.value=e,A("change",$.value))}}),(e,t)=>(i(),s("div",f,[r("div",{class:"slider-track",style:h(S.value),onTouchstart:z,onTouchmove:B,onTouchend:K,onMouseenter:D,onMouseleave:E},[w.value.prev.length?(i(!0),s(d,{key:0},p(w.value.prev,((t,a)=>(i(),s("div",{class:"slider-item clone-prev",key:`prev-${a}`},[m(e.$slots,"default",{item:t,index:a,isClone:!0},void 0,!0)])))),128)):v("",!0),(i(!0),s(d,null,p(x.options,((t,a)=>(i(),s("div",{class:"slider-item",key:`real-${a}`},[m(e.$slots,"default",{item:t,index:a,isClone:!1},void 0,!0)])))),128)),w.value.next.length?(i(!0),s(d,{key:1},p(w.value.next,((t,a)=>(i(),s("div",{class:"slider-item clone-next",key:`next-${a}`},[m(e.$slots,"default",{item:t,index:a,isClone:!0},void 0,!0)])))),128)):v("",!0)],36)]))}},[["__scopeId","data-v-5ffb34ec"]]);export{g as S};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.