Browse code

Refactor and rewrite as contao bundle

Benjamin Roth authored on04/11/2022 22:32:32
Showing1 changed files
1 1
deleted file mode 100644
... ...
@@ -1,123 +0,0 @@
1
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
-
3
-import $ from '../../utils/dom';
4
-import { extend, bindModuleMethods } from '../../utils/utils';
5
-var Flip = {
6
-  setTranslate: function setTranslate() {
7
-    var swiper = this;
8
-    var slides = swiper.slides,
9
-        rtl = swiper.rtlTranslate;
10
-
11
-    for (var i = 0; i < slides.length; i += 1) {
12
-      var $slideEl = slides.eq(i);
13
-      var progress = $slideEl[0].progress;
14
-
15
-      if (swiper.params.flipEffect.limitRotation) {
16
-        progress = Math.max(Math.min($slideEl[0].progress, 1), -1);
17
-      }
18
-
19
-      var offset = $slideEl[0].swiperSlideOffset;
20
-      var rotate = -180 * progress;
21
-      var rotateY = rotate;
22
-      var rotateX = 0;
23
-      var tx = -offset;
24
-      var ty = 0;
25
-
26
-      if (!swiper.isHorizontal()) {
27
-        ty = tx;
28
-        tx = 0;
29
-        rotateX = -rotateY;
30
-        rotateY = 0;
31
-      } else if (rtl) {
32
-        rotateY = -rotateY;
33
-      }
34
-
35
-      $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;
36
-
37
-      if (swiper.params.flipEffect.slideShadows) {
38
-        // Set shadows
39
-        var shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');
40
-        var shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');
41
-
42
-        if (shadowBefore.length === 0) {
43
-          shadowBefore = $("<div class=\"swiper-slide-shadow-" + (swiper.isHorizontal() ? 'left' : 'top') + "\"></div>");
44
-          $slideEl.append(shadowBefore);
45
-        }
46
-
47
-        if (shadowAfter.length === 0) {
48
-          shadowAfter = $("<div class=\"swiper-slide-shadow-" + (swiper.isHorizontal() ? 'right' : 'bottom') + "\"></div>");
49
-          $slideEl.append(shadowAfter);
50
-        }
51
-
52
-        if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);
53
-        if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);
54
-      }
55
-
56
-      $slideEl.transform("translate3d(" + tx + "px, " + ty + "px, 0px) rotateX(" + rotateX + "deg) rotateY(" + rotateY + "deg)");
57
-    }
58
-  },
59
-  setTransition: function setTransition(duration) {
60
-    var swiper = this;
61
-    var slides = swiper.slides,
62
-        activeIndex = swiper.activeIndex,
63
-        $wrapperEl = swiper.$wrapperEl;
64
-    slides.transition(duration).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(duration);
65
-
66
-    if (swiper.params.virtualTranslate && duration !== 0) {
67
-      var eventTriggered = false; // eslint-disable-next-line
68
-
69
-      slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {
70
-        if (eventTriggered) return;
71
-        if (!swiper || swiper.destroyed) return; // if (!$(this).hasClass(swiper.params.slideActiveClass)) return;
72
-
73
-        eventTriggered = true;
74
-        swiper.animating = false;
75
-        var triggerEvents = ['webkitTransitionEnd', 'transitionend'];
76
-
77
-        for (var i = 0; i < triggerEvents.length; i += 1) {
78
-          $wrapperEl.trigger(triggerEvents[i]);
79
-        }
80
-      });
81
-    }
82
-  }
83
-};
84
-export default {
85
-  name: 'effect-flip',
86
-  params: {
87
-    flipEffect: {
88
-      slideShadows: true,
89
-      limitRotation: true
90
-    }
91
-  },
92
-  create: function create() {
93
-    var swiper = this;
94
-    bindModuleMethods(swiper, {
95
-      flipEffect: _extends({}, Flip)
96
-    });
97
-  },
98
-  on: {
99
-    beforeInit: function beforeInit(swiper) {
100
-      if (swiper.params.effect !== 'flip') return;
101
-      swiper.classNames.push(swiper.params.containerModifierClass + "flip");
102
-      swiper.classNames.push(swiper.params.containerModifierClass + "3d");
103
-      var overwriteParams = {
104
-        slidesPerView: 1,
105
-        slidesPerColumn: 1,
106
-        slidesPerGroup: 1,
107
-        watchSlidesProgress: true,
108
-        spaceBetween: 0,
109
-        virtualTranslate: true
110
-      };
111
-      extend(swiper.params, overwriteParams);
112
-      extend(swiper.originalParams, overwriteParams);
113
-    },
114
-    setTranslate: function setTranslate(swiper) {
115
-      if (swiper.params.effect !== 'flip') return;
116
-      swiper.flipEffect.setTranslate();
117
-    },
118
-    setTransition: function setTransition(swiper, duration) {
119
-      if (swiper.params.effect !== 'flip') return;
120
-      swiper.flipEffect.setTransition(duration);
121
-    }
122
-  }
123
-};
124 0
\ No newline at end of file
Browse code

