@prom-ui/core 1.7.1 → 1.8.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Avatar/package.json +1 -1
- package/Backdrop/cjs/index.development.js +7 -2
- package/Backdrop/cjs/index.development.v2.js +7 -2
- package/Backdrop/cjs/index.production.js +1 -1
- package/Backdrop/cjs/index.production.v2.js +1 -1
- package/Backdrop/index.d.ts +2 -0
- package/Backdrop/package.json +1 -1
- package/Body/package.json +1 -1
- package/BodyContext/package.json +1 -1
- package/BodyProvider/package.json +1 -1
- package/BodyScrollLock/cjs/index.development.js +87 -0
- package/BodyScrollLock/cjs/index.development.v2.js +87 -0
- package/BodyScrollLock/cjs/index.production.js +1 -0
- package/BodyScrollLock/cjs/index.production.v2.js +1 -0
- package/BodyScrollLock/cjs/style.development.css +1 -0
- package/BodyScrollLock/cjs/style.development.v2.css +1 -0
- package/BodyScrollLock/cjs/style.production.css +1 -0
- package/BodyScrollLock/cjs/style.production.v2.css +1 -0
- package/BodyScrollLock/index.d.ts +5 -0
- package/BodyScrollLock/index.js +7 -0
- package/BodyScrollLock/index.v2.js +7 -0
- package/BodyScrollLock/package.json +9 -0
- package/BodyScrollLock/utils.d.ts +1 -0
- package/Box/package.json +1 -1
- package/Button/package.json +1 -1
- package/ButtonPageUp/package.json +1 -1
- package/Checkbox/package.json +1 -1
- package/Flex/package.json +1 -1
- package/Grid/package.json +1 -1
- package/Icon/package.json +1 -1
- package/Image/package.json +1 -1
- package/ImageEmoji/package.json +1 -1
- package/Input/package.json +1 -1
- package/InputField/package.json +1 -1
- package/KeyPress/package.json +1 -1
- package/Line/package.json +1 -1
- package/Link/package.json +1 -1
- package/List/package.json +1 -1
- package/Media/package.json +1 -1
- package/OutsideClick/package.json +1 -1
- package/Overlay/cjs/index.development.js +11 -43
- package/Overlay/cjs/index.development.v2.js +11 -43
- package/Overlay/cjs/index.production.js +1 -1
- package/Overlay/cjs/index.production.v2.js +1 -1
- package/Overlay/index.d.ts +2 -4
- package/Overlay/package.json +1 -2
- package/PhotoGallery/cjs/index.development.js +7 -50
- package/PhotoGallery/cjs/index.development.v2.js +7 -50
- package/PhotoGallery/cjs/index.production.js +1 -1
- package/PhotoGallery/cjs/index.production.v2.js +1 -1
- package/PhotoGallery/package.json +1 -2
- package/Picture/package.json +1 -1
- package/Portal/package.json +1 -1
- package/QRCode/package.json +1 -1
- package/Rating/package.json +1 -1
- package/RatingSelect/package.json +1 -1
- package/SafeQuery/package.json +1 -1
- package/Scroll/package.json +1 -1
- package/ScrollControls/package.json +1 -1
- package/SimpleSlider/package.json +1 -1
- package/Skeleton/package.json +1 -1
- package/Spinner/package.json +1 -1
- package/Text/package.json +1 -1
- package/TextEmoji/package.json +1 -1
- package/Tooltip/package.json +1 -1
- package/Tumbler/package.json +1 -1
- package/package.json +2 -3
- package/useBodyTTag/package.json +1 -1
- package/useBrowserLayoutEffect/cjs/index.development.js +12 -0
- package/useBrowserLayoutEffect/cjs/index.development.v2.js +12 -0
- package/useBrowserLayoutEffect/cjs/index.production.js +1 -0
- package/useBrowserLayoutEffect/cjs/index.production.v2.js +1 -0
- package/useBrowserLayoutEffect/index.d.ts +5 -0
- package/useBrowserLayoutEffect/index.js +7 -0
- package/useBrowserLayoutEffect/index.v2.js +7 -0
- package/useBrowserLayoutEffect/package.json +9 -0
- package/useDebounce/package.json +1 -1
- package/useForwardRef/package.json +1 -1
- package/useId/package.json +1 -1
- package/useIsMounted/package.json +1 -1
- package/useKeyPress/package.json +1 -1
- package/useMedia/package.json +1 -1
- package/useOutsideClick/package.json +1 -1
- package/usePortal/package.json +1 -1
- package/useScrollPosition/package.json +1 -1
- package/Overlay/components/TouchScrollable.d.ts +0 -8
- package/PhotoGallery/components/TouchScrollable.d.ts +0 -9
package/Avatar/package.json
CHANGED
|
@@ -6,6 +6,7 @@ var React = require('react');
|
|
|
6
6
|
var reactTransitionGroup = require('react-transition-group');
|
|
7
7
|
var classNames = require('classnames');
|
|
8
8
|
var Portal = require('@prom-ui/core/Portal');
|
|
9
|
+
var BodyScrollLock = require('@prom-ui/core/BodyScrollLock');
|
|
9
10
|
|
|
10
11
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
11
12
|
|
|
@@ -123,7 +124,7 @@ function _toPropertyKey(arg) {
|
|
|
123
124
|
|
|
124
125
|
var css = {"root":"Backdrop__root___mZ7dv","backdrop":"Backdrop__backdrop___AJyr0","enterActive":"Backdrop__enterActive___aDdF3","exitActive":"Backdrop__exitActive___rC-Zl","enter":"Backdrop__enter___NgQBr","exit":"Backdrop__exit___9LKEC"};
|
|
125
126
|
|
|
126
|
-
var _excluded = ["isOpen", "isRenderPortal", "isAnimated", "style", "zIndex", "children", "className", "onClick"];
|
|
127
|
+
var _excluded = ["isOpen", "isRenderPortal", "isAnimated", "isBodyScrollLock", "style", "zIndex", "children", "className", "onClick"];
|
|
127
128
|
/**
|
|
128
129
|
* Компонент служит для создания темного фона, который может использоваться в качестве
|
|
129
130
|
* подложки для модальных окон или других всплывающих элементов интерфейса.
|
|
@@ -136,6 +137,8 @@ var Backdrop = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
|
136
137
|
isRenderPortal = _ref$isRenderPortal === void 0 ? true : _ref$isRenderPortal,
|
|
137
138
|
_ref$isAnimated = _ref.isAnimated,
|
|
138
139
|
isAnimated = _ref$isAnimated === void 0 ? true : _ref$isAnimated,
|
|
140
|
+
_ref$isBodyScrollLock = _ref.isBodyScrollLock,
|
|
141
|
+
isBodyScrollLock = _ref$isBodyScrollLock === void 0 ? false : _ref$isBodyScrollLock,
|
|
139
142
|
_ref$style = _ref.style,
|
|
140
143
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
141
144
|
_ref$zIndex = _ref.zIndex,
|
|
@@ -151,7 +154,9 @@ var Backdrop = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
|
151
154
|
unmountOnExit: true
|
|
152
155
|
}, /*#__PURE__*/React__namespace.createElement(Portal.Portal, {
|
|
153
156
|
isActive: isRenderPortal
|
|
154
|
-
}, /*#__PURE__*/React__namespace.createElement(
|
|
157
|
+
}, /*#__PURE__*/React__namespace.createElement(BodyScrollLock.BodyScrollLock, {
|
|
158
|
+
isActive: isBodyScrollLock
|
|
159
|
+
}), /*#__PURE__*/React__namespace.createElement("div", _extends({
|
|
155
160
|
ref: ref,
|
|
156
161
|
className: classNames__default.default(css.root, className),
|
|
157
162
|
style: _objectSpread2({
|
|
@@ -6,6 +6,7 @@ var React = require('react');
|
|
|
6
6
|
var reactTransitionGroup = require('react-transition-group');
|
|
7
7
|
var classNames = require('classnames');
|
|
8
8
|
var Portal = require('@prom-ui/core/Portal');
|
|
9
|
+
var BodyScrollLock = require('@prom-ui/core/BodyScrollLock');
|
|
9
10
|
|
|
10
11
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
11
12
|
|
|
@@ -123,7 +124,7 @@ function _toPropertyKey(arg) {
|
|
|
123
124
|
|
|
124
125
|
var css = {"root":"Backdrop__root___p-RA9","backdrop":"Backdrop__backdrop___XNSpt","enterActive":"Backdrop__enterActive___ATDSq","exitActive":"Backdrop__exitActive___bnta5","enter":"Backdrop__enter___NmGm7","exit":"Backdrop__exit___sD9v-"};
|
|
125
126
|
|
|
126
|
-
var _excluded = ["isOpen", "isRenderPortal", "isAnimated", "style", "zIndex", "children", "className", "onClick"];
|
|
127
|
+
var _excluded = ["isOpen", "isRenderPortal", "isAnimated", "isBodyScrollLock", "style", "zIndex", "children", "className", "onClick"];
|
|
127
128
|
/**
|
|
128
129
|
* Компонент служит для создания темного фона, который может использоваться в качестве
|
|
129
130
|
* подложки для модальных окон или других всплывающих элементов интерфейса.
|
|
@@ -136,6 +137,8 @@ var Backdrop = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
|
136
137
|
isRenderPortal = _ref$isRenderPortal === void 0 ? true : _ref$isRenderPortal,
|
|
137
138
|
_ref$isAnimated = _ref.isAnimated,
|
|
138
139
|
isAnimated = _ref$isAnimated === void 0 ? true : _ref$isAnimated,
|
|
140
|
+
_ref$isBodyScrollLock = _ref.isBodyScrollLock,
|
|
141
|
+
isBodyScrollLock = _ref$isBodyScrollLock === void 0 ? false : _ref$isBodyScrollLock,
|
|
139
142
|
_ref$style = _ref.style,
|
|
140
143
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
141
144
|
_ref$zIndex = _ref.zIndex,
|
|
@@ -151,7 +154,9 @@ var Backdrop = /*#__PURE__*/React__namespace.forwardRef(function (_ref, ref) {
|
|
|
151
154
|
unmountOnExit: true
|
|
152
155
|
}, /*#__PURE__*/React__namespace.createElement(Portal.Portal, {
|
|
153
156
|
isActive: isRenderPortal
|
|
154
|
-
}, /*#__PURE__*/React__namespace.createElement(
|
|
157
|
+
}, /*#__PURE__*/React__namespace.createElement(BodyScrollLock.BodyScrollLock, {
|
|
158
|
+
isActive: isBodyScrollLock
|
|
159
|
+
}), /*#__PURE__*/React__namespace.createElement("div", _extends({
|
|
155
160
|
ref: ref,
|
|
156
161
|
className: classNames__default.default(css.root, className),
|
|
157
162
|
style: _objectSpread2({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("react-transition-group"),t=require("classnames"),n=require("@prom-ui/core/Portal");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("react-transition-group"),t=require("classnames"),n=require("@prom-ui/core/Portal"),o=require("@prom-ui/core/BodyScrollLock");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&"object"==typeof e&&"default"in e)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var a=c(e),l=i(t);function u(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function s(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?u(Object(t),!0).forEach((function(r){f(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):u(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function f(e,r,t){return(r=function(e){var r=function(e,r){if("object"!=typeof e||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,r||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:String(r)}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function d(){return d=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},d.apply(this,arguments)}function p(e,r){if(null==e)return{};var t,n,o=function(e,r){if(null==e)return{};var t,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)t=i[n],r.indexOf(t)>=0||(o[t]=e[t]);return o}(e,r);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)t=i[n],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var b={root:"mZ7dv",backdrop:"AJyr0",enterActive:"aDdF3",exitActive:"rC-Zl",enter:"NgQBr",exit:"_9LKEC"},y=["isOpen","isRenderPortal","isAnimated","isBodyScrollLock","style","zIndex","children","className","onClick"],O=a.forwardRef((function(e,t){var i=e.isOpen,c=void 0!==i&&i,u=e.isRenderPortal,f=void 0===u||u,O=e.isAnimated,v=void 0===O||O,m=e.isBodyScrollLock,j=void 0!==m&&m,g=e.style,P=void 0===g?{}:g,k=e.zIndex,h=void 0===k?1e3:k,w=e.children,S=e.className,E=e.onClick,x=p(e,y);return a.createElement(r.CSSTransition,{in:c,timeout:v?225:0,classNames:b,unmountOnExit:!0},a.createElement(n.Portal,{isActive:f},a.createElement(o.BodyScrollLock,{isActive:j}),a.createElement("div",d({ref:t,className:l.default(b.root,S),style:s({zIndex:h},P),"aria-hidden":!0,"data-testid":"backdrop","data-qaid":"backdrop"},x),a.createElement("div",{className:b.backdrop,onClick:E}),w)))}));exports.Backdrop=O,require("./style.production.css");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("react-transition-group"),t=require("classnames"),n=require("@prom-ui/core/Portal"),o=require("@prom-ui/core/BodyScrollLock");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function c(e){if(e&&"object"==typeof e&&"default"in e)return e;var r=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n.get?n:{enumerable:!0,get:function(){return e[t]}})}})),r.default=e,Object.freeze(r)}var a=c(e),l=i(t);function u(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function s(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?u(Object(t),!0).forEach((function(r){f(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):u(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function f(e,r,t){return(r=function(e){var r=function(e,r){if("object"!=typeof e||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,r||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(e)}(e,"string");return"symbol"==typeof r?r:String(r)}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function p(){return p=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},p.apply(this,arguments)}function d(e,r){if(null==e)return{};var t,n,o=function(e,r){if(null==e)return{};var t,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)t=i[n],r.indexOf(t)>=0||(o[t]=e[t]);return o}(e,r);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)t=i[n],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(o[t]=e[t])}return o}var b={root:"p-RA9",backdrop:"XNSpt",enterActive:"ATDSq",exitActive:"bnta5",enter:"NmGm7",exit:"sD9v-"},y=["isOpen","isRenderPortal","isAnimated","isBodyScrollLock","style","zIndex","children","className","onClick"],v=a.forwardRef((function(e,t){var i=e.isOpen,c=void 0!==i&&i,u=e.isRenderPortal,f=void 0===u||u,v=e.isAnimated,O=void 0===v||v,m=e.isBodyScrollLock,j=void 0!==m&&m,g=e.style,P=void 0===g?{}:g,k=e.zIndex,S=void 0===k?1e3:k,h=e.children,w=e.className,E=e.onClick,x=d(e,y);return a.createElement(r.CSSTransition,{in:c,timeout:O?225:0,classNames:b,unmountOnExit:!0},a.createElement(n.Portal,{isActive:f},a.createElement(o.BodyScrollLock,{isActive:j}),a.createElement("div",p({ref:t,className:l.default(b.root,w),style:s({zIndex:S},P),"aria-hidden":!0,"data-testid":"backdrop","data-qaid":"backdrop"},x),a.createElement("div",{className:b.backdrop,onClick:E}),h)))}));exports.Backdrop=v,require("./style.production.v2.css");
|
package/Backdrop/index.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ export type BackdropProps = React.ComponentPropsWithRef<'div'> & {
|
|
|
8
8
|
isRenderPortal?: boolean;
|
|
9
9
|
/** Включает/отключает анимацию */
|
|
10
10
|
isAnimated?: boolean;
|
|
11
|
+
/** Запрещает прокрутку `<body>` */
|
|
12
|
+
isBodyScrollLock?: boolean;
|
|
11
13
|
/** Cвойство CSS, которое устанавливает уровень вложенности элемента. */
|
|
12
14
|
zIndex?: number;
|
|
13
15
|
/** @ignore */
|
package/Backdrop/package.json
CHANGED
package/Body/package.json
CHANGED
package/BodyContext/package.json
CHANGED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var useBrowserLayoutEffect = require('@prom-ui/core/useBrowserLayoutEffect');
|
|
7
|
+
|
|
8
|
+
function _interopNamespaceCompat(e) {
|
|
9
|
+
if (e && typeof e === 'object' && 'default' in e) return e;
|
|
10
|
+
var n = Object.create(null);
|
|
11
|
+
if (e) {
|
|
12
|
+
Object.keys(e).forEach(function (k) {
|
|
13
|
+
if (k !== 'default') {
|
|
14
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
15
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
get: function () { return e[k]; }
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
n.default = e;
|
|
23
|
+
return Object.freeze(n);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceCompat(React);
|
|
27
|
+
|
|
28
|
+
var css = {"standart":"BodyScrollLock__standart___AuGtc","safari":"BodyScrollLock__safari___2BLoD"};
|
|
29
|
+
|
|
30
|
+
var testPlatform = function testPlatform(re) {
|
|
31
|
+
var _window$navigator$use;
|
|
32
|
+
return typeof window !== 'undefined' && window.navigator != null ?
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
re.test(((_window$navigator$use = window.navigator['userAgentData']) === null || _window$navigator$use === void 0 ? void 0 : _window$navigator$use.platform) || window.navigator.platform) : false;
|
|
35
|
+
};
|
|
36
|
+
var isMac = function isMac() {
|
|
37
|
+
return testPlatform(/^Mac/i);
|
|
38
|
+
};
|
|
39
|
+
var isIPhone = function isIPhone() {
|
|
40
|
+
return testPlatform(/^iPhone/i);
|
|
41
|
+
};
|
|
42
|
+
var isIPad = function isIPad() {
|
|
43
|
+
return testPlatform(/^iPad/i) ||
|
|
44
|
+
// iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.
|
|
45
|
+
isMac() && navigator.maxTouchPoints > 1;
|
|
46
|
+
};
|
|
47
|
+
var isIOS = function isIOS() {
|
|
48
|
+
return isIPhone() || isIPad();
|
|
49
|
+
};
|
|
50
|
+
var preventScroll = function preventScroll() {
|
|
51
|
+
var className = isIOS() ? css.safari : css.standart;
|
|
52
|
+
var root = document.documentElement;
|
|
53
|
+
var rootStylePaddingRight = root.style['paddingRight'];
|
|
54
|
+
root.style['paddingRight'] = "".concat(window.innerWidth - document.documentElement.clientWidth, "px");
|
|
55
|
+
root.classList.add(className);
|
|
56
|
+
return function () {
|
|
57
|
+
root.style['paddingRight'] = rootStylePaddingRight;
|
|
58
|
+
root.classList.remove(className);
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
var preventScrollCount = 0;
|
|
63
|
+
var preventRestore;
|
|
64
|
+
var BodyScrollLock = function BodyScrollLock(_ref) {
|
|
65
|
+
var _ref$isActive = _ref.isActive,
|
|
66
|
+
isActive = _ref$isActive === void 0 ? true : _ref$isActive;
|
|
67
|
+
useBrowserLayoutEffect.useBrowserLayoutEffect(function () {
|
|
68
|
+
if (!isActive) {
|
|
69
|
+
return function () {};
|
|
70
|
+
}
|
|
71
|
+
preventScrollCount++;
|
|
72
|
+
if (preventScrollCount === 1) {
|
|
73
|
+
preventRestore = preventScroll();
|
|
74
|
+
}
|
|
75
|
+
return function () {
|
|
76
|
+
preventScrollCount--;
|
|
77
|
+
if (preventScrollCount === 0) {
|
|
78
|
+
preventRestore();
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
}, [isActive]);
|
|
82
|
+
return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null);
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
exports.BodyScrollLock = BodyScrollLock;
|
|
86
|
+
|
|
87
|
+
require('./style.development.css');
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var useBrowserLayoutEffect = require('@prom-ui/core/useBrowserLayoutEffect');
|
|
7
|
+
|
|
8
|
+
function _interopNamespaceCompat(e) {
|
|
9
|
+
if (e && typeof e === 'object' && 'default' in e) return e;
|
|
10
|
+
var n = Object.create(null);
|
|
11
|
+
if (e) {
|
|
12
|
+
Object.keys(e).forEach(function (k) {
|
|
13
|
+
if (k !== 'default') {
|
|
14
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
15
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
get: function () { return e[k]; }
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
n.default = e;
|
|
23
|
+
return Object.freeze(n);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
var React__namespace = /*#__PURE__*/_interopNamespaceCompat(React);
|
|
27
|
+
|
|
28
|
+
var css = {"standart":"BodyScrollLock__standart___i1xT-","safari":"BodyScrollLock__safari___Zt3lv"};
|
|
29
|
+
|
|
30
|
+
var testPlatform = function testPlatform(re) {
|
|
31
|
+
var _window$navigator$use;
|
|
32
|
+
return typeof window !== 'undefined' && window.navigator != null ?
|
|
33
|
+
// @ts-ignore
|
|
34
|
+
re.test(((_window$navigator$use = window.navigator['userAgentData']) === null || _window$navigator$use === void 0 ? void 0 : _window$navigator$use.platform) || window.navigator.platform) : false;
|
|
35
|
+
};
|
|
36
|
+
var isMac = function isMac() {
|
|
37
|
+
return testPlatform(/^Mac/i);
|
|
38
|
+
};
|
|
39
|
+
var isIPhone = function isIPhone() {
|
|
40
|
+
return testPlatform(/^iPhone/i);
|
|
41
|
+
};
|
|
42
|
+
var isIPad = function isIPad() {
|
|
43
|
+
return testPlatform(/^iPad/i) ||
|
|
44
|
+
// iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.
|
|
45
|
+
isMac() && navigator.maxTouchPoints > 1;
|
|
46
|
+
};
|
|
47
|
+
var isIOS = function isIOS() {
|
|
48
|
+
return isIPhone() || isIPad();
|
|
49
|
+
};
|
|
50
|
+
var preventScroll = function preventScroll() {
|
|
51
|
+
var className = isIOS() ? css.safari : css.standart;
|
|
52
|
+
var root = document.documentElement;
|
|
53
|
+
var rootStylePaddingRight = root.style['paddingRight'];
|
|
54
|
+
root.style['paddingRight'] = "".concat(window.innerWidth - document.documentElement.clientWidth, "px");
|
|
55
|
+
root.classList.add(className);
|
|
56
|
+
return function () {
|
|
57
|
+
root.style['paddingRight'] = rootStylePaddingRight;
|
|
58
|
+
root.classList.remove(className);
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
var preventScrollCount = 0;
|
|
63
|
+
var preventRestore;
|
|
64
|
+
var BodyScrollLock = function BodyScrollLock(_ref) {
|
|
65
|
+
var _ref$isActive = _ref.isActive,
|
|
66
|
+
isActive = _ref$isActive === void 0 ? true : _ref$isActive;
|
|
67
|
+
useBrowserLayoutEffect.useBrowserLayoutEffect(function () {
|
|
68
|
+
if (!isActive) {
|
|
69
|
+
return function () {};
|
|
70
|
+
}
|
|
71
|
+
preventScrollCount++;
|
|
72
|
+
if (preventScrollCount === 1) {
|
|
73
|
+
preventRestore = preventScroll();
|
|
74
|
+
}
|
|
75
|
+
return function () {
|
|
76
|
+
preventScrollCount--;
|
|
77
|
+
if (preventScrollCount === 0) {
|
|
78
|
+
preventRestore();
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
}, [isActive]);
|
|
82
|
+
return /*#__PURE__*/React__namespace.createElement(React__namespace.Fragment, null);
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
exports.BodyScrollLock = BodyScrollLock;
|
|
86
|
+
|
|
87
|
+
require('./style.development.v2.css');
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@prom-ui/core/useBrowserLayoutEffect");function n(e){if(e&&"object"==typeof e&&"default"in e)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var r,o=n(e),i="AuGtc",u="_2BLoD",c=function(e){var t;return"undefined"!=typeof window&&null!=window.navigator&&e.test((null===(t=window.navigator.userAgentData)||void 0===t?void 0:t.platform)||window.navigator.platform)},a=function(){return c(/^iPad/i)||c(/^Mac/i)&&navigator.maxTouchPoints>1},d=function(){return c(/^iPhone/i)||a()},f=0;exports.BodyScrollLock=function(e){var n=e.isActive,c=void 0===n||n;return t.useBrowserLayoutEffect((function(){return c?(1===++f&&(e=d()?u:i,t=document.documentElement,n=t.style.paddingRight,t.style.paddingRight="".concat(window.innerWidth-document.documentElement.clientWidth,"px"),t.classList.add(e),r=function(){t.style.paddingRight=n,t.classList.remove(e)}),function(){0===--f&&r()}):function(){};var e,t,n}),[c]),o.createElement(o.Fragment,null)},require("./style.production.css");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@prom-ui/core/useBrowserLayoutEffect");function n(e){if(e&&"object"==typeof e&&"default"in e)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var r,i=n(e),o="i1xT-",u="Zt3lv",c=function(e){var t;return"undefined"!=typeof window&&null!=window.navigator&&e.test((null===(t=window.navigator.userAgentData)||void 0===t?void 0:t.platform)||window.navigator.platform)},a=function(){return c(/^iPad/i)||c(/^Mac/i)&&navigator.maxTouchPoints>1},d=function(){return c(/^iPhone/i)||a()},f=0;exports.BodyScrollLock=function(e){var n=e.isActive,c=void 0===n||n;return t.useBrowserLayoutEffect((function(){return c?(1===++f&&(e=d()?u:o,t=document.documentElement,n=t.style.paddingRight,t.style.paddingRight="".concat(window.innerWidth-document.documentElement.clientWidth,"px"),t.classList.add(e),r=function(){t.style.paddingRight=n,t.classList.remove(e)}),function(){0===--f&&r()}):function(){};var e,t,n}),[c]),i.createElement(i.Fragment,null)},require("./style.production.v2.css");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.BodyScrollLock__standart___AuGtc{overflow:hidden!important;overscroll-behavior:none!important}.BodyScrollLock__safari___2BLoD{overflow:hidden!important;overscroll-behavior:none!important;touch-action:none!important;-webkit-overflow-scrolling:none!important}.BodyScrollLock__safari___2BLoD *{overscroll-behavior:contain}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.BodyScrollLock__standart___i1xT-{overflow:hidden!important;overscroll-behavior:none!important}.BodyScrollLock__safari___Zt3lv{overflow:hidden!important;overscroll-behavior:none!important;touch-action:none!important;-webkit-overflow-scrolling:none!important}.BodyScrollLock__safari___Zt3lv *{overscroll-behavior:contain}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.AuGtc{overflow:hidden!important;overscroll-behavior:none!important}._2BLoD{overflow:hidden!important;overscroll-behavior:none!important;touch-action:none!important;-webkit-overflow-scrolling:none!important}._2BLoD *{overscroll-behavior:contain}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.i1xT-{overflow:hidden!important;overscroll-behavior:none!important}.Zt3lv{overflow:hidden!important;overscroll-behavior:none!important;touch-action:none!important;-webkit-overflow-scrolling:none!important}.Zt3lv *{overscroll-behavior:contain}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const preventScroll: () => () => void;
|
package/Box/package.json
CHANGED
package/Button/package.json
CHANGED
package/Checkbox/package.json
CHANGED
package/Flex/package.json
CHANGED
package/Grid/package.json
CHANGED
package/Icon/package.json
CHANGED
package/Image/package.json
CHANGED
package/ImageEmoji/package.json
CHANGED
package/Input/package.json
CHANGED
package/InputField/package.json
CHANGED
package/KeyPress/package.json
CHANGED
package/Line/package.json
CHANGED
package/Link/package.json
CHANGED
package/List/package.json
CHANGED
package/Media/package.json
CHANGED