UNPKG

1.43 kBJavaScriptView Raw
1"use strict";
2
3exports.__esModule = true;
4exports.default = updateProgress;
5
6var _utils = require("../../../utils/utils");
7
8function updateProgress(translate) {
9 var swiper = this;
10
11 if (typeof translate === 'undefined') {
12 var multiplier = swiper.rtlTranslate ? -1 : 1; // eslint-disable-next-line
13
14 translate = swiper && swiper.translate && swiper.translate * multiplier || 0;
15 }
16
17 var params = swiper.params;
18 var translatesDiff = swiper.maxTranslate() - swiper.minTranslate();
19 var progress = swiper.progress,
20 isBeginning = swiper.isBeginning,
21 isEnd = swiper.isEnd;
22 var wasBeginning = isBeginning;
23 var wasEnd = isEnd;
24
25 if (translatesDiff === 0) {
26 progress = 0;
27 isBeginning = true;
28 isEnd = true;
29 } else {
30 progress = (translate - swiper.minTranslate()) / translatesDiff;
31 isBeginning = progress <= 0;
32 isEnd = progress >= 1;
33 }
34
35 (0, _utils.extend)(swiper, {
36 progress: progress,
37 isBeginning: isBeginning,
38 isEnd: isEnd
39 });
40 if (params.watchSlidesProgress || params.watchSlidesVisibility || params.centeredSlides && params.autoHeight) swiper.updateSlidesProgress(translate);
41
42 if (isBeginning && !wasBeginning) {
43 swiper.emit('reachBeginning toEdge');
44 }
45
46 if (isEnd && !wasEnd) {
47 swiper.emit('reachEnd toEdge');
48 }
49
50 if (wasBeginning && !isBeginning || wasEnd && !isEnd) {
51 swiper.emit('fromEdge');
52 }
53
54 swiper.emit('progress', progress);
55}
\No newline at end of file