swiper.js version 6.4.5

Benjamin Roth authored on17/01/2021 16:24:34
Showing1 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,123 @@
1
+function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+import $ from '../../utils/dom';
4
+import { extend, bindModuleMethods } from '../../utils/utils';
5
+var Flip = {
6
+  setTranslate: function setTranslate() {
7
+    var swiper = this;
8
+    var slides = swiper.slides,
9
+        rtl = swiper.rtlTranslate;
10
+
11
+    for (var i = 0; i < slides.length; i += 1) {
12
+      var $slideEl = slides.eq(i);
13
+      var progress = $slideEl[0].progress;
14
+
15
+      if (swiper.params.flipEffect.limitRotation) {
16
+        progress = Math.max(Math.min($slideEl[0].progress, 1), -1);
17
+      }
18
+
19
+      var offset = $slideEl[0].swiperSlideOffset;
20
+      var rotate = -180 * progress;
21
+      var rotateY = rotate;
22
+      var rotateX = 0;
23
+      var tx = -offset;
24
+      var ty = 0;
25
+
26
+      if (!swiper.isHorizontal()) {
27
+        ty = tx;
28
+        tx = 0;
29
+        rotateX = -rotateY;
30
+        rotateY = 0;
31
+      } else if (rtl) {
32
+        rotateY = -rotateY;
33
+      }
34
+
35
+      $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;
36
+
37
+      if (swiper.params.flipEffect.slideShadows) {
38
+        // Set shadows
39
+        var shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');
40
+        var shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');
41
+
42
+        if (shadowBefore.length === 0) {
43
+          shadowBefore = $("<div class=\"swiper-slide-shadow-" + (swiper.isHorizontal() ? 'left' : 'top') + "\"></div>");
44
+          $slideEl.append(shadowBefore);
45
+        }
46
+
47
+        if (shadowAfter.length === 0) {
48
+          shadowAfter = $("<div class=\"swiper-slide-shadow-" + (swiper.isHorizontal() ? 'right' : 'bottom') + "\"></div>");
49
+          $slideEl.append(shadowAfter);
50
+        }
51
+
52
+        if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);
53
+        if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);
54
+      }
55
+
56
+      $slideEl.transform("translate3d(" + tx + "px, " + ty + "px, 0px) rotateX(" + rotateX + "deg) rotateY(" + rotateY + "deg)");
57
+    }
58
+  },
59
+  setTransition: function setTransition(duration) {
60
+    var swiper = this;
61
+    var slides = swiper.slides,
62
+        activeIndex = swiper.activeIndex,
63
+        $wrapperEl = swiper.$wrapperEl;
64
+    slides.transition(duration).find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left').transition(duration);
65
+
66
+    if (swiper.params.virtualTranslate && duration !== 0) {
67
+      var eventTriggered = false; // eslint-disable-next-line
68
+
69
+      slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {
70
+        if (eventTriggered) return;
71
+        if (!swiper || swiper.destroyed) return; // if (!$(this).hasClass(swiper.params.slideActiveClass)) return;
72
+
73
+        eventTriggered = true;
74
+        swiper.animating = false;
75
+        var triggerEvents = ['webkitTransitionEnd', 'transitionend'];
76
+
77
+        for (var i = 0; i < triggerEvents.length; i += 1) {
78
+          $wrapperEl.trigger(triggerEvents[i]);
79
+        }
80
+      });
81
+    }
82
+  }
83
+};
84
+export default {
85
+  name: 'effect-flip',
86
+  params: {
87
+    flipEffect: {
88
+      slideShadows: true,
89
+      limitRotation: true
90
+    }
91
+  },
92
+  create: function create() {
93
+    var swiper = this;
94
+    bindModuleMethods(swiper, {
95
+      flipEffect: _extends({}, Flip)
96
+    });
97
+  },
98
+  on: {
99
+    beforeInit: function beforeInit(swiper) {
100
+      if (swiper.params.effect !== 'flip') return;
101
+      swiper.classNames.push(swiper.params.containerModifierClass + "flip");
102
+      swiper.classNames.push(swiper.params.containerModifierClass + "3d");
103
+      var overwriteParams = {
104
+        slidesPerView: 1,
105
+        slidesPerColumn: 1,
106
+        slidesPerGroup: 1,
107
+        watchSlidesProgress: true,
108
+        spaceBetween: 0,
109
+        virtualTranslate: true
110
+      };
111
+      extend(swiper.params, overwriteParams);
112
+      extend(swiper.originalParams, overwriteParams);
113
+    },
114
+    setTranslate: function setTranslate(swiper) {
115
+      if (swiper.params.effect !== 'flip') return;
116
+      swiper.flipEffect.setTranslate();
117
+    },
118
+    setTransition: function setTransition(swiper, duration) {
119
+      if (swiper.params.effect !== 'flip') return;
120
+      swiper.flipEffect.setTransition(duration);
121
+    }
122
+  }
123
+};
0 124
\ No newline at end of file