@prom-ui/core 0.0.24 → 0.0.32

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.
Files changed (221) hide show
  1. package/Body/cjs/index.development.js +14 -0
  2. package/Body/cjs/index.production.js +1 -0
  3. package/Body/cjs/style.development.css +1 -0
  4. package/Body/cjs/style.production.css +1 -0
  5. package/Body/index.js +5 -12
  6. package/Body/package.json +1 -1
  7. package/Box/cjs/index.development.js +20 -0
  8. package/Box/cjs/index.production.js +1 -0
  9. package/Box/cjs/style.development.css +1 -0
  10. package/Box/cjs/style.production.css +1 -0
  11. package/Box/index.js +5 -18
  12. package/Box/package.json +1 -1
  13. package/Button/cjs/index.development.js +95 -0
  14. package/Button/cjs/index.production.js +1 -0
  15. package/Button/cjs/style.development.css +1 -0
  16. package/Button/cjs/style.production.css +1 -0
  17. package/Button/index.d.ts +5 -4
  18. package/Button/index.js +4 -81
  19. package/Button/package.json +1 -1
  20. package/ButtonPageUp/cjs/index.development.js +170 -0
  21. package/ButtonPageUp/cjs/index.production.js +1 -0
  22. package/ButtonPageUp/index.d.ts +12 -5
  23. package/ButtonPageUp/index.js +4 -169
  24. package/ButtonPageUp/package.json +1 -2
  25. package/Checkbox/cjs/index.development.js +111 -0
  26. package/Checkbox/cjs/index.production.js +1 -0
  27. package/Checkbox/cjs/style.development.css +1 -0
  28. package/Checkbox/cjs/style.production.css +1 -0
  29. package/Checkbox/index.d.ts +4 -4
  30. package/Checkbox/index.js +4 -96
  31. package/Checkbox/package.json +1 -1
  32. package/Flex/cjs/index.development.js +25 -0
  33. package/Flex/cjs/index.production.js +1 -0
  34. package/Flex/cjs/style.development.css +1 -0
  35. package/Flex/cjs/style.production.css +1 -0
  36. package/Flex/index.js +5 -23
  37. package/Flex/package.json +1 -1
  38. package/Grid/cjs/index.development.js +25 -0
  39. package/Grid/cjs/index.production.js +1 -0
  40. package/Grid/cjs/style.development.css +1 -0
  41. package/Grid/cjs/style.production.css +1 -0
  42. package/Grid/index.js +5 -23
  43. package/Grid/package.json +1 -1
  44. package/Icon/cjs/index.development.js +41 -0
  45. package/Icon/cjs/index.production.js +1 -0
  46. package/Icon/cjs/style.development.css +1 -0
  47. package/Icon/cjs/style.production.css +1 -0
  48. package/Icon/index.d.ts +7 -12
  49. package/Icon/index.js +4 -76
  50. package/Icon/package.json +1 -1
  51. package/Image/cjs/index.development.js +20 -0
  52. package/Image/cjs/index.production.js +1 -0
  53. package/Image/cjs/style.development.css +1 -0
  54. package/Image/cjs/style.production.css +1 -0
  55. package/Image/index.js +5 -18
  56. package/Image/package.json +1 -1
  57. package/ImageEmoji/cjs/index.development.js +90 -0
  58. package/ImageEmoji/cjs/index.production.js +1 -0
  59. package/ImageEmoji/index.d.ts +6 -4
  60. package/ImageEmoji/index.js +4 -86
  61. package/ImageEmoji/package.json +1 -1
  62. package/Input/cjs/index.development.js +39 -0
  63. package/Input/cjs/index.production.js +1 -0
  64. package/Input/cjs/style.development.css +1 -0
  65. package/Input/cjs/style.production.css +1 -0
  66. package/Input/index.d.ts +23 -23
  67. package/Input/index.js +4 -81
  68. package/Input/package.json +1 -1
  69. package/KeyPress/cjs/index.development.js +56 -0
  70. package/KeyPress/cjs/index.production.js +1 -0
  71. package/KeyPress/index.d.ts +8 -7
  72. package/KeyPress/index.js +5 -53
  73. package/KeyPress/package.json +2 -5
  74. package/Line/cjs/index.development.js +20 -0
  75. package/Line/cjs/index.production.js +1 -0
  76. package/Line/cjs/style.development.css +1 -0
  77. package/Line/cjs/style.production.css +1 -0
  78. package/Line/index.js +5 -18
  79. package/Line/package.json +1 -1
  80. package/Link/cjs/index.development.js +22 -0
  81. package/Link/cjs/index.production.js +1 -0
  82. package/Link/cjs/style.development.css +1 -0
  83. package/Link/cjs/style.production.css +1 -0
  84. package/Link/index.js +5 -20
  85. package/Link/package.json +1 -1
  86. package/List/cjs/index.development.js +25 -0
  87. package/List/cjs/index.production.js +1 -0
  88. package/List/cjs/style.development.css +1 -0
  89. package/List/cjs/style.production.css +1 -0
  90. package/List/index.js +5 -23
  91. package/List/package.json +1 -1
  92. package/Media/cjs/index.development.js +98 -0
  93. package/Media/cjs/index.production.js +1 -0
  94. package/Media/context.d.ts +2 -2
  95. package/Media/index.d.ts +9 -11
  96. package/Media/index.js +5 -73
  97. package/Media/package.json +1 -1
  98. package/Media/useMedia.d.ts +7 -0
  99. package/OutsideClick/cjs/index.development.js +84 -0
  100. package/OutsideClick/cjs/index.production.js +1 -0
  101. package/OutsideClick/index.d.ts +6 -3
  102. package/OutsideClick/index.js +4 -74
  103. package/OutsideClick/package.json +2 -5
  104. package/Picture/cjs/index.development.js +25 -0
  105. package/Picture/cjs/index.production.js +1 -0
  106. package/Picture/cjs/style.development.css +1 -0
  107. package/Picture/cjs/style.production.css +1 -0
  108. package/Picture/index.js +5 -23
  109. package/Picture/package.json +1 -1
  110. package/PortableOverlay/cjs/index.development.js +111 -0
  111. package/PortableOverlay/cjs/index.production.js +1 -0
  112. package/PortableOverlay/cjs/style.development.css +1 -0
  113. package/PortableOverlay/cjs/style.production.css +1 -0
  114. package/PortableOverlay/index.d.ts +6 -4
  115. package/PortableOverlay/index.js +5 -112
  116. package/PortableOverlay/package.json +1 -2
  117. package/Portal/cjs/index.development.js +57 -0
  118. package/Portal/cjs/index.production.js +1 -0
  119. package/Portal/index.d.ts +6 -4
  120. package/Portal/index.js +5 -52
  121. package/Portal/package.json +2 -5
  122. package/Rating/cjs/index.development.js +105 -0
  123. package/Rating/cjs/index.production.js +1 -0
  124. package/Rating/cjs/style.development.css +1 -0
  125. package/Rating/cjs/style.production.css +1 -0
  126. package/Rating/index.d.ts +6 -5
  127. package/Rating/index.js +4 -98
  128. package/Rating/package.json +1 -1
  129. package/SafeQuery/cjs/index.development.js +181 -0
  130. package/SafeQuery/cjs/index.production.js +1 -0
  131. package/SafeQuery/cjs/style.development.css +1 -0
  132. package/SafeQuery/cjs/style.production.css +1 -0
  133. package/SafeQuery/components/Error.d.ts +2 -2
  134. package/SafeQuery/index.d.ts +7 -4
  135. package/SafeQuery/index.js +4 -173
  136. package/SafeQuery/package.json +1 -1
  137. package/Scroll/cjs/index.development.js +40 -0
  138. package/Scroll/cjs/index.production.js +1 -0
  139. package/Scroll/cjs/style.development.css +1 -0
  140. package/Scroll/cjs/style.production.css +1 -0
  141. package/Scroll/index.d.ts +18 -16
  142. package/Scroll/index.js +4 -76
  143. package/Scroll/package.json +1 -1
  144. package/ScrollControls/cjs/index.development.js +243 -0
  145. package/ScrollControls/cjs/index.production.js +1 -0
  146. package/ScrollControls/cjs/style.development.css +1 -0
  147. package/ScrollControls/cjs/style.production.css +1 -0
  148. package/ScrollControls/index.d.ts +16 -6
  149. package/ScrollControls/index.js +4 -244
  150. package/ScrollControls/package.json +1 -2
  151. package/SideOverlay/cjs/index.development.js +210 -0
  152. package/SideOverlay/cjs/index.production.js +1 -0
  153. package/SideOverlay/cjs/style.development.css +1 -0
  154. package/SideOverlay/cjs/style.production.css +1 -0
  155. package/SideOverlay/index.d.ts +29 -14
  156. package/SideOverlay/index.js +4 -251
  157. package/SideOverlay/package.json +1 -1
  158. package/SimpleSlider/cjs/index.development.js +433 -0
  159. package/SimpleSlider/cjs/index.production.js +1 -0
  160. package/SimpleSlider/cjs/style.development.css +1 -0
  161. package/SimpleSlider/cjs/style.production.css +1 -0
  162. package/SimpleSlider/index.d.ts +17 -3
  163. package/SimpleSlider/index.js +4 -477
  164. package/SimpleSlider/package.json +1 -1
  165. package/Skeleton/cjs/index.development.js +103 -0
  166. package/Skeleton/cjs/index.production.js +1 -0
  167. package/Skeleton/cjs/style.development.css +1 -0
  168. package/Skeleton/cjs/style.production.css +1 -0
  169. package/Skeleton/index.d.ts +9 -5
  170. package/Skeleton/index.js +4 -110
  171. package/Skeleton/package.json +1 -1
  172. package/Spinner/cjs/index.development.js +85 -0
  173. package/Spinner/cjs/index.production.js +1 -0
  174. package/Spinner/cjs/style.development.css +1 -0
  175. package/Spinner/cjs/style.production.css +1 -0
  176. package/Spinner/index.d.ts +7 -6
  177. package/Spinner/index.js +5 -76
  178. package/Spinner/package.json +1 -1
  179. package/Text/cjs/index.development.js +20 -0
  180. package/Text/cjs/index.production.js +1 -0
  181. package/Text/cjs/style.development.css +1 -0
  182. package/Text/cjs/style.production.css +1 -0
  183. package/Text/index.js +5 -18
  184. package/Text/package.json +1 -1
  185. package/TextEmoji/cjs/index.development.js +94 -0
  186. package/TextEmoji/cjs/index.production.js +1 -0
  187. package/TextEmoji/index.d.ts +4 -4
  188. package/TextEmoji/index.js +4 -84
  189. package/TextEmoji/package.json +1 -1
  190. package/Tumbler/cjs/index.development.js +110 -0
  191. package/Tumbler/cjs/index.production.js +1 -0
  192. package/Tumbler/cjs/style.development.css +1 -0
  193. package/Tumbler/cjs/style.production.css +1 -0
  194. package/Tumbler/index.d.ts +4 -4
  195. package/Tumbler/index.js +4 -95
  196. package/Tumbler/package.json +1 -1
  197. package/package.json +7 -10
  198. package/Body/style.css +0 -741
  199. package/Box/style.css +0 -9676
  200. package/Button/style.css +0 -3393
  201. package/Checkbox/style.css +0 -133
  202. package/Flex/style.css +0 -786
  203. package/Grid/style.css +0 -7350
  204. package/Icon/style.css +0 -46
  205. package/Image/style.css +0 -664
  206. package/Input/style.css +0 -345
  207. package/Line/style.css +0 -138
  208. package/Link/style.css +0 -259
  209. package/List/style.css +0 -312
  210. package/Picture/style.css +0 -1426
  211. package/PortableOverlay/style.css +0 -44
  212. package/Rating/style.css +0 -26
  213. package/SafeQuery/style.css +0 -4
  214. package/Scroll/style.css +0 -169
  215. package/ScrollControls/style.css +0 -67
  216. package/SideOverlay/style.css +0 -208
  217. package/SimpleSlider/style.css +0 -134
  218. package/Skeleton/style.css +0 -145
  219. package/Spinner/style.css +0 -80
  220. package/Text/style.css +0 -840
  221. package/Tumbler/style.css +0 -118
