72 lines
1.9 KiB
JavaScript
72 lines
1.9 KiB
JavaScript
'use strict';
|
|
|
|
exports.__esModule = true;
|
|
exports.siblingDirection = siblingDirection;
|
|
exports.slidesOnRight = slidesOnRight;
|
|
exports.slidesOnLeft = slidesOnLeft;
|
|
var getPreClones = exports.getPreClones = function getPreClones(spec) {
|
|
if (spec.unslick || !spec.infinite) {
|
|
return 0;
|
|
}
|
|
if (spec.variableWidth) {
|
|
return spec.slideCount;
|
|
}
|
|
return spec.slidesToShow + (spec.centerMode ? 1 : 0);
|
|
};
|
|
|
|
var getPostClones = exports.getPostClones = function getPostClones(spec) {
|
|
if (spec.unslick || !spec.infinite) {
|
|
return 0;
|
|
}
|
|
return spec.slideCount;
|
|
};
|
|
|
|
var getTotalSlides = exports.getTotalSlides = function getTotalSlides(spec) {
|
|
return spec.slideCount === 1 ? 1 : getPreClones(spec) + spec.slideCount + getPostClones(spec);
|
|
};
|
|
|
|
function siblingDirection(_ref) {
|
|
var currentSlide = _ref.currentSlide,
|
|
targetSlide = _ref.targetSlide,
|
|
slidesToShow = _ref.slidesToShow,
|
|
centerMode = _ref.centerMode,
|
|
rtl = _ref.rtl;
|
|
|
|
if (targetSlide > currentSlide) {
|
|
if (targetSlide > currentSlide + slidesOnRight(slidesToShow, centerMode, rtl)) {
|
|
return 'left';
|
|
}
|
|
return 'right';
|
|
} else {
|
|
if (targetSlide < currentSlide - slidesOnLeft(slidesToShow, centerMode, rtl)) {
|
|
return 'right';
|
|
}
|
|
return 'left';
|
|
}
|
|
}
|
|
|
|
function slidesOnRight(slidesToShow, centerMode, rtl) {
|
|
// returns no of slides on the right of active slide
|
|
if (centerMode) {
|
|
var right = (slidesToShow - 1) / 2 + 1;
|
|
if (rtl && slidesToShow % 2 === 0) right += 1;
|
|
return right;
|
|
}
|
|
if (rtl) {
|
|
return 0;
|
|
}
|
|
return slidesToShow - 1;
|
|
}
|
|
|
|
function slidesOnLeft(slidesToShow, centerMode, rtl) {
|
|
// returns no of slides on the left of active slide
|
|
if (centerMode) {
|
|
var left = (slidesToShow - 1) / 2 + 1;
|
|
if (!rtl && slidesToShow % 2 === 0) left += 1;
|
|
return left;
|
|
}
|
|
if (rtl) {
|
|
return slidesToShow - 1;
|
|
}
|
|
return 0;
|
|
} |