@gem-sdk/swiper 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -0
- package/README.md +11 -0
- package/modules/a11y-element.css +9 -0
- package/modules/a11y-element.min.css +1 -0
- package/modules/a11y.css +9 -0
- package/modules/a11y.less +9 -0
- package/modules/a11y.min.css +1 -0
- package/modules/a11y.min.mjs +2 -0
- package/modules/a11y.min.mjs.map +1 -0
- package/modules/a11y.mjs +377 -0
- package/modules/a11y.scss +9 -0
- package/modules/autoplay-element.css +0 -0
- package/modules/autoplay-element.min.css +0 -0
- package/modules/autoplay.css +0 -0
- package/modules/autoplay.less +0 -0
- package/modules/autoplay.min.css +0 -0
- package/modules/autoplay.min.mjs +2 -0
- package/modules/autoplay.min.mjs.map +1 -0
- package/modules/autoplay.mjs +304 -0
- package/modules/autoplay.scss +0 -0
- package/modules/controller-element.css +0 -0
- package/modules/controller-element.min.css +0 -0
- package/modules/controller.css +0 -0
- package/modules/controller.less +0 -0
- package/modules/controller.min.css +0 -0
- package/modules/controller.min.mjs +2 -0
- package/modules/controller.min.mjs.map +1 -0
- package/modules/controller.mjs +191 -0
- package/modules/controller.scss +0 -0
- package/modules/effect-cards-element.css +9 -0
- package/modules/effect-cards-element.min.css +1 -0
- package/modules/effect-cards.css +9 -0
- package/modules/effect-cards.less +10 -0
- package/modules/effect-cards.min.css +1 -0
- package/modules/effect-cards.min.mjs +2 -0
- package/modules/effect-cards.min.mjs.map +1 -0
- package/modules/effect-cards.mjs +128 -0
- package/modules/effect-cards.scss +10 -0
- package/modules/effect-coverflow-element.css +0 -0
- package/modules/effect-coverflow-element.min.css +0 -0
- package/modules/effect-coverflow.css +0 -0
- package/modules/effect-coverflow.less +2 -0
- package/modules/effect-coverflow.min.css +0 -0
- package/modules/effect-coverflow.min.mjs +2 -0
- package/modules/effect-coverflow.min.mjs.map +1 -0
- package/modules/effect-coverflow.mjs +104 -0
- package/modules/effect-coverflow.scss +2 -0
- package/modules/effect-creative-element.css +6 -0
- package/modules/effect-creative-element.min.css +1 -0
- package/modules/effect-creative.css +6 -0
- package/modules/effect-creative.less +7 -0
- package/modules/effect-creative.min.css +1 -0
- package/modules/effect-creative.min.mjs +2 -0
- package/modules/effect-creative.min.mjs.map +1 -0
- package/modules/effect-creative.mjs +146 -0
- package/modules/effect-creative.scss +7 -0
- package/modules/effect-cube-element.css +53 -0
- package/modules/effect-cube-element.min.css +1 -0
- package/modules/effect-cube.css +62 -0
- package/modules/effect-cube.less +71 -0
- package/modules/effect-cube.min.css +1 -0
- package/modules/effect-cube.min.mjs +2 -0
- package/modules/effect-cube.min.mjs.map +1 -0
- package/modules/effect-cube.mjs +174 -0
- package/modules/effect-cube.scss +71 -0
- package/modules/effect-fade-element.css +16 -0
- package/modules/effect-fade-element.min.css +1 -0
- package/modules/effect-fade.css +16 -0
- package/modules/effect-fade.less +20 -0
- package/modules/effect-fade.min.css +1 -0
- package/modules/effect-fade.min.mjs +2 -0
- package/modules/effect-fade.min.mjs.map +1 -0
- package/modules/effect-fade.mjs +66 -0
- package/modules/effect-fade.scss +20 -0
- package/modules/effect-flip-element.css +17 -0
- package/modules/effect-flip-element.min.css +1 -0
- package/modules/effect-flip.css +26 -0
- package/modules/effect-flip.less +30 -0
- package/modules/effect-flip.min.css +1 -0
- package/modules/effect-flip.min.mjs +2 -0
- package/modules/effect-flip.min.mjs.map +1 -0
- package/modules/effect-flip.mjs +111 -0
- package/modules/effect-flip.scss +30 -0
- package/modules/free-mode-element.css +4 -0
- package/modules/free-mode-element.min.css +1 -0
- package/modules/free-mode.css +4 -0
- package/modules/free-mode.less +4 -0
- package/modules/free-mode.min.css +1 -0
- package/modules/free-mode.min.mjs +2 -0
- package/modules/free-mode.min.mjs.map +1 -0
- package/modules/free-mode.mjs +237 -0
- package/modules/free-mode.scss +4 -0
- package/modules/grid-element.css +7 -0
- package/modules/grid-element.min.css +1 -0
- package/modules/grid.css +7 -0
- package/modules/grid.less +7 -0
- package/modules/grid.min.css +1 -0
- package/modules/grid.min.mjs +2 -0
- package/modules/grid.min.mjs.map +1 -0
- package/modules/grid.mjs +155 -0
- package/modules/grid.scss +7 -0
- package/modules/hash-navigation-element.css +0 -0
- package/modules/hash-navigation-element.min.css +0 -0
- package/modules/hash-navigation.css +0 -0
- package/modules/hash-navigation.less +2 -0
- package/modules/hash-navigation.min.css +0 -0
- package/modules/hash-navigation.min.mjs +2 -0
- package/modules/hash-navigation.min.mjs.map +1 -0
- package/modules/hash-navigation.mjs +93 -0
- package/modules/hash-navigation.scss +0 -0
- package/modules/history-element.css +0 -0
- package/modules/history-element.min.css +0 -0
- package/modules/history.css +0 -0
- package/modules/history.less +0 -0
- package/modules/history.min.css +0 -0
- package/modules/history.min.mjs +2 -0
- package/modules/history.min.mjs.map +1 -0
- package/modules/history.mjs +142 -0
- package/modules/history.scss +0 -0
- package/modules/index.min.mjs +2 -0
- package/modules/index.min.mjs.map +1 -0
- package/modules/index.mjs +23 -0
- package/modules/keyboard-element.css +0 -0
- package/modules/keyboard-element.min.css +0 -0
- package/modules/keyboard.css +0 -0
- package/modules/keyboard.less +0 -0
- package/modules/keyboard.min.css +0 -0
- package/modules/keyboard.min.mjs +2 -0
- package/modules/keyboard.min.mjs.map +1 -0
- package/modules/keyboard.mjs +117 -0
- package/modules/keyboard.scss +0 -0
- package/modules/manipulation-element.css +0 -0
- package/modules/manipulation-element.min.css +0 -0
- package/modules/manipulation.css +0 -0
- package/modules/manipulation.less +0 -0
- package/modules/manipulation.min.css +0 -0
- package/modules/manipulation.min.mjs +2 -0
- package/modules/manipulation.min.mjs.map +1 -0
- package/modules/manipulation.mjs +193 -0
- package/modules/manipulation.scss +0 -0
- package/modules/mousewheel-element.css +0 -0
- package/modules/mousewheel-element.min.css +0 -0
- package/modules/mousewheel.css +0 -0
- package/modules/mousewheel.less +0 -0
- package/modules/mousewheel.min.css +0 -0
- package/modules/mousewheel.min.mjs +2 -0
- package/modules/mousewheel.min.mjs.map +1 -0
- package/modules/mousewheel.mjs +395 -0
- package/modules/mousewheel.scss +0 -0
- package/modules/navigation-element.css +63 -0
- package/modules/navigation-element.min.css +1 -0
- package/modules/navigation.css +86 -0
- package/modules/navigation.less +86 -0
- package/modules/navigation.min.css +1 -0
- package/modules/navigation.min.mjs +2 -0
- package/modules/navigation.min.mjs.map +1 -0
- package/modules/navigation.mjs +200 -0
- package/modules/navigation.scss +87 -0
- package/modules/pagination-element.css +184 -0
- package/modules/pagination-element.min.css +1 -0
- package/modules/pagination.css +184 -0
- package/modules/pagination.less +187 -0
- package/modules/pagination.min.css +1 -0
- package/modules/pagination.min.mjs +2 -0
- package/modules/pagination.min.mjs.map +1 -0
- package/modules/pagination.mjs +467 -0
- package/modules/pagination.scss +188 -0
- package/modules/parallax-element.css +0 -0
- package/modules/parallax-element.min.css +0 -0
- package/modules/parallax.css +0 -0
- package/modules/parallax.less +0 -0
- package/modules/parallax.min.css +0 -0
- package/modules/parallax.min.mjs +2 -0
- package/modules/parallax.min.mjs.map +1 -0
- package/modules/parallax.mjs +124 -0
- package/modules/parallax.scss +0 -0
- package/modules/scrollbar-element.css +58 -0
- package/modules/scrollbar-element.min.css +1 -0
- package/modules/scrollbar.css +58 -0
- package/modules/scrollbar.less +59 -0
- package/modules/scrollbar.min.css +1 -0
- package/modules/scrollbar.min.mjs +2 -0
- package/modules/scrollbar.min.mjs.map +1 -0
- package/modules/scrollbar.mjs +366 -0
- package/modules/scrollbar.scss +61 -0
- package/modules/thumbs-element.css +0 -0
- package/modules/thumbs-element.min.css +0 -0
- package/modules/thumbs.css +0 -0
- package/modules/thumbs.less +5 -0
- package/modules/thumbs.min.css +0 -0
- package/modules/thumbs.min.mjs +2 -0
- package/modules/thumbs.min.mjs.map +1 -0
- package/modules/thumbs.mjs +197 -0
- package/modules/thumbs.scss +5 -0
- package/modules/virtual-element.css +19 -0
- package/modules/virtual-element.min.css +1 -0
- package/modules/virtual.css +19 -0
- package/modules/virtual.less +26 -0
- package/modules/virtual.min.css +1 -0
- package/modules/virtual.min.mjs +2 -0
- package/modules/virtual.min.mjs.map +1 -0
- package/modules/virtual.mjs +349 -0
- package/modules/virtual.scss +26 -0
- package/modules/zoom-element.css +5 -0
- package/modules/zoom-element.min.css +1 -0
- package/modules/zoom.css +21 -0
- package/modules/zoom.less +23 -0
- package/modules/zoom.min.css +1 -0
- package/modules/zoom.min.mjs +2 -0
- package/modules/zoom.min.mjs.map +1 -0
- package/modules/zoom.mjs +701 -0
- package/modules/zoom.scss +21 -0
- package/package.json +213 -0
- package/shared/classes-to-selector.min.mjs +2 -0
- package/shared/classes-to-selector.min.mjs.map +1 -0
- package/shared/classes-to-selector.mjs +9 -0
- package/shared/create-element-if-not-defined.min.mjs +2 -0
- package/shared/create-element-if-not-defined.min.mjs.map +1 -0
- package/shared/create-element-if-not-defined.mjs +21 -0
- package/shared/create-shadow.min.mjs +2 -0
- package/shared/create-shadow.min.mjs.map +1 -0
- package/shared/create-shadow.mjs +14 -0
- package/shared/effect-init.min.mjs +2 -0
- package/shared/effect-init.min.mjs.map +1 -0
- package/shared/effect-init.mjs +58 -0
- package/shared/effect-target.min.mjs +2 -0
- package/shared/effect-target.min.mjs.map +1 -0
- package/shared/effect-target.mjs +12 -0
- package/shared/effect-virtual-transition-end.min.mjs +2 -0
- package/shared/effect-virtual-transition-end.min.mjs.map +1 -0
- package/shared/effect-virtual-transition-end.mjs +48 -0
- package/shared/get-element-params.min.mjs +2 -0
- package/shared/get-element-params.min.mjs.map +1 -0
- package/shared/get-element-params.mjs +113 -0
- package/shared/ssr-window.esm.min.mjs +2 -0
- package/shared/ssr-window.esm.min.mjs.map +1 -0
- package/shared/ssr-window.esm.mjs +146 -0
- package/shared/swiper-core.min.mjs +2 -0
- package/shared/swiper-core.min.mjs.map +1 -0
- package/shared/swiper-core.mjs +3969 -0
- package/shared/update-on-virtual-data.min.mjs +2 -0
- package/shared/update-on-virtual-data.min.mjs.map +1 -0
- package/shared/update-on-virtual-data.mjs +131 -0
- package/shared/update-swiper.min.mjs +2 -0
- package/shared/update-swiper.min.mjs.map +1 -0
- package/shared/update-swiper.mjs +238 -0
- package/shared/utils.min.mjs +2 -0
- package/shared/utils.min.mjs.map +1 -0
- package/shared/utils.mjs +343 -0
- package/swiper-bundle.css +735 -0
- package/swiper-bundle.js +9870 -0
- package/swiper-bundle.min.css +13 -0
- package/swiper-bundle.min.js +14 -0
- package/swiper-bundle.min.js.map +1 -0
- package/swiper-bundle.min.mjs +14 -0
- package/swiper-bundle.min.mjs.map +1 -0
- package/swiper-bundle.mjs +42 -0
- package/swiper-effect-utils.d.ts +28 -0
- package/swiper-effect-utils.min.mjs +14 -0
- package/swiper-effect-utils.min.mjs.map +1 -0
- package/swiper-effect-utils.mjs +17 -0
- package/swiper-element-bundle.js +10477 -0
- package/swiper-element-bundle.min.js +14 -0
- package/swiper-element-bundle.min.js.map +1 -0
- package/swiper-element-bundle.min.mjs +14 -0
- package/swiper-element-bundle.min.mjs.map +1 -0
- package/swiper-element-bundle.mjs +288 -0
- package/swiper-element.d.ts +444 -0
- package/swiper-element.js +5037 -0
- package/swiper-element.min.js +14 -0
- package/swiper-element.min.js.map +1 -0
- package/swiper-element.min.mjs +14 -0
- package/swiper-element.min.mjs.map +1 -0
- package/swiper-element.mjs +287 -0
- package/swiper-react.d.ts +501 -0
- package/swiper-react.mjs +394 -0
- package/swiper-vars.less +1 -0
- package/swiper-vars.scss +1 -0
- package/swiper-vue.d.ts +866 -0
- package/swiper-vue.mjs +838 -0
- package/swiper.css +228 -0
- package/swiper.d.ts +5 -0
- package/swiper.js +4418 -0
- package/swiper.less +251 -0
- package/swiper.min.css +13 -0
- package/swiper.min.js +14 -0
- package/swiper.min.js.map +1 -0
- package/swiper.min.mjs +14 -0
- package/swiper.min.mjs.map +1 -0
- package/swiper.mjs +13 -0
- package/swiper.scss +252 -0
- package/types/index.d.ts +6 -0
- package/types/modules/a11y.d.ts +110 -0
- package/types/modules/autoplay.d.ts +133 -0
- package/types/modules/controller.d.ts +35 -0
- package/types/modules/effect-cards.d.ts +33 -0
- package/types/modules/effect-coverflow.d.ts +45 -0
- package/types/modules/effect-creative.d.ts +86 -0
- package/types/modules/effect-cube.d.ts +30 -0
- package/types/modules/effect-fade.d.ts +12 -0
- package/types/modules/effect-flip.d.ts +18 -0
- package/types/modules/free-mode.d.ts +64 -0
- package/types/modules/grid.d.ts +21 -0
- package/types/modules/hash-navigation.d.ts +38 -0
- package/types/modules/history.d.ts +43 -0
- package/types/modules/index.d.ts +51 -0
- package/types/modules/keyboard.d.ts +46 -0
- package/types/modules/manipulation.d.ts +70 -0
- package/types/modules/mousewheel.d.ts +86 -0
- package/types/modules/navigation.d.ts +105 -0
- package/types/modules/pagination.d.ts +307 -0
- package/types/modules/parallax.d.ts +12 -0
- package/types/modules/public-api.d.ts +23 -0
- package/types/modules/scrollbar.d.ts +140 -0
- package/types/modules/thumbs.d.ts +54 -0
- package/types/modules/virtual.d.ts +135 -0
- package/types/modules/zoom.d.ts +91 -0
- package/types/shared.d.ts +13 -0
- package/types/swiper-class.d.ts +522 -0
- package/types/swiper-events.d.ts +359 -0
- package/types/swiper-options.d.ts +1217 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
.swiper-virtual .swiper-slide {
|
|
2
|
+
-webkit-backface-visibility: hidden;
|
|
3
|
+
transform: translateZ(0);
|
|
4
|
+
}
|
|
5
|
+
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
|
|
6
|
+
content: '';
|
|
7
|
+
position: absolute;
|
|
8
|
+
left: 0;
|
|
9
|
+
top: 0;
|
|
10
|
+
pointer-events: none;
|
|
11
|
+
}
|
|
12
|
+
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
|
|
13
|
+
height: 1px;
|
|
14
|
+
width: var(--swiper-virtual-size);
|
|
15
|
+
}
|
|
16
|
+
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
|
|
17
|
+
width: 1px;
|
|
18
|
+
height: var(--swiper-virtual-size);
|
|
19
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
.swiper-virtual .swiper-slide {
|
|
2
|
+
-webkit-backface-visibility: hidden;
|
|
3
|
+
transform: translateZ(0);
|
|
4
|
+
}
|
|
5
|
+
.swiper-virtual.swiper-css-mode {
|
|
6
|
+
.swiper-wrapper::after {
|
|
7
|
+
content: '';
|
|
8
|
+
position: absolute;
|
|
9
|
+
left: 0;
|
|
10
|
+
top: 0;
|
|
11
|
+
pointer-events: none;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
.swiper-virtual.swiper-css-mode.swiper-horizontal {
|
|
15
|
+
.swiper-wrapper::after {
|
|
16
|
+
height: 1px;
|
|
17
|
+
width: var(--swiper-virtual-size);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.swiper-virtual.swiper-css-mode.swiper-vertical {
|
|
22
|
+
.swiper-wrapper::after {
|
|
23
|
+
width: 1px;
|
|
24
|
+
height: var(--swiper-virtual-size);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{g as getDocument}from"../shared/ssr-window.esm.min.mjs";import{a as setCSSProperty,e as elementChildren,s as setInnerHTML,c as createElement}from"../shared/utils.min.mjs";function Virtual(e){let s,{swiper:t,extendParams:r,on:i,emit:a}=e;r({virtual:{enabled:!1,slides:[],cache:!0,renderSlide:null,renderExternal:null,renderExternalUpdate:!0,addSlidesBefore:0,addSlidesAfter:0}});const l=getDocument();t.virtual={cache:{},from:void 0,to:void 0,slides:[],offset:0,slidesGrid:[]};const d=l.createElement("div");function n(e,s){const r=t.params.virtual;if(r.cache&&t.virtual.cache[s])return t.virtual.cache[s];let i;return r.renderSlide?(i=r.renderSlide.call(t,e,s),"string"==typeof i&&(setInnerHTML(d,i),i=d.children[0])):i=t.isElement?createElement("swiper-slide"):createElement("div",t.params.slideClass),i.setAttribute("data-swiper-slide-index",s),r.renderSlide||setInnerHTML(i,e),r.cache&&(t.virtual.cache[s]=i),i}function c(e,s,r){const{slidesPerView:i,slidesPerGroup:l,centeredSlides:d,loop:c,initialSlide:o}=t.params;if(s&&!c&&o>0)return;const{addSlidesBefore:u,addSlidesAfter:p}=t.params.virtual,{from:h,to:f,slides:v,slidesGrid:m,offset:g}=t.virtual;t.params.cssMode||t.updateActiveIndex();const E=void 0===r?t.activeIndex||0:r;let x,w,S;x=t.rtlTranslate?"right":t.isHorizontal()?"left":"top",d?(w=Math.floor(i/2)+l+p,S=Math.floor(i/2)+l+u):(w=i+(l-1)+p,S=(c?i:l)+u);let b=E-S,A=E+w;c||(b=Math.max(b,0),A=Math.min(A,v.length-1));let M=(t.slidesGrid[b]||0)-(t.slidesGrid[0]||0);function y(){t.updateSlides(),t.updateProgress(),t.updateSlidesClasses(),a("virtualUpdate")}if(c&&E>=S?(b-=S,d||(M+=t.slidesGrid[0])):c&&E<S&&(b=-S,d&&(M+=t.slidesGrid[0])),Object.assign(t.virtual,{from:b,to:A,offset:M,slidesGrid:t.slidesGrid,slidesBefore:S,slidesAfter:w}),h===b&&f===A&&!e)return t.slidesGrid!==m&&M!==g&&t.slides.forEach((e=>{e.style[x]=M-Math.abs(t.cssOverflowAdjustment())+"px"})),t.updateProgress(),void a("virtualUpdate");if(t.params.virtual.renderExternal)return t.params.virtual.renderExternal.call(t,{offset:M,from:b,to:A,slides:function(){const e=[];for(let s=b;s<=A;s+=1)e.push(v[s]);return e}()}),void(t.params.virtual.renderExternalUpdate?y():a("virtualUpdate"));const P=[],j=[],C=e=>{let s=e;return e<0?s=v.length+e:s>=v.length&&(s-=v.length),s};if(e)t.slides.filter((e=>e.matches(`.${t.params.slideClass}, swiper-slide`))).forEach((e=>{e.remove()}));else for(let e=h;e<=f;e+=1)if(e<b||e>A){const s=C(e);t.slides.filter((e=>e.matches(`.${t.params.slideClass}[data-swiper-slide-index="${s}"], swiper-slide[data-swiper-slide-index="${s}"]`))).forEach((e=>{e.remove()}))}const G=c?-v.length:0,I=c?2*v.length:v.length;for(let s=G;s<I;s+=1)if(s>=b&&s<=A){const t=C(s);void 0===f||e?j.push(t):(s>f&&j.push(t),s<h&&P.push(t))}if(j.forEach((e=>{t.slidesEl.append(n(v[e],e))})),c)for(let e=P.length-1;e>=0;e-=1){const s=P[e];t.slidesEl.prepend(n(v[s],s))}else P.sort(((e,s)=>s-e)),P.forEach((e=>{t.slidesEl.prepend(n(v[e],e))}));elementChildren(t.slidesEl,".swiper-slide, swiper-slide").forEach((e=>{e.style[x]=M-Math.abs(t.cssOverflowAdjustment())+"px"})),y()}i("beforeInit",(()=>{if(!t.params.virtual.enabled)return;let e;if(void 0===t.passedParams.virtual.slides){const s=[...t.slidesEl.children].filter((e=>e.matches(`.${t.params.slideClass}, swiper-slide`)));s&&s.length&&(t.virtual.slides=[...s],e=!0,s.forEach(((e,s)=>{e.setAttribute("data-swiper-slide-index",s),t.virtual.cache[s]=e,e.remove()})))}e||(t.virtual.slides=t.params.virtual.slides),t.classNames.push(`${t.params.containerModifierClass}virtual`),t.params.watchSlidesProgress=!0,t.originalParams.watchSlidesProgress=!0,c(!1,!0)})),i("setTranslate",(()=>{t.params.virtual.enabled&&(t.params.cssMode&&!t._immediateVirtual?(clearTimeout(s),s=setTimeout((()=>{c()}),100)):c())})),i("init update resize",(()=>{t.params.virtual.enabled&&t.params.cssMode&&setCSSProperty(t.wrapperEl,"--swiper-virtual-size",`${t.virtualSize}px`)})),Object.assign(t.virtual,{appendSlide:function(e){if("object"==typeof e&&"length"in e)for(let s=0;s<e.length;s+=1)e[s]&&t.virtual.slides.push(e[s]);else t.virtual.slides.push(e);c(!0)},prependSlide:function(e){const s=t.activeIndex;let r=s+1,i=1;if(Array.isArray(e)){for(let s=0;s<e.length;s+=1)e[s]&&t.virtual.slides.unshift(e[s]);r=s+e.length,i=e.length}else t.virtual.slides.unshift(e);if(t.params.virtual.cache){const e=t.virtual.cache,s={};Object.keys(e).forEach((t=>{const r=e[t],a=r.getAttribute("data-swiper-slide-index");a&&r.setAttribute("data-swiper-slide-index",parseInt(a,10)+i),s[parseInt(t,10)+i]=r})),t.virtual.cache=s}c(!0),t.slideTo(r,0)},removeSlide:function(e){if(null==e)return;let s=t.activeIndex;if(Array.isArray(e))for(let r=e.length-1;r>=0;r-=1)t.params.virtual.cache&&(delete t.virtual.cache[e[r]],Object.keys(t.virtual.cache).forEach((s=>{s>e&&(t.virtual.cache[s-1]=t.virtual.cache[s],t.virtual.cache[s-1].setAttribute("data-swiper-slide-index",s-1),delete t.virtual.cache[s])}))),t.virtual.slides.splice(e[r],1),e[r]<s&&(s-=1),s=Math.max(s,0);else t.params.virtual.cache&&(delete t.virtual.cache[e],Object.keys(t.virtual.cache).forEach((s=>{s>e&&(t.virtual.cache[s-1]=t.virtual.cache[s],t.virtual.cache[s-1].setAttribute("data-swiper-slide-index",s-1),delete t.virtual.cache[s])}))),t.virtual.slides.splice(e,1),e<s&&(s-=1),s=Math.max(s,0);c(!0),t.slideTo(s,0)},removeAllSlides:function(){t.virtual.slides=[],t.params.virtual.cache&&(t.virtual.cache={}),c(!0),t.slideTo(0,0)},update:c})}export{Virtual as default};
|
|
2
|
+
//# sourceMappingURL=virtual.min.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"virtual.mjs.mjs","names":["getDocument","setCSSProperty","elementChildren","setInnerHTML","createElement","Virtual","_ref","cssModeTimeout","swiper","extendParams","on","emit","virtual","enabled","slides","cache","renderSlide","renderExternal","renderExternalUpdate","addSlidesBefore","addSlidesAfter","document","from","undefined","to","offset","slidesGrid","tempDOM","slide","index","params","slideEl","call","children","isElement","slideClass","setAttribute","update","force","beforeInit","forceActiveIndex","slidesPerView","slidesPerGroup","centeredSlides","loop","isLoop","initialSlide","previousFrom","previousTo","previousSlidesGrid","previousOffset","cssMode","updateActiveIndex","activeIndex","offsetProp","slidesAfter","slidesBefore","rtlTranslate","isHorizontal","Math","floor","max","min","length","onRendered","updateSlides","updateProgress","updateSlidesClasses","Object","assign","forEach","style","abs","cssOverflowAdjustment","slidesToRender","i","push","prependIndexes","appendIndexes","getSlideIndex","slideIndex","filter","el","matches","remove","loopFrom","loopTo","slidesEl","append","prepend","sort","a","b","domSlidesAssigned","passedParams","classNames","containerModifierClass","watchSlidesProgress","originalParams","_immediateVirtual","clearTimeout","setTimeout","wrapperEl","virtualSize","appendSlide","prependSlide","newActiveIndex","numberOfNewSlides","Array","isArray","unshift","newCache","keys","cachedIndex","cachedEl","cachedElIndex","getAttribute","parseInt","slideTo","removeSlide","slidesIndexes","key","splice","removeAllSlides"],"sources":["0"],"mappings":"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"}
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
import { g as getDocument } from '../shared/ssr-window.esm.mjs';
|
|
2
|
+
import { a as setCSSProperty, e as elementChildren, s as setInnerHTML, c as createElement } from '../shared/utils.mjs';
|
|
3
|
+
|
|
4
|
+
function Virtual(_ref) {
|
|
5
|
+
let {
|
|
6
|
+
swiper,
|
|
7
|
+
extendParams,
|
|
8
|
+
on,
|
|
9
|
+
emit
|
|
10
|
+
} = _ref;
|
|
11
|
+
extendParams({
|
|
12
|
+
virtual: {
|
|
13
|
+
enabled: false,
|
|
14
|
+
slides: [],
|
|
15
|
+
cache: true,
|
|
16
|
+
renderSlide: null,
|
|
17
|
+
renderExternal: null,
|
|
18
|
+
renderExternalUpdate: true,
|
|
19
|
+
addSlidesBefore: 0,
|
|
20
|
+
addSlidesAfter: 0
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
let cssModeTimeout;
|
|
24
|
+
const document = getDocument();
|
|
25
|
+
swiper.virtual = {
|
|
26
|
+
cache: {},
|
|
27
|
+
from: undefined,
|
|
28
|
+
to: undefined,
|
|
29
|
+
slides: [],
|
|
30
|
+
offset: 0,
|
|
31
|
+
slidesGrid: []
|
|
32
|
+
};
|
|
33
|
+
const tempDOM = document.createElement('div');
|
|
34
|
+
function renderSlide(slide, index) {
|
|
35
|
+
const params = swiper.params.virtual;
|
|
36
|
+
if (params.cache && swiper.virtual.cache[index]) {
|
|
37
|
+
return swiper.virtual.cache[index];
|
|
38
|
+
}
|
|
39
|
+
// eslint-disable-next-line
|
|
40
|
+
let slideEl;
|
|
41
|
+
if (params.renderSlide) {
|
|
42
|
+
slideEl = params.renderSlide.call(swiper, slide, index);
|
|
43
|
+
if (typeof slideEl === 'string') {
|
|
44
|
+
setInnerHTML(tempDOM, slideEl);
|
|
45
|
+
slideEl = tempDOM.children[0];
|
|
46
|
+
}
|
|
47
|
+
} else if (swiper.isElement) {
|
|
48
|
+
slideEl = createElement('swiper-slide');
|
|
49
|
+
} else {
|
|
50
|
+
slideEl = createElement('div', swiper.params.slideClass);
|
|
51
|
+
}
|
|
52
|
+
slideEl.setAttribute('data-swiper-slide-index', index);
|
|
53
|
+
if (!params.renderSlide) {
|
|
54
|
+
setInnerHTML(slideEl, slide);
|
|
55
|
+
}
|
|
56
|
+
if (params.cache) {
|
|
57
|
+
swiper.virtual.cache[index] = slideEl;
|
|
58
|
+
}
|
|
59
|
+
return slideEl;
|
|
60
|
+
}
|
|
61
|
+
function update(force, beforeInit, forceActiveIndex) {
|
|
62
|
+
const {
|
|
63
|
+
slidesPerView,
|
|
64
|
+
slidesPerGroup,
|
|
65
|
+
centeredSlides,
|
|
66
|
+
loop: isLoop,
|
|
67
|
+
initialSlide
|
|
68
|
+
} = swiper.params;
|
|
69
|
+
if (beforeInit && !isLoop && initialSlide > 0) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const {
|
|
73
|
+
addSlidesBefore,
|
|
74
|
+
addSlidesAfter
|
|
75
|
+
} = swiper.params.virtual;
|
|
76
|
+
const {
|
|
77
|
+
from: previousFrom,
|
|
78
|
+
to: previousTo,
|
|
79
|
+
slides,
|
|
80
|
+
slidesGrid: previousSlidesGrid,
|
|
81
|
+
offset: previousOffset
|
|
82
|
+
} = swiper.virtual;
|
|
83
|
+
if (!swiper.params.cssMode) {
|
|
84
|
+
swiper.updateActiveIndex();
|
|
85
|
+
}
|
|
86
|
+
const activeIndex = typeof forceActiveIndex === 'undefined' ? swiper.activeIndex || 0 : forceActiveIndex;
|
|
87
|
+
let offsetProp;
|
|
88
|
+
if (swiper.rtlTranslate) offsetProp = 'right';else offsetProp = swiper.isHorizontal() ? 'left' : 'top';
|
|
89
|
+
let slidesAfter;
|
|
90
|
+
let slidesBefore;
|
|
91
|
+
if (centeredSlides) {
|
|
92
|
+
slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;
|
|
93
|
+
slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;
|
|
94
|
+
} else {
|
|
95
|
+
slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesAfter;
|
|
96
|
+
slidesBefore = (isLoop ? slidesPerView : slidesPerGroup) + addSlidesBefore;
|
|
97
|
+
}
|
|
98
|
+
let from = activeIndex - slidesBefore;
|
|
99
|
+
let to = activeIndex + slidesAfter;
|
|
100
|
+
if (!isLoop) {
|
|
101
|
+
from = Math.max(from, 0);
|
|
102
|
+
to = Math.min(to, slides.length - 1);
|
|
103
|
+
}
|
|
104
|
+
let offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);
|
|
105
|
+
if (isLoop && activeIndex >= slidesBefore) {
|
|
106
|
+
from -= slidesBefore;
|
|
107
|
+
if (!centeredSlides) offset += swiper.slidesGrid[0];
|
|
108
|
+
} else if (isLoop && activeIndex < slidesBefore) {
|
|
109
|
+
from = -slidesBefore;
|
|
110
|
+
if (centeredSlides) offset += swiper.slidesGrid[0];
|
|
111
|
+
}
|
|
112
|
+
Object.assign(swiper.virtual, {
|
|
113
|
+
from,
|
|
114
|
+
to,
|
|
115
|
+
offset,
|
|
116
|
+
slidesGrid: swiper.slidesGrid,
|
|
117
|
+
slidesBefore,
|
|
118
|
+
slidesAfter
|
|
119
|
+
});
|
|
120
|
+
function onRendered() {
|
|
121
|
+
swiper.updateSlides();
|
|
122
|
+
swiper.updateProgress();
|
|
123
|
+
swiper.updateSlidesClasses();
|
|
124
|
+
emit('virtualUpdate');
|
|
125
|
+
}
|
|
126
|
+
if (previousFrom === from && previousTo === to && !force) {
|
|
127
|
+
if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {
|
|
128
|
+
swiper.slides.forEach(slideEl => {
|
|
129
|
+
slideEl.style[offsetProp] = `${offset - Math.abs(swiper.cssOverflowAdjustment())}px`;
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
swiper.updateProgress();
|
|
133
|
+
emit('virtualUpdate');
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
if (swiper.params.virtual.renderExternal) {
|
|
137
|
+
swiper.params.virtual.renderExternal.call(swiper, {
|
|
138
|
+
offset,
|
|
139
|
+
from,
|
|
140
|
+
to,
|
|
141
|
+
slides: function getSlides() {
|
|
142
|
+
const slidesToRender = [];
|
|
143
|
+
for (let i = from; i <= to; i += 1) {
|
|
144
|
+
slidesToRender.push(slides[i]);
|
|
145
|
+
}
|
|
146
|
+
return slidesToRender;
|
|
147
|
+
}()
|
|
148
|
+
});
|
|
149
|
+
if (swiper.params.virtual.renderExternalUpdate) {
|
|
150
|
+
onRendered();
|
|
151
|
+
} else {
|
|
152
|
+
emit('virtualUpdate');
|
|
153
|
+
}
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
const prependIndexes = [];
|
|
157
|
+
const appendIndexes = [];
|
|
158
|
+
const getSlideIndex = index => {
|
|
159
|
+
let slideIndex = index;
|
|
160
|
+
if (index < 0) {
|
|
161
|
+
slideIndex = slides.length + index;
|
|
162
|
+
} else if (slideIndex >= slides.length) {
|
|
163
|
+
// eslint-disable-next-line
|
|
164
|
+
slideIndex = slideIndex - slides.length;
|
|
165
|
+
}
|
|
166
|
+
return slideIndex;
|
|
167
|
+
};
|
|
168
|
+
if (force) {
|
|
169
|
+
swiper.slides.filter(el => el.matches(`.${swiper.params.slideClass}, swiper-slide`)).forEach(slideEl => {
|
|
170
|
+
slideEl.remove();
|
|
171
|
+
});
|
|
172
|
+
} else {
|
|
173
|
+
for (let i = previousFrom; i <= previousTo; i += 1) {
|
|
174
|
+
if (i < from || i > to) {
|
|
175
|
+
const slideIndex = getSlideIndex(i);
|
|
176
|
+
swiper.slides.filter(el => el.matches(`.${swiper.params.slideClass}[data-swiper-slide-index="${slideIndex}"], swiper-slide[data-swiper-slide-index="${slideIndex}"]`)).forEach(slideEl => {
|
|
177
|
+
slideEl.remove();
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
const loopFrom = isLoop ? -slides.length : 0;
|
|
183
|
+
const loopTo = isLoop ? slides.length * 2 : slides.length;
|
|
184
|
+
for (let i = loopFrom; i < loopTo; i += 1) {
|
|
185
|
+
if (i >= from && i <= to) {
|
|
186
|
+
const slideIndex = getSlideIndex(i);
|
|
187
|
+
if (typeof previousTo === 'undefined' || force) {
|
|
188
|
+
appendIndexes.push(slideIndex);
|
|
189
|
+
} else {
|
|
190
|
+
if (i > previousTo) appendIndexes.push(slideIndex);
|
|
191
|
+
if (i < previousFrom) prependIndexes.push(slideIndex);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
appendIndexes.forEach(index => {
|
|
196
|
+
swiper.slidesEl.append(renderSlide(slides[index], index));
|
|
197
|
+
});
|
|
198
|
+
if (isLoop) {
|
|
199
|
+
for (let i = prependIndexes.length - 1; i >= 0; i -= 1) {
|
|
200
|
+
const index = prependIndexes[i];
|
|
201
|
+
swiper.slidesEl.prepend(renderSlide(slides[index], index));
|
|
202
|
+
}
|
|
203
|
+
} else {
|
|
204
|
+
prependIndexes.sort((a, b) => b - a);
|
|
205
|
+
prependIndexes.forEach(index => {
|
|
206
|
+
swiper.slidesEl.prepend(renderSlide(slides[index], index));
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
elementChildren(swiper.slidesEl, '.swiper-slide, swiper-slide').forEach(slideEl => {
|
|
210
|
+
slideEl.style[offsetProp] = `${offset - Math.abs(swiper.cssOverflowAdjustment())}px`;
|
|
211
|
+
});
|
|
212
|
+
onRendered();
|
|
213
|
+
}
|
|
214
|
+
function appendSlide(slides) {
|
|
215
|
+
if (typeof slides === 'object' && 'length' in slides) {
|
|
216
|
+
for (let i = 0; i < slides.length; i += 1) {
|
|
217
|
+
if (slides[i]) swiper.virtual.slides.push(slides[i]);
|
|
218
|
+
}
|
|
219
|
+
} else {
|
|
220
|
+
swiper.virtual.slides.push(slides);
|
|
221
|
+
}
|
|
222
|
+
update(true);
|
|
223
|
+
}
|
|
224
|
+
function prependSlide(slides) {
|
|
225
|
+
const activeIndex = swiper.activeIndex;
|
|
226
|
+
let newActiveIndex = activeIndex + 1;
|
|
227
|
+
let numberOfNewSlides = 1;
|
|
228
|
+
if (Array.isArray(slides)) {
|
|
229
|
+
for (let i = 0; i < slides.length; i += 1) {
|
|
230
|
+
if (slides[i]) swiper.virtual.slides.unshift(slides[i]);
|
|
231
|
+
}
|
|
232
|
+
newActiveIndex = activeIndex + slides.length;
|
|
233
|
+
numberOfNewSlides = slides.length;
|
|
234
|
+
} else {
|
|
235
|
+
swiper.virtual.slides.unshift(slides);
|
|
236
|
+
}
|
|
237
|
+
if (swiper.params.virtual.cache) {
|
|
238
|
+
const cache = swiper.virtual.cache;
|
|
239
|
+
const newCache = {};
|
|
240
|
+
Object.keys(cache).forEach(cachedIndex => {
|
|
241
|
+
const cachedEl = cache[cachedIndex];
|
|
242
|
+
const cachedElIndex = cachedEl.getAttribute('data-swiper-slide-index');
|
|
243
|
+
if (cachedElIndex) {
|
|
244
|
+
cachedEl.setAttribute('data-swiper-slide-index', parseInt(cachedElIndex, 10) + numberOfNewSlides);
|
|
245
|
+
}
|
|
246
|
+
newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = cachedEl;
|
|
247
|
+
});
|
|
248
|
+
swiper.virtual.cache = newCache;
|
|
249
|
+
}
|
|
250
|
+
update(true);
|
|
251
|
+
swiper.slideTo(newActiveIndex, 0);
|
|
252
|
+
}
|
|
253
|
+
function removeSlide(slidesIndexes) {
|
|
254
|
+
if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;
|
|
255
|
+
let activeIndex = swiper.activeIndex;
|
|
256
|
+
if (Array.isArray(slidesIndexes)) {
|
|
257
|
+
for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {
|
|
258
|
+
if (swiper.params.virtual.cache) {
|
|
259
|
+
delete swiper.virtual.cache[slidesIndexes[i]];
|
|
260
|
+
// shift cache indexes
|
|
261
|
+
Object.keys(swiper.virtual.cache).forEach(key => {
|
|
262
|
+
if (key > slidesIndexes) {
|
|
263
|
+
swiper.virtual.cache[key - 1] = swiper.virtual.cache[key];
|
|
264
|
+
swiper.virtual.cache[key - 1].setAttribute('data-swiper-slide-index', key - 1);
|
|
265
|
+
delete swiper.virtual.cache[key];
|
|
266
|
+
}
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
swiper.virtual.slides.splice(slidesIndexes[i], 1);
|
|
270
|
+
if (slidesIndexes[i] < activeIndex) activeIndex -= 1;
|
|
271
|
+
activeIndex = Math.max(activeIndex, 0);
|
|
272
|
+
}
|
|
273
|
+
} else {
|
|
274
|
+
if (swiper.params.virtual.cache) {
|
|
275
|
+
delete swiper.virtual.cache[slidesIndexes];
|
|
276
|
+
// shift cache indexes
|
|
277
|
+
Object.keys(swiper.virtual.cache).forEach(key => {
|
|
278
|
+
if (key > slidesIndexes) {
|
|
279
|
+
swiper.virtual.cache[key - 1] = swiper.virtual.cache[key];
|
|
280
|
+
swiper.virtual.cache[key - 1].setAttribute('data-swiper-slide-index', key - 1);
|
|
281
|
+
delete swiper.virtual.cache[key];
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
swiper.virtual.slides.splice(slidesIndexes, 1);
|
|
286
|
+
if (slidesIndexes < activeIndex) activeIndex -= 1;
|
|
287
|
+
activeIndex = Math.max(activeIndex, 0);
|
|
288
|
+
}
|
|
289
|
+
update(true);
|
|
290
|
+
swiper.slideTo(activeIndex, 0);
|
|
291
|
+
}
|
|
292
|
+
function removeAllSlides() {
|
|
293
|
+
swiper.virtual.slides = [];
|
|
294
|
+
if (swiper.params.virtual.cache) {
|
|
295
|
+
swiper.virtual.cache = {};
|
|
296
|
+
}
|
|
297
|
+
update(true);
|
|
298
|
+
swiper.slideTo(0, 0);
|
|
299
|
+
}
|
|
300
|
+
on('beforeInit', () => {
|
|
301
|
+
if (!swiper.params.virtual.enabled) return;
|
|
302
|
+
let domSlidesAssigned;
|
|
303
|
+
if (typeof swiper.passedParams.virtual.slides === 'undefined') {
|
|
304
|
+
const slides = [...swiper.slidesEl.children].filter(el => el.matches(`.${swiper.params.slideClass}, swiper-slide`));
|
|
305
|
+
if (slides && slides.length) {
|
|
306
|
+
swiper.virtual.slides = [...slides];
|
|
307
|
+
domSlidesAssigned = true;
|
|
308
|
+
slides.forEach((slideEl, slideIndex) => {
|
|
309
|
+
slideEl.setAttribute('data-swiper-slide-index', slideIndex);
|
|
310
|
+
swiper.virtual.cache[slideIndex] = slideEl;
|
|
311
|
+
slideEl.remove();
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
if (!domSlidesAssigned) {
|
|
316
|
+
swiper.virtual.slides = swiper.params.virtual.slides;
|
|
317
|
+
}
|
|
318
|
+
swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);
|
|
319
|
+
swiper.params.watchSlidesProgress = true;
|
|
320
|
+
swiper.originalParams.watchSlidesProgress = true;
|
|
321
|
+
update(false, true);
|
|
322
|
+
});
|
|
323
|
+
on('setTranslate', () => {
|
|
324
|
+
if (!swiper.params.virtual.enabled) return;
|
|
325
|
+
if (swiper.params.cssMode && !swiper._immediateVirtual) {
|
|
326
|
+
clearTimeout(cssModeTimeout);
|
|
327
|
+
cssModeTimeout = setTimeout(() => {
|
|
328
|
+
update();
|
|
329
|
+
}, 100);
|
|
330
|
+
} else {
|
|
331
|
+
update();
|
|
332
|
+
}
|
|
333
|
+
});
|
|
334
|
+
on('init update resize', () => {
|
|
335
|
+
if (!swiper.params.virtual.enabled) return;
|
|
336
|
+
if (swiper.params.cssMode) {
|
|
337
|
+
setCSSProperty(swiper.wrapperEl, '--swiper-virtual-size', `${swiper.virtualSize}px`);
|
|
338
|
+
}
|
|
339
|
+
});
|
|
340
|
+
Object.assign(swiper.virtual, {
|
|
341
|
+
appendSlide,
|
|
342
|
+
prependSlide,
|
|
343
|
+
removeSlide,
|
|
344
|
+
removeAllSlides,
|
|
345
|
+
update
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
export { Virtual as default };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
.swiper-virtual .swiper-slide {
|
|
2
|
+
-webkit-backface-visibility: hidden;
|
|
3
|
+
transform: translateZ(0);
|
|
4
|
+
}
|
|
5
|
+
.swiper-virtual.swiper-css-mode {
|
|
6
|
+
.swiper-wrapper::after {
|
|
7
|
+
content: '';
|
|
8
|
+
position: absolute;
|
|
9
|
+
left: 0;
|
|
10
|
+
top: 0;
|
|
11
|
+
pointer-events: none;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
.swiper-virtual.swiper-css-mode.swiper-horizontal {
|
|
15
|
+
.swiper-wrapper::after {
|
|
16
|
+
height: 1px;
|
|
17
|
+
width: var(--swiper-virtual-size);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.swiper-virtual.swiper-css-mode.swiper-vertical {
|
|
22
|
+
.swiper-wrapper::after {
|
|
23
|
+
width: 1px;
|
|
24
|
+
height: var(--swiper-virtual-size);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
::slotted(.swiper-slide-zoomed){cursor:move;touch-action:none}
|
package/modules/zoom.css
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/* Zoom container styles start */
|
|
2
|
+
.swiper-zoom-container {
|
|
3
|
+
width: 100%;
|
|
4
|
+
height: 100%;
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: center;
|
|
7
|
+
align-items: center;
|
|
8
|
+
text-align: center;
|
|
9
|
+
}
|
|
10
|
+
.swiper-zoom-container > img,
|
|
11
|
+
.swiper-zoom-container > svg,
|
|
12
|
+
.swiper-zoom-container > canvas {
|
|
13
|
+
max-width: 100%;
|
|
14
|
+
max-height: 100%;
|
|
15
|
+
object-fit: contain;
|
|
16
|
+
}
|
|
17
|
+
/* Zoom container styles end */
|
|
18
|
+
.swiper-slide-zoomed {
|
|
19
|
+
cursor: move;
|
|
20
|
+
touch-action: none;
|
|
21
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* Zoom container styles start */
|
|
2
|
+
.swiper-zoom-container {
|
|
3
|
+
width: 100%;
|
|
4
|
+
height: 100%;
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: center;
|
|
7
|
+
align-items: center;
|
|
8
|
+
text-align: center;
|
|
9
|
+
|
|
10
|
+
> img,
|
|
11
|
+
> svg,
|
|
12
|
+
> canvas {
|
|
13
|
+
max-width: 100%;
|
|
14
|
+
max-height: 100%;
|
|
15
|
+
object-fit: contain;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
/* Zoom container styles end */
|
|
19
|
+
|
|
20
|
+
.swiper-slide-zoomed {
|
|
21
|
+
cursor: move;
|
|
22
|
+
touch-action: none;
|
|
23
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as getWindow}from"../shared/ssr-window.esm.min.mjs";import{e as elementChildren,b as elementParents,d as elementOffset,k as getTranslate}from"../shared/utils.min.mjs";function Zoom(e){let{swiper:t,extendParams:i,on:a,emit:r}=e;const s=getWindow();i({zoom:{enabled:!1,limitToOriginalSize:!1,maxRatio:3,minRatio:1,panOnMouseMove:!1,toggle:!0,containerClass:"swiper-zoom-container",zoomedSlideClass:"swiper-slide-zoomed"}}),t.zoom={enabled:!1};let o=1,n=!1,l=!1,m={x:0,y:0};const c=-3;let d,u;const p=[],g={originX:0,originY:0,slideEl:void 0,slideWidth:void 0,slideHeight:void 0,imageEl:void 0,imageWrapEl:void 0,maxRatio:3},h={isTouched:void 0,isMoved:void 0,currentX:void 0,currentY:void 0,minX:void 0,minY:void 0,maxX:void 0,maxY:void 0,width:void 0,height:void 0,startX:void 0,startY:void 0,touchesStart:{},touchesCurrent:{}},E={x:void 0,y:void 0,prevPositionX:void 0,prevPositionY:void 0,prevTime:void 0};let v,f=1;function x(){if(p.length<2)return 1;const e=p[0].pageX,t=p[0].pageY,i=p[1].pageX,a=p[1].pageY;return Math.sqrt((i-e)**2+(a-t)**2)}function X(){const e=t.params.zoom,i=g.imageWrapEl.getAttribute("data-swiper-zoom")||e.maxRatio;if(e.limitToOriginalSize&&g.imageEl&&g.imageEl.naturalWidth){const e=g.imageEl.naturalWidth/g.imageEl.offsetWidth;return Math.min(e,i)}return i}function Y(e){const i=t.isElement?"swiper-slide":`.${t.params.slideClass}`;return!!e.target.matches(i)||t.slides.filter((t=>t.contains(e.target))).length>0}function y(e){const i=`.${t.params.zoom.containerClass}`;return!!e.target.matches(i)||[...t.hostEl.querySelectorAll(i)].filter((t=>t.contains(e.target))).length>0}function M(e){if("mouse"===e.pointerType&&p.splice(0,p.length),!Y(e))return;const i=t.params.zoom;if(d=!1,u=!1,p.push(e),!(p.length<2)){if(d=!0,g.scaleStart=x(),!g.slideEl){g.slideEl=e.target.closest(`.${t.params.slideClass}, swiper-slide`),g.slideEl||(g.slideEl=t.slides[t.activeIndex]);let a=g.slideEl.querySelector(`.${i.containerClass}`);if(a&&(a=a.querySelectorAll("picture, img, svg, canvas, .swiper-zoom-target")[0]),g.imageEl=a,g.imageWrapEl=a?elementParents(g.imageEl,`.${i.containerClass}`)[0]:void 0,!g.imageWrapEl)return void(g.imageEl=void 0);g.maxRatio=X()}if(g.imageEl){const[e,t]=function(){if(p.length<2)return{x:null,y:null};const e=g.imageEl.getBoundingClientRect();return[(p[0].pageX+(p[1].pageX-p[0].pageX)/2-e.x-s.scrollX)/o,(p[0].pageY+(p[1].pageY-p[0].pageY)/2-e.y-s.scrollY)/o]}();g.originX=e,g.originY=t,g.imageEl.style.transitionDuration="0ms"}n=!0}}function z(e){if(!Y(e))return;const i=t.params.zoom,a=t.zoom,r=p.findIndex((t=>t.pointerId===e.pointerId));r>=0&&(p[r]=e),p.length<2||(u=!0,g.scaleMove=x(),g.imageEl&&(a.scale=g.scaleMove/g.scaleStart*o,a.scale>g.maxRatio&&(a.scale=g.maxRatio-1+(a.scale-g.maxRatio+1)**.5),a.scale<i.minRatio&&(a.scale=i.minRatio+1-(i.minRatio-a.scale+1)**.5),g.imageEl.style.transform=`translate3d(0,0,0) scale(${a.scale})`))}function C(e){if(!Y(e))return;if("mouse"===e.pointerType&&"pointerout"===e.type)return;const i=t.params.zoom,a=t.zoom,r=p.findIndex((t=>t.pointerId===e.pointerId));r>=0&&p.splice(r,1),d&&u&&(d=!1,u=!1,g.imageEl&&(a.scale=Math.max(Math.min(a.scale,g.maxRatio),i.minRatio),g.imageEl.style.transitionDuration=`${t.params.speed}ms`,g.imageEl.style.transform=`translate3d(0,0,0) scale(${a.scale})`,o=a.scale,n=!1,a.scale>1&&g.slideEl?g.slideEl.classList.add(`${i.zoomedSlideClass}`):a.scale<=1&&g.slideEl&&g.slideEl.classList.remove(`${i.zoomedSlideClass}`),1===a.scale&&(g.originX=0,g.originY=0,g.slideEl=void 0)))}function W(){t.touchEventsData.preventTouchMoveFromPointerMove=!1}function w(e){const i="mouse"===e.pointerType&&t.params.zoom.panOnMouseMove;if(!Y(e)||!y(e))return;const a=t.zoom;if(!g.imageEl)return;if(!h.isTouched||!g.slideEl)return void(i&&b(e));if(i)return void b(e);h.isMoved||(h.width=g.imageEl.offsetWidth||g.imageEl.clientWidth,h.height=g.imageEl.offsetHeight||g.imageEl.clientHeight,h.startX=getTranslate(g.imageWrapEl,"x")||0,h.startY=getTranslate(g.imageWrapEl,"y")||0,g.slideWidth=g.slideEl.offsetWidth,g.slideHeight=g.slideEl.offsetHeight,g.imageWrapEl.style.transitionDuration="0ms");const r=h.width*a.scale,s=h.height*a.scale;h.minX=Math.min(g.slideWidth/2-r/2,0),h.maxX=-h.minX,h.minY=Math.min(g.slideHeight/2-s/2,0),h.maxY=-h.minY,h.touchesCurrent.x=p.length>0?p[0].pageX:e.pageX,h.touchesCurrent.y=p.length>0?p[0].pageY:e.pageY;if(Math.max(Math.abs(h.touchesCurrent.x-h.touchesStart.x),Math.abs(h.touchesCurrent.y-h.touchesStart.y))>5&&(t.allowClick=!1),!h.isMoved&&!n){if(t.isHorizontal()&&(Math.floor(h.minX)===Math.floor(h.startX)&&h.touchesCurrent.x<h.touchesStart.x||Math.floor(h.maxX)===Math.floor(h.startX)&&h.touchesCurrent.x>h.touchesStart.x))return h.isTouched=!1,void W();if(!t.isHorizontal()&&(Math.floor(h.minY)===Math.floor(h.startY)&&h.touchesCurrent.y<h.touchesStart.y||Math.floor(h.maxY)===Math.floor(h.startY)&&h.touchesCurrent.y>h.touchesStart.y))return h.isTouched=!1,void W()}e.cancelable&&e.preventDefault(),e.stopPropagation(),clearTimeout(v),t.touchEventsData.preventTouchMoveFromPointerMove=!0,v=setTimeout((()=>{t.destroyed||W()})),h.isMoved=!0;const l=(a.scale-o)/(g.maxRatio-t.params.zoom.minRatio),{originX:m,originY:c}=g;h.currentX=h.touchesCurrent.x-h.touchesStart.x+h.startX+l*(h.width-2*m),h.currentY=h.touchesCurrent.y-h.touchesStart.y+h.startY+l*(h.height-2*c),h.currentX<h.minX&&(h.currentX=h.minX+1-(h.minX-h.currentX+1)**.8),h.currentX>h.maxX&&(h.currentX=h.maxX-1+(h.currentX-h.maxX+1)**.8),h.currentY<h.minY&&(h.currentY=h.minY+1-(h.minY-h.currentY+1)**.8),h.currentY>h.maxY&&(h.currentY=h.maxY-1+(h.currentY-h.maxY+1)**.8),E.prevPositionX||(E.prevPositionX=h.touchesCurrent.x),E.prevPositionY||(E.prevPositionY=h.touchesCurrent.y),E.prevTime||(E.prevTime=Date.now()),E.x=(h.touchesCurrent.x-E.prevPositionX)/(Date.now()-E.prevTime)/2,E.y=(h.touchesCurrent.y-E.prevPositionY)/(Date.now()-E.prevTime)/2,Math.abs(h.touchesCurrent.x-E.prevPositionX)<2&&(E.x=0),Math.abs(h.touchesCurrent.y-E.prevPositionY)<2&&(E.y=0),E.prevPositionX=h.touchesCurrent.x,E.prevPositionY=h.touchesCurrent.y,E.prevTime=Date.now(),g.imageWrapEl.style.transform=`translate3d(${h.currentX}px, ${h.currentY}px,0)`}function S(){const e=t.zoom;g.slideEl&&t.activeIndex!==t.slides.indexOf(g.slideEl)&&(g.imageEl&&(g.imageEl.style.transform="translate3d(0,0,0) scale(1)"),g.imageWrapEl&&(g.imageWrapEl.style.transform="translate3d(0,0,0)"),g.slideEl.classList.remove(`${t.params.zoom.zoomedSlideClass}`),e.scale=1,o=1,g.slideEl=void 0,g.imageEl=void 0,g.imageWrapEl=void 0,g.originX=0,g.originY=0)}function b(e){if(o<=1||!g.imageWrapEl)return;if(!Y(e)||!y(e))return;const t=s.getComputedStyle(g.imageWrapEl).transform,i=new s.DOMMatrix(t);if(!l)return l=!0,m.x=e.clientX,m.y=e.clientY,h.startX=i.e,h.startY=i.f,h.width=g.imageEl.offsetWidth||g.imageEl.clientWidth,h.height=g.imageEl.offsetHeight||g.imageEl.clientHeight,g.slideWidth=g.slideEl.offsetWidth,void(g.slideHeight=g.slideEl.offsetHeight);const a=(e.clientX-m.x)*c,r=(e.clientY-m.y)*c,n=h.width*o,d=h.height*o,u=g.slideWidth,p=g.slideHeight,E=Math.min(u/2-n/2,0),v=-E,f=Math.min(p/2-d/2,0),x=-f,X=Math.max(Math.min(h.startX+a,v),E),M=Math.max(Math.min(h.startY+r,x),f);g.imageWrapEl.style.transitionDuration="0ms",g.imageWrapEl.style.transform=`translate3d(${X}px, ${M}px, 0)`,m.x=e.clientX,m.y=e.clientY,h.startX=X,h.startY=M,h.currentX=X,h.currentY=M}function $(e){const i=t.zoom,a=t.params.zoom;if(!g.slideEl){e&&e.target&&(g.slideEl=e.target.closest(`.${t.params.slideClass}, swiper-slide`)),g.slideEl||(t.params.virtual&&t.params.virtual.enabled&&t.virtual?g.slideEl=elementChildren(t.slidesEl,`.${t.params.slideActiveClass}`)[0]:g.slideEl=t.slides[t.activeIndex]);let i=g.slideEl.querySelector(`.${a.containerClass}`);i&&(i=i.querySelectorAll("picture, img, svg, canvas, .swiper-zoom-target")[0]),g.imageEl=i,g.imageWrapEl=i?elementParents(g.imageEl,`.${a.containerClass}`)[0]:void 0}if(!g.imageEl||!g.imageWrapEl)return;let r,n,l,m,c,d,u,p,E,v,f,x,Y,y,M,z,C,W;t.params.cssMode&&(t.wrapperEl.style.overflow="hidden",t.wrapperEl.style.touchAction="none"),g.slideEl.classList.add(`${a.zoomedSlideClass}`),void 0===h.touchesStart.x&&e?(r=e.pageX,n=e.pageY):(r=h.touchesStart.x,n=h.touchesStart.y);const w=o,S="number"==typeof e?e:null;1===o&&S&&(r=void 0,n=void 0,h.touchesStart.x=void 0,h.touchesStart.y=void 0);const b=X();i.scale=S||b,o=S||b,!e||1===o&&S?(u=0,p=0):(C=g.slideEl.offsetWidth,W=g.slideEl.offsetHeight,l=elementOffset(g.slideEl).left+s.scrollX,m=elementOffset(g.slideEl).top+s.scrollY,c=l+C/2-r,d=m+W/2-n,E=g.imageEl.offsetWidth||g.imageEl.clientWidth,v=g.imageEl.offsetHeight||g.imageEl.clientHeight,f=E*i.scale,x=v*i.scale,Y=Math.min(C/2-f/2,0),y=Math.min(W/2-x/2,0),M=-Y,z=-y,w>0&&S&&"number"==typeof h.currentX&&"number"==typeof h.currentY?(u=h.currentX*i.scale/w,p=h.currentY*i.scale/w):(u=c*i.scale,p=d*i.scale),u<Y&&(u=Y),u>M&&(u=M),p<y&&(p=y),p>z&&(p=z)),S&&1===i.scale&&(g.originX=0,g.originY=0),h.currentX=u,h.currentY=p,g.imageWrapEl.style.transitionDuration="300ms",g.imageWrapEl.style.transform=`translate3d(${u}px, ${p}px,0)`,g.imageEl.style.transitionDuration="300ms",g.imageEl.style.transform=`translate3d(0,0,0) scale(${i.scale})`}function T(){const e=t.zoom,i=t.params.zoom;if(!g.slideEl){t.params.virtual&&t.params.virtual.enabled&&t.virtual?g.slideEl=elementChildren(t.slidesEl,`.${t.params.slideActiveClass}`)[0]:g.slideEl=t.slides[t.activeIndex];let e=g.slideEl.querySelector(`.${i.containerClass}`);e&&(e=e.querySelectorAll("picture, img, svg, canvas, .swiper-zoom-target")[0]),g.imageEl=e,g.imageWrapEl=e?elementParents(g.imageEl,`.${i.containerClass}`)[0]:void 0}g.imageEl&&g.imageWrapEl&&(t.params.cssMode&&(t.wrapperEl.style.overflow="",t.wrapperEl.style.touchAction=""),e.scale=1,o=1,h.currentX=void 0,h.currentY=void 0,h.touchesStart.x=void 0,h.touchesStart.y=void 0,g.imageWrapEl.style.transitionDuration="300ms",g.imageWrapEl.style.transform="translate3d(0,0,0)",g.imageEl.style.transitionDuration="300ms",g.imageEl.style.transform="translate3d(0,0,0) scale(1)",g.slideEl.classList.remove(`${i.zoomedSlideClass}`),g.slideEl=void 0,g.originX=0,g.originY=0,t.params.zoom.panOnMouseMove&&(m={x:0,y:0},l&&(l=!1,h.startX=0,h.startY=0)))}function L(e){const i=t.zoom;i.scale&&1!==i.scale?T():$(e)}function P(){return{passiveListener:!!t.params.passiveListeners&&{passive:!0,capture:!1},activeListenerWithCapture:!t.params.passiveListeners||{passive:!1,capture:!0}}}function D(){const e=t.zoom;if(e.enabled)return;e.enabled=!0;const{passiveListener:i,activeListenerWithCapture:a}=P();t.wrapperEl.addEventListener("pointerdown",M,i),t.wrapperEl.addEventListener("pointermove",z,a),["pointerup","pointercancel","pointerout"].forEach((e=>{t.wrapperEl.addEventListener(e,C,i)})),t.wrapperEl.addEventListener("pointermove",w,a)}function H(){const e=t.zoom;if(!e.enabled)return;e.enabled=!1;const{passiveListener:i,activeListenerWithCapture:a}=P();t.wrapperEl.removeEventListener("pointerdown",M,i),t.wrapperEl.removeEventListener("pointermove",z,a),["pointerup","pointercancel","pointerout"].forEach((e=>{t.wrapperEl.removeEventListener(e,C,i)})),t.wrapperEl.removeEventListener("pointermove",w,a)}Object.defineProperty(t.zoom,"scale",{get:()=>f,set(e){if(f!==e){const t=g.imageEl,i=g.slideEl;r("zoomChange",e,t,i)}f=e}}),a("init",(()=>{t.params.zoom.enabled&&D()})),a("destroy",(()=>{H()})),a("touchStart",((e,i)=>{t.zoom.enabled&&function(e){const i=t.device;if(!g.imageEl)return;if(h.isTouched)return;i.android&&e.cancelable&&e.preventDefault(),h.isTouched=!0;const a=p.length>0?p[0]:e;h.touchesStart.x=a.pageX,h.touchesStart.y=a.pageY}(i)})),a("touchEnd",((e,i)=>{t.zoom.enabled&&function(){const e=t.zoom;if(p.length=0,!g.imageEl)return;if(!h.isTouched||!h.isMoved)return h.isTouched=!1,void(h.isMoved=!1);h.isTouched=!1,h.isMoved=!1;let i=300,a=300;const r=E.x*i,s=h.currentX+r,o=E.y*a,n=h.currentY+o;0!==E.x&&(i=Math.abs((s-h.currentX)/E.x)),0!==E.y&&(a=Math.abs((n-h.currentY)/E.y));const l=Math.max(i,a);h.currentX=s,h.currentY=n;const m=h.width*e.scale,c=h.height*e.scale;h.minX=Math.min(g.slideWidth/2-m/2,0),h.maxX=-h.minX,h.minY=Math.min(g.slideHeight/2-c/2,0),h.maxY=-h.minY,h.currentX=Math.max(Math.min(h.currentX,h.maxX),h.minX),h.currentY=Math.max(Math.min(h.currentY,h.maxY),h.minY),g.imageWrapEl.style.transitionDuration=`${l}ms`,g.imageWrapEl.style.transform=`translate3d(${h.currentX}px, ${h.currentY}px,0)`}()})),a("doubleTap",((e,i)=>{!t.animating&&t.params.zoom.enabled&&t.zoom.enabled&&t.params.zoom.toggle&&L(i)})),a("transitionEnd",(()=>{t.zoom.enabled&&t.params.zoom.enabled&&S()})),a("slideChange",(()=>{t.zoom.enabled&&t.params.zoom.enabled&&t.params.cssMode&&S()})),Object.assign(t.zoom,{enable:D,disable:H,in:$,out:T,toggle:L})}export{Zoom as default};
|
|
2
|
+
//# sourceMappingURL=zoom.min.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zoom.mjs.mjs","names":["getWindow","elementChildren","elementParents","elementOffset","getTranslate","Zoom","_ref","swiper","extendParams","on","emit","window","zoom","enabled","limitToOriginalSize","maxRatio","minRatio","panOnMouseMove","toggle","containerClass","zoomedSlideClass","currentScale","isScaling","isPanningWithMouse","mousePanStart","x","y","mousePanSensitivity","fakeGestureTouched","fakeGestureMoved","evCache","gesture","originX","originY","slideEl","undefined","slideWidth","slideHeight","imageEl","imageWrapEl","image","isTouched","isMoved","currentX","currentY","minX","minY","maxX","maxY","width","height","startX","startY","touchesStart","touchesCurrent","velocity","prevPositionX","prevPositionY","prevTime","allowTouchMoveTimeout","scale","getDistanceBetweenTouches","length","x1","pageX","y1","pageY","x2","y2","Math","sqrt","getMaxRatio","params","getAttribute","naturalWidth","imageMaxRatio","offsetWidth","min","eventWithinSlide","e","slideSelector","isElement","slideClass","target","matches","slides","filter","contains","eventWithinZoomContainer","selector","hostEl","querySelectorAll","containerEl","onGestureStart","pointerType","splice","push","scaleStart","closest","activeIndex","querySelector","box","getBoundingClientRect","scrollX","scrollY","getScaleOrigin","style","transitionDuration","onGestureChange","pointerIndex","findIndex","cachedEv","pointerId","scaleMove","transform","onGestureEnd","type","max","speed","classList","add","remove","allowTouchMove","touchEventsData","preventTouchMoveFromPointerMove","onTouchMove","isMousePan","onMouseMove","clientWidth","offsetHeight","clientHeight","scaledWidth","scaledHeight","abs","allowClick","isHorizontal","floor","cancelable","preventDefault","stopPropagation","clearTimeout","setTimeout","destroyed","scaleRatio","Date","now","onTransitionEnd","indexOf","currentTransform","getComputedStyle","matrix","DOMMatrix","clientX","clientY","f","deltaX","deltaY","newX","newY","zoomIn","virtual","slidesEl","slideActiveClass","touchX","touchY","offsetX","offsetY","diffX","diffY","translateX","translateY","imageWidth","imageHeight","translateMinX","translateMinY","translateMaxX","translateMaxY","cssMode","wrapperEl","overflow","touchAction","prevScale","forceZoomRatio","left","top","zoomOut","zoomToggle","getListeners","passiveListener","passiveListeners","passive","capture","activeListenerWithCapture","enable","addEventListener","forEach","eventName","disable","removeEventListener","Object","defineProperty","get","set","value","_s","device","android","event","onTouchStart","momentumDurationX","momentumDurationY","momentumDistanceX","newPositionX","momentumDistanceY","newPositionY","momentumDuration","onTouchEnd","animating","assign","in","out"],"sources":["0"],"mappings":"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"}
|