@@ -0,0 +1 @@
1
+ .mOlOq{position:relative;overflow:hidden}.rZcyK{position:absolute;top:50%;transform:translateY(-50%);border:0;box-shadow:0 0 10px rgba(0,0,0,.08);height:66px;max-width:30px;max-height:50%;min-height:24px}.rZcyK:disabled{opacity:.3;pointer-events:auto}.rZcyK:active{background:var(--black-200)}.cF2KB{left:0;margin-left:var(--pds-spacing-xs)}._9B-9g{right:0;margin-right:var(--pds-spacing-xs)}.lzBzL{display:block;width:auto;height:24px;fill:currentColor;max-height:80%}.StbVV ._9B-9g{right:-40px}.StbVV .cF2KB{left:-40px}.IONkE:disabled{opacity:0;pointer-events:none;visibility:hidden}@media (hover:hover){.StbVV:hover ._9B-9g{right:0}.StbVV:hover .cF2KB{left:0}}
@@ -1,8 +1,18 @@
1
- import React from 'react';
2
- import { tScrollControlsButton } from './ScrollControlsButton';
3
- export declare type tScrollControls = tScrollControlsButton & {
4
- className?: string;
5
- children: (ref: React.RefObject<HTMLElement>) => void;
1
+ import * as React from 'react';
2
+ export declare type ScrollControlsProps = React.ComponentProps<"div"> & {
3
+ /** Принимает children как функцию, `(scrollRef) =>` */
4
+ children: (ref: React.RefObject<HTMLElement>) => any;
5
+ /** Показывать при наведении */
6
6
  showOnHover?: boolean;
7
+ /** Скрыть если не активно */
8
+ hideOnDisabled?: boolean;
9
+ /** Если передать `false` компонент перестанет работать */
10
+ isActive?: boolean;
11
+ onClickNext?: () => void;
12
+ onClickPrev?: () => void;
13
+ /** Устанавливает цвет кнопок */
14
+ theme?: 'white' | 'gray';
15
+ /** Устанавливает z-index кнопкам */
16
+ zIndex?: number;
7
17
  };
8
- export declare const ScrollControls: React.FC<tScrollControls>;
18
+ export declare const ScrollControls: React.ForwardRefExoticComponent<Pick<ScrollControlsProps, "hideOnDisabled" | "isActive" | "onClickNext" | "onClickPrev" | "showOnHover" | "zIndex" | "theme" | "key" | keyof React.HTMLAttributes<HTMLDivElement>> & React.RefAttributes<HTMLDivElement>>;
@@ -1,247 +1,7 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
- var PropTypes = require('prop-types');
7
- var classNames = require('classnames');
8
- var ttag = require('ttag');
9
- var Button = require('@prom-ui/core/Button');
10
- var Icon = require('@prom-ui/core/Icon');
11
- var Left = require('@prom-ui/icons/Left');
12
- var Right = require('@prom-ui/icons/Right');
13
-
14
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
-
16
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
- var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
18
- var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
19
-
20
- /******************************************************************************
21
- Copyright (c) Microsoft Corporation.
22
-
23
- Permission to use, copy, modify, and/or distribute this software for any
24
- purpose with or without fee is hereby granted.
25
-
26
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
27
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
28
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
29
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
30
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
31
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
32
- PERFORMANCE OF THIS SOFTWARE.
33
- ***************************************************************************** */
34
-
35
- var __assign = function() {
36
- __assign = Object.assign || function __assign(t) {
37
- for (var s, i = 1, n = arguments.length; i < n; i++) {
38
- s = arguments[i];
39
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
40
- }
41
- return t;
42
- };
43
- return __assign.apply(this, arguments);
44
- };
45
-
46
- function __rest(s, e) {
47
- var t = {};
48
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
49
- t[p] = s[p];
50
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
51
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
52
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
53
- t[p[i]] = s[p[i]];
54
- }
55
- return t;
56
- }
57
-
58
- function __makeTemplateObject(cooked, raw) {
59
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
60
- return cooked;
3
+ if (process.env.NODE_ENV === 'production') {
4
+ module.exports = require('./cjs/index.production.js');
5
+ } else {
6
+ module.exports = require('./cjs/index.development.js');
61
7
  }
62
-
63
- var css = {"root":"ScrollControls__root___mOlOq","buttonCommon":"ScrollControls__buttonCommon___rZcyK","prev":"ScrollControls__prev___cF2KB ScrollControls__buttonCommon___rZcyK","next":"ScrollControls__next___9B-9g ScrollControls__buttonCommon___rZcyK","icon":"ScrollControls__icon___lzBzL","showOnHover":"ScrollControls__showOnHover___StbVV","hideOnDisabled":"ScrollControls__hideOnDisabled___IONkE"};
64
-
65
- var DIRECTION_NEXT = 1;
66
- var DIRECTION_PREV = -1;
67
- var CONTROLS_UPDATE_DELAY = 100;
68
- var ScrollControlsButton = function (_a) {
69
- var _b, _c;
70
-
71
- var scrollRef = _a.scrollRef,
72
- _d = _a.hideOnDisabled,
73
- hideOnDisabled = _d === void 0 ? false : _d,
74
- _e = _a.isActive,
75
- isActive = _e === void 0 ? true : _e,
76
- onClickNext = _a.onClickNext,
77
- onClickPrev = _a.onClickPrev,
78
- zIndex = _a.zIndex,
79
- _f = _a.theme,
80
- theme = _f === void 0 ? 'white' : _f,
81
- children = _a.children;
82
- var updateControlsTimer = React.useRef(null);
83
-
84
- var _g = React.useState({
85
- prev: false,
86
- next: false
87
- }),
88
- controlsVisible = _g[0],
89
- setControlsVisible = _g[1];
90
-
91
- var updateControlsVisible = function (nextScrollLeft) {
92
- var _a = scrollRef.current,
93
- scrollLeft = _a.scrollLeft,
94
- scrollWidth = _a.scrollWidth,
95
- clientWidth = _a.clientWidth;
96
- var currentScrollLeft = (Number.isInteger(nextScrollLeft) ? nextScrollLeft : scrollLeft) || 0;
97
- setControlsVisible({
98
- prev: currentScrollLeft > 1,
99
- next: currentScrollLeft < scrollWidth - clientWidth
100
- });
101
- };
102
-
103
- var updateScrollLeft = function (direction) {
104
- var _a = scrollRef.current,
105
- scrollLeft = _a.scrollLeft,
106
- clientWidth = _a.clientWidth;
107
- var offset = clientWidth * direction;
108
- updateControlsVisible(scrollLeft + offset);
109
- requestAnimationFrame(function () {
110
- if (scrollRef.current) {
111
- scrollRef.current.scrollBy({
112
- left: offset,
113
- behavior: 'smooth'
114
- });
115
- }
116
- });
117
- };
118
-
119
- var handleOnClickPrev = function () {
120
- if (typeof onClickPrev === 'function') {
121
- onClickPrev();
122
- }
123
-
124
- updateScrollLeft(DIRECTION_PREV);
125
- };
126
-
127
- var handleOnClickNext = function () {
128
- if (typeof onClickNext === 'function') {
129
- onClickNext();
130
- }
131
-
132
- updateScrollLeft(DIRECTION_NEXT);
133
- };
134
-
135
- var handleOnScroll = function () {
136
- clearTimeout(updateControlsTimer.current || 0);
137
- updateControlsTimer.current = setTimeout(updateControlsVisible, CONTROLS_UPDATE_DELAY);
138
- };
139
-
140
- React.useEffect(function () {
141
- if (scrollRef.current && isActive) {
142
- updateControlsVisible();
143
- scrollRef.current.addEventListener('scroll', handleOnScroll);
144
- }
145
-
146
- return function () {
147
- if (scrollRef.current && isActive) {
148
- scrollRef.current.removeEventListener('scroll', handleOnScroll);
149
- }
150
- };
151
- }, [isActive, children]);
152
-
153
- if (isActive && (controlsVisible.prev || controlsVisible.next)) {
154
- return React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(Button.Button, {
155
- "button-theme": theme,
156
- "button-round": 'xs',
157
- "button-weight": 'normal',
158
- "button-padding": 'none xxs',
159
- className: classNames__default["default"](css.prev, (_b = {}, _b[css.hideOnDisabled] = hideOnDisabled, _b)),
160
- onClick: handleOnClickPrev,
161
- style: {
162
- zIndex: zIndex
163
- },
164
- disabled: !controlsVisible.prev,
165
- title: ttag.t(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\u041D\u0430\u0437\u0430\u0434"], ["\u041D\u0430\u0437\u0430\u0434"])))
166
- }, React__default["default"].createElement(Icon.Icon, {
167
- className: css.icon,
168
- "icon-as": Left.Left
169
- })), React__default["default"].createElement(Button.Button, {
170
- "button-theme": theme,
171
- "button-round": 'xs',
172
- "button-weight": 'normal',
173
- "button-padding": 'none xxs',
174
- className: classNames__default["default"](css.next, (_c = {}, _c[css.hideOnDisabled] = hideOnDisabled, _c)),
175
- onClick: handleOnClickNext,
176
- style: {
177
- zIndex: zIndex
178
- },
179
- disabled: !controlsVisible.next,
180
- title: ttag.t(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\u0414\u0430\u043B\u0435\u0435"], ["\u0414\u0430\u043B\u0435\u0435"])))
181
- }, React__default["default"].createElement(Icon.Icon, {
182
- className: css.icon,
183
- "icon-as": Right.Right
184
- })));
185
- }
186
-
187
- return null;
188
- };
189
- var templateObject_1, templateObject_2;
190
-
191
- var ScrollControls = React.forwardRef(function (_a, ref) {
192
- var _b;
193
-
194
- var children = _a.children,
195
- className = _a.className,
196
- _c = _a.hideOnDisabled,
197
- hideOnDisabled = _c === void 0 ? false : _c,
198
- _d = _a.isActive,
199
- isActive = _d === void 0 ? true : _d,
200
- onClickNext = _a.onClickNext,
201
- onClickPrev = _a.onClickPrev,
202
- _e = _a.showOnHover,
203
- showOnHover = _e === void 0 ? false : _e,
204
- zIndex = _a.zIndex,
205
- _f = _a.theme,
206
- theme = _f === void 0 ? 'white' : _f,
207
- props = __rest(_a, ["children", "className", "hideOnDisabled", "isActive", "onClickNext", "onClickPrev", "showOnHover", "zIndex", "theme"]);
208
-
209
- var scrollRef = React.useRef(null);
210
- return React__default["default"].createElement("div", __assign({
211
- ref: ref,
212
- className: classNames__default["default"](css.root, className, (_b = {}, _b[css.showOnHover] = showOnHover, _b))
213
- }, props), children(scrollRef), React__default["default"].createElement(ScrollControlsButton, {
214
- scrollRef: scrollRef,
215
- hideOnDisabled: hideOnDisabled,
216
- isActive: isActive,
217
- onClickNext: onClickNext,
218
- onClickPrev: onClickPrev,
219
- zIndex: zIndex,
220
- theme: theme
221
- }, children));
222
- });
223
- ScrollControls.propTypes = {
224
- /** Принимает children как функцию, `(scrollRef) =>` */
225
- // children: PropTypes.func.isRequired,
226
-
227
- /** Если передать `false` компонент перестанет работать */
228
- isActive: PropTypes__default["default"].bool,
229
- onClickNext: PropTypes__default["default"].func,
230
- onClickPrev: PropTypes__default["default"].func,
231
-
232
- /** Показывать при наведении */
233
- showOnHover: PropTypes__default["default"].bool,
234
-
235
- /** Скрыть если не активно */
236
- hideOnDisabled: PropTypes__default["default"].bool,
237
-
238
- /** Устанавливает z-index кнопкам */
239
- zIndex: PropTypes__default["default"].number,
240
-
241
- /** Устанавливает цвет кнопок */
242
- theme: PropTypes__default["default"].oneOf(['white', 'gray'])
243
- };
244
-
245
- exports.ScrollControls = ScrollControls;
246
-
247
- require('./style.css');
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "@prom-ui/core/ScrollControls",
3
- "version": "0.0.24",
3
+ "version": "0.0.32",
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "sideEffects": [
7
7
  "*.css"
8
8
  ],
9
9
  "dependencies": {
10
- "@prom-ui/icons": "^0.0.5",
11
10
  "classnames": "^2.3.1",
12
11
  "ttag": "^1.7.24"
13
12
  }
@@ -0,0 +1,210 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var ttag = require('ttag');
7
+ var ScrollLock = require('react-scrolllock');
8
+ var Portal = require('@prom-ui/core/Portal');
9
+ var KeyPress = require('@prom-ui/core/KeyPress');
10
+ var evokit = require('evokit');
11
+ var reactTransitionGroup = require('react-transition-group');
12
+
13
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
+
15
+ function _interopNamespace(e) {
16
+ if (e && e.__esModule) return e;
17
+ var n = Object.create(null);
18
+ if (e) {
19
+ Object.keys(e).forEach(function (k) {
20
+ if (k !== 'default') {
21
+ var d = Object.getOwnPropertyDescriptor(e, k);
22
+ Object.defineProperty(n, k, d.get ? d : {
23
+ enumerable: true,
24
+ get: function () { return e[k]; }
25
+ });
26
+ }
27
+ });
28
+ }
29
+ n["default"] = e;
30
+ return Object.freeze(n);
31
+ }
32
+
33
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
34
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
35
+ var ScrollLock__default = /*#__PURE__*/_interopDefaultLegacy(ScrollLock);
36
+
37
+ /******************************************************************************
38
+ Copyright (c) Microsoft Corporation.
39
+
40
+ Permission to use, copy, modify, and/or distribute this software for any
41
+ purpose with or without fee is hereby granted.
42
+
43
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
44
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
45
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
46
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
47
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
48
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
49
+ PERFORMANCE OF THIS SOFTWARE.
50
+ ***************************************************************************** */
51
+
52
+ var __assign = function() {
53
+ __assign = Object.assign || function __assign(t) {
54
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
55
+ s = arguments[i];
56
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
57
+ }
58
+ return t;
59
+ };
60
+ return __assign.apply(this, arguments);
61
+ };
62
+
63
+ function __rest(s, e) {
64
+ var t = {};
65
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
66
+ t[p] = s[p];
67
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
68
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
69
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
70
+ t[p[i]] = s[p[i]];
71
+ }
72
+ return t;
73
+ }
74
+
75
+ function __makeTemplateObject(cooked, raw) {
76
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
77
+ return cooked;
78
+ }
79
+
80
+ var css = {"root":"SideOverlay__root___zoSc7","backdrop":"SideOverlay__backdrop___v5Neh","popup":"SideOverlay__popup___LsB4w","content":"SideOverlay__content___D9ezA","close":"SideOverlay__close___aiN5k","popup_placement_top":"SideOverlay__popup_placement_top___BSFf7","popup_placement_bottom":"SideOverlay__popup_placement_bottom___k1gGY","popup_placement_right":"SideOverlay__popup_placement_right___w9HUr","popup_placement_left":"SideOverlay__popup_placement_left___DWBxa","enter":"SideOverlay__enter___ukL-B","exit":"SideOverlay__exit___QE5yq","enterActive":"SideOverlay__enterActive___VPRAq","exitActive":"SideOverlay__exitActive___FhiSX"};
81
+
82
+ var BLOCKS_PRESET = {
83
+ css: css,
84
+ b: ''
85
+ };
86
+ var Root = evokit.createBlock('div', 'root', [], BLOCKS_PRESET);
87
+ var Backdrop = evokit.createBlock('div', 'backdrop', [], BLOCKS_PRESET);
88
+ var Popup = evokit.createBlock('div', 'popup', ['placement'], BLOCKS_PRESET);
89
+ var Content = evokit.createBlock('div', 'content', [], BLOCKS_PRESET);
90
+ var Close = evokit.createBlock('button', 'close', [], BLOCKS_PRESET);
91
+ var Animate = function (_a) {
92
+ var _b = _a.open,
93
+ open = _b === void 0 ? false : _b,
94
+ children = _a.children,
95
+ _c = _a.enabled,
96
+ enabled = _c === void 0 ? true : _c,
97
+ onEnter = _a.onEnter;
98
+ return React__default["default"].createElement(reactTransitionGroup.CSSTransition, {
99
+ in: open,
100
+ timeout: enabled ? 225 : 0,
101
+ classNames: css,
102
+ unmountOnExit: true,
103
+ onEnter: onEnter
104
+ }, children);
105
+ };
106
+
107
+ var getPopupStyle = function (placement, size) {
108
+ if (['top', 'bottom'].includes(placement)) {
109
+ return {
110
+ height: size
111
+ };
112
+ }
113
+
114
+ return {
115
+ width: size
116
+ };
117
+ };
118
+
119
+ var SideOverlay = function (_a) {
120
+ var children = _a.children,
121
+ _b = _a.classNames,
122
+ classNames = _b === void 0 ? {} : _b,
123
+ onClose = _a.onClose,
124
+ onOpen = _a.onOpen,
125
+ _c = _a.open,
126
+ open = _c === void 0 ? false : _c,
127
+ _d = _a.padding,
128
+ padding = _d === void 0 ? '45px 30px 30px 30px' : _d,
129
+ _e = _a.placement,
130
+ placement = _e === void 0 ? 'left' : _e,
131
+ _f = _a.size,
132
+ size = _f === void 0 ? 400 : _f,
133
+ _g = _a.useCloseButton,
134
+ useCloseButton = _g === void 0 ? true : _g,
135
+ _h = _a.useEscapeClose,
136
+ useEscapeClose = _h === void 0 ? true : _h,
137
+ _j = _a.useOutsideClose,
138
+ useOutsideClose = _j === void 0 ? true : _j,
139
+ _k = _a.usePortal,
140
+ usePortal = _k === void 0 ? true : _k,
141
+ _l = _a.useScrollLock,
142
+ useScrollLock = _l === void 0 ? true : _l,
143
+ _m = _a.useTouchScrollable,
144
+ useTouchScrollable = _m === void 0 ? true : _m,
145
+ _o = _a.zIndex,
146
+ zIndex = _o === void 0 ? 5000 : _o,
147
+ dataQaId = _a.dataQaId,
148
+ contentRef = _a.contentRef,
149
+ _p = _a.animationEnabled,
150
+ animationEnabled = _p === void 0 ? true : _p,
151
+ props = __rest(_a, ["children", "classNames", "onClose", "onOpen", "open", "padding", "placement", "size", "useCloseButton", "useEscapeClose", "useOutsideClose", "usePortal", "useScrollLock", "useTouchScrollable", "zIndex", "dataQaId", "contentRef", "animationEnabled"]);
152
+
153
+ return React__namespace.createElement(Animate, {
154
+ open: open,
155
+ onEnter: function () {
156
+ onOpen && onOpen();
157
+ },
158
+ enabled: animationEnabled
159
+ }, React__namespace.createElement(Portal.Portal, {
160
+ isActive: usePortal
161
+ }, React__namespace.createElement(Root, __assign({
162
+ role: 'presentation',
163
+ style: {
164
+ zIndex: zIndex
165
+ },
166
+ className: classNames.Root
167
+ }, props), React__namespace.createElement(ScrollLock__default["default"], {
168
+ isActive: useScrollLock
169
+ }), React__namespace.createElement(KeyPress.KeyPress, {
170
+ isActive: useEscapeClose,
171
+ code: 'Escape',
172
+ onKeyDown: onClose
173
+ }), React__namespace.createElement(Backdrop, {
174
+ className: classNames.Backdrop,
175
+ "aria-hidden": true,
176
+ onClick: function (e) {
177
+ if (useOutsideClose && onClose) {
178
+ onClose(e);
179
+ }
180
+ }
181
+ }), React__namespace.createElement(Popup, {
182
+ "popup-placement": placement,
183
+ className: classNames.Popup,
184
+ style: getPopupStyle(placement, size),
185
+ "data-qaid": dataQaId
186
+ }, useCloseButton && onClose && React__namespace.createElement(Close, {
187
+ className: classNames.Close,
188
+ type: 'button',
189
+ onClick: onClose,
190
+ "aria-label": ttag.t(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"], ["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))),
191
+ "data-qaid": 'close'
192
+ }), useTouchScrollable ? React__namespace.createElement(ScrollLock.TouchScrollable, null, React__namespace.createElement(Content, {
193
+ ref: contentRef,
194
+ className: classNames.Content,
195
+ style: {
196
+ padding: padding
197
+ }
198
+ }, children)) : React__namespace.createElement(Content, {
199
+ ref: contentRef,
200
+ className: classNames.Content,
201
+ style: {
202
+ padding: padding
203
+ }
204
+ }, children)))));
205
+ };
206
+ var templateObject_1;
207
+
208
+ exports.SideOverlay = SideOverlay;
209
+
210
+ require('./style.development.css');
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("ttag"),o=require("react-scrolllock"),r=require("@prom-ui/core/Portal"),n=require("@prom-ui/core/KeyPress"),a=require("evokit"),c=require("react-transition-group");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function i(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var s=l(e),u=i(e),p=l(o),d=function(){return d=Object.assign||function(e){for(var t,o=1,r=arguments.length;o<r;o++)for(var n in t=arguments[o])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},d.apply(this,arguments)};var f,m={root:"zoSc7",backdrop:"v5Neh",popup:"LsB4w",content:"D9ezA",close:"aiN5k",popup_placement_top:"BSFf7",popup_placement_bottom:"k1gGY",popup_placement_right:"w9HUr",popup_placement_left:"DWBxa",enter:"ukL-B",exit:"QE5yq",enterActive:"VPRAq",exitActive:"FhiSX"},v={css:m,b:""},b=a.createBlock("div","root",[],v),y=a.createBlock("div","backdrop",[],v),O=a.createBlock("div","popup",["placement"],v),E=a.createBlock("div","content",[],v),h=a.createBlock("button","close",[],v),k=function(e){var t=e.open,o=void 0!==t&&t,r=e.children,n=e.enabled,a=void 0===n||n,l=e.onEnter;return s.default.createElement(c.CSSTransition,{in:o,timeout:a?225:0,classNames:m,unmountOnExit:!0,onEnter:l},r)},g=function(e,t){return["top","bottom"].includes(e)?{height:t}:{width:t}};exports.SideOverlay=function(e){var a,c,l=e.children,i=e.classNames,s=void 0===i?{}:i,m=e.onClose,v=e.onOpen,P=e.open,j=void 0!==P&&P,x=e.padding,C=void 0===x?"45px 30px 30px 30px":x,S=e.placement,q=void 0===S?"left":S,B=e.size,_=void 0===B?400:B,w=e.useCloseButton,N=void 0===w||w,z=e.useEscapeClose,A=void 0===z||z,I=e.useOutsideClose,D=void 0===I||I,L=e.usePortal,R=void 0===L||L,T=e.useScrollLock,K=void 0===T||T,Q=e.useTouchScrollable,F=void 0===Q||Q,M=e.zIndex,G=void 0===M?5e3:M,H=e.dataQaId,U=e.contentRef,V=e.animationEnabled,W=void 0===V||V,X=function(e,t){var o={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(o[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(r=Object.getOwnPropertySymbols(e);n<r.length;n++)t.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(e,r[n])&&(o[r[n]]=e[r[n]])}return o}(e,["children","classNames","onClose","onOpen","open","padding","placement","size","useCloseButton","useEscapeClose","useOutsideClose","usePortal","useScrollLock","useTouchScrollable","zIndex","dataQaId","contentRef","animationEnabled"]);return u.createElement(k,{open:j,onEnter:function(){v&&v()},enabled:W},u.createElement(r.Portal,{isActive:R},u.createElement(b,d({role:"presentation",style:{zIndex:G},className:s.Root},X),u.createElement(p.default,{isActive:K}),u.createElement(n.KeyPress,{isActive:A,code:"Escape",onKeyDown:m}),u.createElement(y,{className:s.Backdrop,"aria-hidden":!0,onClick:function(e){D&&m&&m(e)}}),u.createElement(O,{"popup-placement":q,className:s.Popup,style:g(q,_),"data-qaid":H},N&&m&&u.createElement(h,{className:s.Close,type:"button",onClick:m,"aria-label":t.t(f||(a=["Закрыть"],c=["Закрыть"],Object.defineProperty?Object.defineProperty(a,"raw",{value:c}):a.raw=c,f=a)),"data-qaid":"close"}),F?u.createElement(o.TouchScrollable,null,u.createElement(E,{ref:U,className:s.Content,style:{padding:C}},l)):u.createElement(E,{ref:U,className:s.Content,style:{padding:C}},l)))))},require("./style.production.css");
@@ -0,0 +1 @@
1
+ .SideOverlay__root___zoSc7{position:fixed;right:0;bottom:0;top:0;left:0;width:100%;height:100%}.SideOverlay__backdrop___v5Neh{top:0;left:0;right:0;bottom:0;display:flex;z-index:-1;position:fixed;align-items:center;justify-content:center;opacity:.5;background-color:var(--black-400);-webkit-tap-highlight-color:transparent;will-change:opacity}.SideOverlay__popup___LsB4w{z-index:1200;position:fixed;background:var(--white);box-sizing:border-box}.SideOverlay__content___D9ezA{width:100%;height:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.SideOverlay__close___aiN5k{position:absolute;right:0;top:0;font-size:30px;line-height:24px;color:inherit;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:0;cursor:pointer;border:0;padding:0;font-weight:400;width:24px;height:24px;margin:10px}.SideOverlay__close___aiN5k::after{content:"×"}.SideOverlay__popup_placement_top___BSFf7,.SideOverlay__popup_placement_bottom___k1gGY,.SideOverlay__popup_placement_right___w9HUr,.SideOverlay__popup_placement_left___DWBxa{transform:none;will-change:transform}.SideOverlay__popup_placement_top___BSFf7,.SideOverlay__popup_placement_bottom___k1gGY{right:0;left:0;max-height:90%}.SideOverlay__popup_placement_right___w9HUr,.SideOverlay__popup_placement_left___DWBxa{top:0;bottom:0;max-width:90%}.SideOverlay__popup_placement_top___BSFf7{top:0;box-shadow:0 3px 6px 0 rgba(0,0,0,.1)}.SideOverlay__popup_placement_bottom___k1gGY{bottom:0;box-shadow:0-3px 6px 0 rgba(0,0,0,.1)}.SideOverlay__popup_placement_right___w9HUr{right:0;box-shadow:-3px 0 6px 0 rgba(0,0,0,.1)}.SideOverlay__popup_placement_left___DWBxa{left:0;box-shadow:3px 0 6px 0 rgba(0,0,0,.1)}.SideOverlay__enter___ukL-B,.SideOverlay__exit___QE5yq{pointer-events:auto}.SideOverlay__enterActive___VPRAq,.SideOverlay__exitActive___FhiSX{pointer-events:none}.SideOverlay__enterActive___VPRAq .SideOverlay__backdrop___v5Neh,.SideOverlay__exitActive___FhiSX .SideOverlay__backdrop___v5Neh{transition:opacity 225ms cubic-bezier(.4,0,.2,1) 0ms}.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_top___BSFf7,.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_top___BSFf7,.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_right___w9HUr,.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_right___w9HUr,.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_bottom___k1gGY,.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_bottom___k1gGY,.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_left___DWBxa,.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_left___DWBxa{transition:transform 225ms cubic-bezier(.4,0,.2,1) 0ms}.SideOverlay__enter___ukL-B .SideOverlay__backdrop___v5Neh{opacity:0}.SideOverlay__enter___ukL-B .SideOverlay__popup_placement_top___BSFf7{transform:translateY(-100%)}.SideOverlay__enter___ukL-B .SideOverlay__popup_placement_right___w9HUr{transform:translateX(100%)}.SideOverlay__enter___ukL-B .SideOverlay__popup_placement_bottom___k1gGY{transform:translateY(100%)}.SideOverlay__enter___ukL-B .SideOverlay__popup_placement_left___DWBxa{transform:translateX(-100%)}.SideOverlay__enterActive___VPRAq .SideOverlay__backdrop___v5Neh{opacity:.5}.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_top___BSFf7,.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_bottom___k1gGY{transform:translateY(0)}.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_left___DWBxa,.SideOverlay__enterActive___VPRAq .SideOverlay__popup_placement_right___w9HUr{transform:translateX(0)}.SideOverlay__exit___QE5yq .SideOverlay__backdrop___v5Neh{opacity:.5}.SideOverlay__exit___QE5yq .SideOverlay__popup_placement_top___BSFf7,.SideOverlay__exit___QE5yq .SideOverlay__popup_placement_bottom___k1gGY{transform:translateY(0)}.SideOverlay__exit___QE5yq .SideOverlay__popup_placement_left___DWBxa,.SideOverlay__exit___QE5yq .SideOverlay__popup_placement_right___w9HUr{transform:translateX(0)}.SideOverlay__exitActive___FhiSX .SideOverlay__backdrop___v5Neh{opacity:0}.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_top___BSFf7{transform:translateY(-100%)}.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_right___w9HUr{transform:translateX(100%)}.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_bottom___k1gGY{transform:translateY(100%)}.SideOverlay__exitActive___FhiSX .SideOverlay__popup_placement_left___DWBxa{transform:translateX(-100%)}
@@ -0,0 +1 @@
1
+ .zoSc7{position:fixed;right:0;bottom:0;top:0;left:0;width:100%;height:100%}.v5Neh{top:0;left:0;right:0;bottom:0;display:flex;z-index:-1;position:fixed;align-items:center;justify-content:center;opacity:.5;background-color:var(--black-400);-webkit-tap-highlight-color:transparent;will-change:opacity}.LsB4w{z-index:1200;position:fixed;background:var(--white);box-sizing:border-box}.D9ezA{width:100%;height:100%;box-sizing:border-box;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.aiN5k{position:absolute;right:0;top:0;font-size:30px;line-height:24px;color:inherit;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:0 0;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:0;cursor:pointer;border:0;padding:0;font-weight:400;width:24px;height:24px;margin:10px}.aiN5k::after{content:"×"}.BSFf7,.k1gGY,.w9HUr,.DWBxa{transform:none;will-change:transform}.BSFf7,.k1gGY{right:0;left:0;max-height:90%}.w9HUr,.DWBxa{top:0;bottom:0;max-width:90%}.BSFf7{top:0;box-shadow:0 3px 6px 0 rgba(0,0,0,.1)}.k1gGY{bottom:0;box-shadow:0-3px 6px 0 rgba(0,0,0,.1)}.w9HUr{right:0;box-shadow:-3px 0 6px 0 rgba(0,0,0,.1)}.DWBxa{left:0;box-shadow:3px 0 6px 0 rgba(0,0,0,.1)}.ukL-B,.QE5yq{pointer-events:auto}.VPRAq,.FhiSX{pointer-events:none}.VPRAq .v5Neh,.FhiSX .v5Neh{transition:opacity 225ms cubic-bezier(.4,0,.2,1) 0ms}.VPRAq .BSFf7,.FhiSX .BSFf7,.VPRAq .w9HUr,.FhiSX .w9HUr,.VPRAq .k1gGY,.FhiSX .k1gGY,.VPRAq .DWBxa,.FhiSX .DWBxa{transition:transform 225ms cubic-bezier(.4,0,.2,1) 0ms}.ukL-B .v5Neh{opacity:0}.ukL-B .BSFf7{transform:translateY(-100%)}.ukL-B .w9HUr{transform:translateX(100%)}.ukL-B .k1gGY{transform:translateY(100%)}.ukL-B .DWBxa{transform:translateX(-100%)}.VPRAq .v5Neh{opacity:.5}.VPRAq .BSFf7,.VPRAq .k1gGY{transform:translateY(0)}.VPRAq .DWBxa,.VPRAq .w9HUr{transform:translateX(0)}.QE5yq .v5Neh{opacity:.5}.QE5yq .BSFf7,.QE5yq .k1gGY{transform:translateY(0)}.QE5yq .DWBxa,.QE5yq .w9HUr{transform:translateX(0)}.FhiSX .v5Neh{opacity:0}.FhiSX .BSFf7{transform:translateY(-100%)}.FhiSX .w9HUr{transform:translateX(100%)}.FhiSX .k1gGY{transform:translateY(100%)}.FhiSX .DWBxa{transform:translateX(-100%)}
@@ -1,31 +1,46 @@
1
- import React from 'react';
2
- declare type tClassNames = {
3
- Root?: string;
4
- Backdrop?: string;
5
- Popup?: string;
6
- Content?: string;
7
- Close?: string;
8
- };
9
- export declare type tSideOverlayProps = {
1
+ import * as React from 'react';
2
+ export declare type SideOverlayProps = React.ComponentProps<"div"> & {
3
+ /** Включает/отключает анимацию открытия/скрытия шторки */
10
4
  animationEnabled?: boolean;
5
+ /** Состояние, открыто или нет */
11
6
  open?: boolean;
7
+ /** React children */
12
8
  children: React.ReactNode;
13
- className?: string;
14
- classNames?: tClassNames;
9
+ /** Кастомные классы */
10
+ classNames?: {
11
+ Root?: string;
12
+ Backdrop?: string;
13
+ Popup?: string;
14
+ Content?: string;
15
+ Close?: string;
16
+ };
17
+ /** Срабатывает когда попап открыт */
15
18
  onOpen?: () => void;
16
- onClose?: () => void;
19
+ /** Handle для закрытия попапа */
20
+ onClose?: (arg: any) => void;
21
+ /** Внутренние отступы */
17
22
  padding?: string | number;
23
+ /** Расположение */
18
24
  placement?: 'top' | 'right' | 'bottom' | 'left';
25
+ /** Ширина или высота взависимости от placement */
19
26
  size?: string | number;
27
+ /** Отображение кнопки закрытия (крестик) */
20
28
  useCloseButton?: boolean;
29
+ /** Разрешает закрыть попап по клавише `Escape` */
21
30
  useEscapeClose?: boolean;
31
+ /** Разрешает закрытие при клике на свободное пространство (затемнение документа) */
22
32
  useOutsideClose?: boolean;
33
+ /** Рендер в конец `<body>` */
23
34
  usePortal?: boolean;
35
+ /** Запрещает прокрутку `<body>` */
24
36
  useScrollLock?: boolean;
37
+ /** Запрещает прокрутку `<body>` для ios */
25
38
  useTouchScrollable?: boolean;
39
+ /** Размещением по z-оси */
26
40
  zIndex?: string | number;
41
+ /** HTML Атрибут `data-qaid` для автотестов */
27
42
  dataQaId?: string;
43
+ /** `ref` для блока с контентом */
28
44
  contentRef?: React.RefObject<HTMLElement>;
29
45
  };
30
- export declare const SideOverlay: React.FC<tSideOverlayProps>;
31
- export {};
46
+ export declare const SideOverlay: React.FC<SideOverlayProps>;