react-remove-scroll
Advanced tools
Comparing version 2.5.4 to 2.5.5
@@ -1,13 +0,15 @@ | ||
var elementCouldBeVScrolled = function (node) { | ||
var styles = window.getComputedStyle(node); | ||
return (styles.overflowY !== 'hidden' && // not-not-scrollable | ||
!(styles.overflowY === styles.overflowX && styles.overflowY === 'visible') // scrollable | ||
); | ||
var alwaysContainsScroll = function (node) { | ||
// textarea will always _contain_ scroll inside self. It only can be hidden | ||
return node.tagName === 'TEXTAREA'; | ||
}; | ||
var elementCouldBeHScrolled = function (node) { | ||
var elementCanBeScrolled = function (node, overflow) { | ||
var styles = window.getComputedStyle(node); | ||
return (styles.overflowX !== 'hidden' && // not-not-scrollable | ||
!(styles.overflowY === styles.overflowX && styles.overflowX === 'visible') // scrollable | ||
); | ||
return ( | ||
// not-not-scrollable | ||
styles[overflow] !== 'hidden' && | ||
// contains scroll inside self | ||
!(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === 'visible')); | ||
}; | ||
var elementCouldBeVScrolled = function (node) { return elementCanBeScrolled(node, 'overflowY'); }; | ||
var elementCouldBeHScrolled = function (node) { return elementCanBeScrolled(node, 'overflowX'); }; | ||
export var locationCouldBeScrolled = function (axis, node) { | ||
@@ -14,0 +16,0 @@ var current = node; |
@@ -89,3 +89,5 @@ import { __spreadArray } from "tslib"; | ||
if (sourceEvent && sourceEvent.should) { | ||
event.preventDefault(); | ||
if (event.cancelable) { | ||
event.preventDefault(); | ||
} | ||
return; | ||
@@ -101,3 +103,5 @@ } | ||
if (shouldStop) { | ||
event.preventDefault(); | ||
if (event.cancelable) { | ||
event.preventDefault(); | ||
} | ||
} | ||
@@ -104,0 +108,0 @@ } |
@@ -1,13 +0,14 @@ | ||
const elementCouldBeVScrolled = (node) => { | ||
const alwaysContainsScroll = (node) => | ||
// textarea will always _contain_ scroll inside self. It only can be hidden | ||
node.tagName === 'TEXTAREA'; | ||
const elementCanBeScrolled = (node, overflow) => { | ||
const styles = window.getComputedStyle(node); | ||
return (styles.overflowY !== 'hidden' && // not-not-scrollable | ||
!(styles.overflowY === styles.overflowX && styles.overflowY === 'visible') // scrollable | ||
); | ||
return ( | ||
// not-not-scrollable | ||
styles[overflow] !== 'hidden' && | ||
// contains scroll inside self | ||
!(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === 'visible')); | ||
}; | ||
const elementCouldBeHScrolled = (node) => { | ||
const styles = window.getComputedStyle(node); | ||
return (styles.overflowX !== 'hidden' && // not-not-scrollable | ||
!(styles.overflowY === styles.overflowX && styles.overflowX === 'visible') // scrollable | ||
); | ||
}; | ||
const elementCouldBeVScrolled = (node) => elementCanBeScrolled(node, 'overflowY'); | ||
const elementCouldBeHScrolled = (node) => elementCanBeScrolled(node, 'overflowX'); | ||
export const locationCouldBeScrolled = (axis, node) => { | ||
@@ -14,0 +15,0 @@ let current = node; |
@@ -87,3 +87,5 @@ import * as React from 'react'; | ||
if (sourceEvent && sourceEvent.should) { | ||
event.preventDefault(); | ||
if (event.cancelable) { | ||
event.preventDefault(); | ||
} | ||
return; | ||
@@ -99,3 +101,5 @@ } | ||
if (shouldStop) { | ||
event.preventDefault(); | ||
if (event.cancelable) { | ||
event.preventDefault(); | ||
} | ||
} | ||
@@ -102,0 +106,0 @@ } |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.handleScroll = exports.locationCouldBeScrolled = void 0; | ||
var elementCouldBeVScrolled = function (node) { | ||
var styles = window.getComputedStyle(node); | ||
return (styles.overflowY !== 'hidden' && // not-not-scrollable | ||
!(styles.overflowY === styles.overflowX && styles.overflowY === 'visible') // scrollable | ||
); | ||
var alwaysContainsScroll = function (node) { | ||
// textarea will always _contain_ scroll inside self. It only can be hidden | ||
return node.tagName === 'TEXTAREA'; | ||
}; | ||
var elementCouldBeHScrolled = function (node) { | ||
var elementCanBeScrolled = function (node, overflow) { | ||
var styles = window.getComputedStyle(node); | ||
return (styles.overflowX !== 'hidden' && // not-not-scrollable | ||
!(styles.overflowY === styles.overflowX && styles.overflowX === 'visible') // scrollable | ||
); | ||
return ( | ||
// not-not-scrollable | ||
styles[overflow] !== 'hidden' && | ||
// contains scroll inside self | ||
!(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === 'visible')); | ||
}; | ||
var elementCouldBeVScrolled = function (node) { return elementCanBeScrolled(node, 'overflowY'); }; | ||
var elementCouldBeHScrolled = function (node) { return elementCanBeScrolled(node, 'overflowX'); }; | ||
var locationCouldBeScrolled = function (axis, node) { | ||
@@ -17,0 +19,0 @@ var current = node; |
@@ -94,3 +94,5 @@ "use strict"; | ||
if (sourceEvent && sourceEvent.should) { | ||
event.preventDefault(); | ||
if (event.cancelable) { | ||
event.preventDefault(); | ||
} | ||
return; | ||
@@ -106,3 +108,5 @@ } | ||
if (shouldStop) { | ||
event.preventDefault(); | ||
if (event.cancelable) { | ||
event.preventDefault(); | ||
} | ||
} | ||
@@ -109,0 +113,0 @@ } |
{ | ||
"name": "react-remove-scroll", | ||
"version": "2.5.4", | ||
"version": "2.5.5", | ||
"description": "Disables scroll outside of `children` node.", | ||
@@ -5,0 +5,0 @@ "main": "dist/es5/index.js", |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
72525
1442