UNPKG

anim-scroll

Version:

Small library to animate your web pages

51 lines (38 loc) 1.64 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _setBlock = _interopRequireDefault(require("./setBlock")); var _animation = _interopRequireDefault(require("../animation")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _default = (wrapper, options, activeSlide) => { var key = options.navBarStyle.wrapper.direction === 'column' ? 'pageY' : 'pageX'; var direction = ''; var start = 0; function handler(e) { if (e.changedTouches[0][key] < start - options.scrollSensitivity) direction = 'next';else if (e.changedTouches[0][key] > start + options.scrollSensitivity) direction = 'prev';else return; if (direction) { options.scrollSensitivity += 7680; if (wrapper.navBar) (0, _setBlock.default)(wrapper.navBar, 'block'); if (wrapper.arrows) { (0, _setBlock.default)(wrapper.arrows.arrowNext, 'block'); (0, _setBlock.default)(wrapper.arrows.arrowPrev, 'block'); } (0, _animation.default)(direction, wrapper, options, activeSlide).then(() => { direction = ''; if (wrapper.navBar) (0, _setBlock.default)(wrapper.navBar, 'none'); if (wrapper.arrows) { (0, _setBlock.default)(wrapper.arrows.arrowNext, 'none'); (0, _setBlock.default)(wrapper.arrows.arrowPrev, 'none'); } options.scrollSensitivity -= 7680; }); } } wrapper.slides.addEventListener('touchstart', e => { start = e.touches[0][key]; }); wrapper.slides.addEventListener('touchend', handler); }; exports.default = _default;