UNPKG

@yandex/ui

Version:

Yandex UI components

44 lines (43 loc) 1.45 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.unlock = exports.lock = void 0; var tslib_1 = require("tslib"); var canUseDOM_1 = require("../canUseDOM"); var platform_1 = require("../platform"); var StandartScrollLocker = tslib_1.__importStar(require("./StandartScrollLocker")); var TouchScrollLocker = tslib_1.__importStar(require("./TouchScrollLocker")); function ensureElement(element) { return element || document.body; } /** * Добавляет запрет на прокрутку содержимого на DOM-элементе. * * @param container Ссылка на DOM-элемент. По-умолчанию: `document.body` */ function lock(container) { if (!canUseDOM_1.canUseDOM()) { return; } var element = ensureElement(container); StandartScrollLocker.lock(element); if (platform_1.isIOS()) { TouchScrollLocker.lock(element); } } exports.lock = lock; /** * Убирает запрет на прокрутку содержимого на DOM-элементе. * * @param container Ссылка на DOM-элемент. По-умолчанию: `document.body` */ function unlock(container) { if (!canUseDOM_1.canUseDOM()) { return; } var element = ensureElement(container); StandartScrollLocker.unlock(element); if (platform_1.isIOS()) { TouchScrollLocker.unlock(element); } } exports.unlock = unlock;