UNPKG

@talentsoft-opensource/uxp-themes

Version:

Talentsoft UX themes

34 lines (33 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var perfectScrollbar = require('perfect-scrollbar'); var activateScrollBars = function () { var $elementScroll = document.querySelectorAll('.scrollbar--active'); Array.prototype.forEach.call($elementScroll, function ($item) { var isVertical = $item.classList.contains('ps--active-y'); var isHorizontal = $item.classList.contains('ps--active-x'); var useHorizontalWheel = $item.classList.contains('ps--horizontal-wheel'); initializeScrollBar($item, isVertical, isHorizontal, useHorizontalWheel); }); }; var initializeScrollBar = function ($element, $isVertical, $isHorizontal, $useHorizontalWheel) { if ($isVertical === void 0) { $isVertical = true; } if ($isHorizontal === void 0) { $isHorizontal = false; } if ($useHorizontalWheel === void 0) { $useHorizontalWheel = false; } if ($element) { var scrollbar_1 = new perfectScrollbar($element, { wheelPropagation: false, minScrollbarLength: 20, suppressScrollX: !$isHorizontal, suppressScrollY: !$isVertical, useBothWheelAxes: $useHorizontalWheel }); var observer = new MutationObserver(function (mutationList) { scrollbar_1.update(); }); observer.observe($element, { childList: true, subtree: true, characterData: true }); scrollbar_1.update(); return scrollbar_1; } }; exports.default = { activateScrollBars: activateScrollBars, initializeScrollBar: initializeScrollBar };