@onwave/ui
Version:
onwave ui library
28 lines • 1.24 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
import { useKeenSlider } from "keen-slider/react.esm";
import { useState } from "react";
import { useAutoPlay } from "./useAutoPlay";
export var useSwiper = function (options) {
var autoplay = options.autoplay, delay = options.delay;
var _a = useState(false), shouldPauseSwiper = _a[0], setShouldPauseSwiper = _a[1];
var toggleShouldPauseSwiper = function () {
setShouldPauseSwiper(function (value) { return !value; });
};
var _b = useKeenSlider(__assign(__assign({}, options), (autoplay && {
dragStart: toggleShouldPauseSwiper,
dragEnd: toggleShouldPauseSwiper,
}))), sliderRef = _b[0], slider = _b[1];
useAutoPlay({ slider: slider, autoplay: autoplay, delay: delay, shouldPauseSwiper: shouldPauseSwiper });
return { sliderRef: sliderRef, slider: slider };
};
//# sourceMappingURL=useSwiper.js.map