@prom-ui/core 1.4.0 → 1.6.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.
Files changed (74) hide show
  1. package/Avatar/package.json +1 -1
  2. package/Backdrop/package.json +1 -1
  3. package/Body/package.json +1 -1
  4. package/BodyContext/package.json +1 -1
  5. package/BodyProvider/cjs/index.development.js +90 -0
  6. package/BodyProvider/cjs/index.development.v2.js +90 -0
  7. package/BodyProvider/cjs/index.production.js +1 -1
  8. package/BodyProvider/cjs/index.production.v2.js +1 -1
  9. package/BodyProvider/package.json +1 -1
  10. package/Box/package.json +1 -1
  11. package/Button/package.json +1 -1
  12. package/ButtonPageUp/cjs/index.development.js +1 -1
  13. package/ButtonPageUp/cjs/index.development.v2.js +1 -1
  14. package/ButtonPageUp/cjs/index.production.js +1 -1
  15. package/ButtonPageUp/cjs/index.production.v2.js +1 -1
  16. package/ButtonPageUp/package.json +1 -1
  17. package/Checkbox/package.json +1 -1
  18. package/Flex/package.json +1 -1
  19. package/Grid/package.json +1 -1
  20. package/Icon/package.json +1 -1
  21. package/Image/package.json +1 -1
  22. package/ImageEmoji/package.json +1 -1
  23. package/Input/package.json +1 -1
  24. package/InputField/package.json +1 -1
  25. package/KeyPress/package.json +1 -1
  26. package/Line/package.json +1 -1
  27. package/Link/package.json +1 -1
  28. package/List/package.json +1 -1
  29. package/Media/package.json +1 -1
  30. package/OutsideClick/package.json +1 -1
  31. package/Overlay/cjs/index.development.js +215 -26
  32. package/Overlay/cjs/index.development.v2.js +215 -26
  33. package/Overlay/cjs/index.production.js +1 -1
  34. package/Overlay/cjs/index.production.v2.js +1 -1
  35. package/Overlay/cjs/style.development.css +1 -1
  36. package/Overlay/cjs/style.development.v2.css +1 -1
  37. package/Overlay/cjs/style.production.css +1 -1
  38. package/Overlay/cjs/style.production.v2.css +1 -1
  39. package/Overlay/components/OverlayErrCatch.d.ts +7 -0
  40. package/Overlay/package.json +2 -1
  41. package/Overlay/utils.d.ts +2 -0
  42. package/Picture/package.json +1 -1
  43. package/Portal/package.json +1 -1
  44. package/QRCode/package.json +1 -1
  45. package/Rating/package.json +1 -1
  46. package/RatingSelect/package.json +1 -1
  47. package/SafeQuery/package.json +1 -1
  48. package/Scroll/package.json +1 -1
  49. package/ScrollControls/cjs/index.development.js +2 -2
  50. package/ScrollControls/cjs/index.development.v2.js +2 -2
  51. package/ScrollControls/cjs/index.production.js +1 -1
  52. package/ScrollControls/cjs/index.production.v2.js +1 -1
  53. package/ScrollControls/package.json +1 -1
  54. package/SimpleSlider/cjs/index.development.js +2 -2
  55. package/SimpleSlider/cjs/index.development.v2.js +2 -2
  56. package/SimpleSlider/cjs/index.production.js +1 -1
  57. package/SimpleSlider/cjs/index.production.v2.js +1 -1
  58. package/SimpleSlider/package.json +1 -1
  59. package/Skeleton/package.json +1 -1
  60. package/Spinner/package.json +1 -1
  61. package/Text/package.json +1 -1
  62. package/TextEmoji/package.json +1 -1
  63. package/Tooltip/package.json +1 -1
  64. package/Tumbler/package.json +1 -1
  65. package/package.json +3 -3
  66. package/useBodyTTag/package.json +1 -1
  67. package/useDebounce/package.json +1 -1
  68. package/useId/package.json +1 -1
  69. package/useIsMounted/package.json +1 -1
  70. package/useKeyPress/package.json +1 -1
  71. package/useMedia/package.json +1 -1
  72. package/useOutsideClick/package.json +1 -1
  73. package/usePortal/package.json +1 -1
  74. package/useScrollPosition/package.json +1 -1
@@ -12,10 +12,13 @@ var Portal = require('@prom-ui/core/Portal');
12
12
  var Media = require('@prom-ui/core/Media');
13
13
  var Button = require('@prom-ui/core/Button');
14
14
  var Icon = require('@prom-ui/core/Icon');
15
- var Text = require('@prom-ui/core/Text');
16
15
  var useBodyTTag = require('@prom-ui/core/useBodyTTag');
17
16
  var Close = require('@prom-ui/icons/Close');
18
17
  var ArrowBack = require('@prom-ui/icons/ArrowBack');
18
+ var errcatch = require('@evo/errcatch');
19
+ var Link = require('@prom-ui/core/Link');
20
+ var PromTroubleHappens = require('@prom-ui/icons/colors/PromTroubleHappens');
21
+ var PromNoSignal = require('@prom-ui/icons/colors/PromNoSignal');
19
22
  var utils = require('react-scrolllock/dist/utils');
20
23
  var Swipe = require('react-easy-swipe');
21
24
 
@@ -44,6 +47,47 @@ var ScrollLock__default = /*#__PURE__*/_interopDefaultCompat(ScrollLock);
44
47
  var classNames__default = /*#__PURE__*/_interopDefaultCompat(classNames);
45
48
  var Swipe__default = /*#__PURE__*/_interopDefaultCompat(Swipe);
46
49
 
50
+ function _iterableToArrayLimit(arr, i) {
51
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
52
+ if (null != _i) {
53
+ var _s,
54
+ _e,
55
+ _x,
56
+ _r,
57
+ _arr = [],
58
+ _n = !0,
59
+ _d = !1;
60
+ try {
61
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
62
+ if (Object(_i) !== _i) return;
63
+ _n = !1;
64
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
65
+ } catch (err) {
66
+ _d = !0, _e = err;
67
+ } finally {
68
+ try {
69
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
70
+ } finally {
71
+ if (_d) throw _e;
72
+ }
73
+ }
74
+ return _arr;
75
+ }
76
+ }
77
+ function _defineProperty(obj, key, value) {
78
+ key = _toPropertyKey(key);
79
+ if (key in obj) {
80
+ Object.defineProperty(obj, key, {
81
+ value: value,
82
+ enumerable: true,
83
+ configurable: true,
84
+ writable: true
85
+ });
86
+ } else {
87
+ obj[key] = value;
88
+ }
89
+ return obj;
90
+ }
47
91
  function _extends() {
48
92
  _extends = Object.assign ? Object.assign.bind() : function (target) {
49
93
  for (var i = 1; i < arguments.length; i++) {
@@ -95,10 +139,46 @@ function _taggedTemplateLiteral(strings, raw) {
95
139
  }
96
140
  }));
97
141
  }
142
+ function _slicedToArray(arr, i) {
143
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
144
+ }
145
+ function _arrayWithHoles(arr) {
146
+ if (Array.isArray(arr)) return arr;
147
+ }
148
+ function _unsupportedIterableToArray(o, minLen) {
149
+ if (!o) return;
150
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
151
+ var n = Object.prototype.toString.call(o).slice(8, -1);
152
+ if (n === "Object" && o.constructor) n = o.constructor.name;
153
+ if (n === "Map" || n === "Set") return Array.from(o);
154
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
155
+ }
156
+ function _arrayLikeToArray(arr, len) {
157
+ if (len == null || len > arr.length) len = arr.length;
158
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
159
+ return arr2;
160
+ }
161
+ function _nonIterableRest() {
162
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
163
+ }
164
+ function _toPrimitive(input, hint) {
165
+ if (typeof input !== "object" || input === null) return input;
166
+ var prim = input[Symbol.toPrimitive];
167
+ if (prim !== undefined) {
168
+ var res = prim.call(input, hint || "default");
169
+ if (typeof res !== "object") return res;
170
+ throw new TypeError("@@toPrimitive must return a primitive value.");
171
+ }
172
+ return (hint === "string" ? String : Number)(input);
173
+ }
174
+ function _toPropertyKey(arg) {
175
+ var key = _toPrimitive(arg, "string");
176
+ return typeof key === "symbol" ? key : String(key);
177
+ }
98
178
 
99
- var css = {"root":"Overlay__root___v0oYp","backdrop":"Overlay__backdrop___RvRWz","popup":"Overlay__popup___elIqJ","popup_placement_top":"Overlay__popup_placement_top___Llv4b","popup_placement_bottom":"Overlay__popup_placement_bottom___DJyNc","popup_placement_right":"Overlay__popup_placement_right___4DX3c","popup_placement_left":"Overlay__popup_placement_left___OwkR7","content":"Overlay__content___5qQ0k","header":"Overlay__header___LIk9z","header__grid":"Overlay__header__grid___SShy4","header__item":"Overlay__header__item___9fUzS","header__title":"Overlay__header__title___Vuilz Overlay__header__item___9fUzS","header__action":"Overlay__header__action___c-A8d Overlay__header__item___9fUzS","header__actionButton":"Overlay__header__actionButton___yYG24","header__actionIcon":"Overlay__header__actionIcon___La2ok","footer":"Overlay__footer___3Ca-G","enter":"Overlay__enter___OjeZp","exit":"Overlay__exit___HiHMU","enterActive":"Overlay__enterActive___Ne-Vn","exitActive":"Overlay__exitActive___6f7f1"};
179
+ var css = {"root":"Overlay__root___v0oYp","backdrop":"Overlay__backdrop___RvRWz","popup":"Overlay__popup___elIqJ","popup_placement_top":"Overlay__popup_placement_top___Llv4b","popup_placement_bottom":"Overlay__popup_placement_bottom___DJyNc","popup_placement_right":"Overlay__popup_placement_right___4DX3c","popup_placement_left":"Overlay__popup_placement_left___OwkR7","content":"Overlay__content___5qQ0k","header":"Overlay__header___LIk9z","header__grid":"Overlay__header__grid___SShy4","header__item":"Overlay__header__item___9fUzS","header__title":"Overlay__header__title___Vuilz Overlay__header__item___9fUzS","header__titleText":"Overlay__header__titleText___pW2Vz","header__action":"Overlay__header__action___c-A8d Overlay__header__item___9fUzS","header__actionButton":"Overlay__header__actionButton___yYG24","header__actionIcon":"Overlay__header__actionIcon___La2ok","footer":"Overlay__footer___3Ca-G","enter":"Overlay__enter___OjeZp","exit":"Overlay__exit___HiHMU","enterActive":"Overlay__enterActive___Ne-Vn","exitActive":"Overlay__exitActive___6f7f1","errorContainer":"Overlay__errorContainer___8HVeJ","errorContainerLoading":"Overlay__errorContainerLoading___zsRUN","errorIcon":"Overlay__errorIcon___w5VL8","errorTitle":"Overlay__errorTitle___DJcp4","errorDescription":"Overlay__errorDescription___5bUeF","errorWrapReloadButton":"Overlay__errorWrapReloadButton___gwpLD","errorWrapCloseButton":"Overlay__errorWrapCloseButton___jM9l9","errorCloseButtonLoading":"Overlay__errorCloseButtonLoading___IXlT4"};
100
180
 
101
- var _templateObject, _templateObject2;
181
+ var _templateObject$1, _templateObject2$1;
102
182
  var OverlayHeader = function OverlayHeader(_ref) {
103
183
  var isShowPrevButton = _ref.isShowPrevButton,
104
184
  isShowCloseButton = _ref.isShowCloseButton,
@@ -119,18 +199,15 @@ var OverlayHeader = function OverlayHeader(_ref) {
119
199
  "button-theme": "black-inherit",
120
200
  type: "button",
121
201
  onClick: onPrev,
122
- "aria-label": t(_templateObject || (_templateObject = _taggedTemplateLiteral(["\u041D\u0430\u0437\u0430\u0434"]))),
202
+ "aria-label": t(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\u041D\u0430\u0437\u0430\u0434"]))),
123
203
  "data-qaid": "prev"
124
204
  }, /*#__PURE__*/React__namespace.default.createElement(Icon.Icon, {
125
- "icon-as": ArrowBack.ArrowBack,
205
+ "icon-as": ArrowBack.SvgArrowBack,
126
206
  className: css.header__actionIcon
127
207
  }))), /*#__PURE__*/React__namespace.default.createElement("div", {
128
208
  className: css.header__title
129
- }, typeof title === 'string' ? /*#__PURE__*/React__namespace.default.createElement(Text.Text, {
130
- "text-align": "center",
131
- "text-size": "h4",
132
- "text-wrap": "ellipsis",
133
- "text-weight": "bold",
209
+ }, typeof title === 'string' ? /*#__PURE__*/React__namespace.default.createElement("span", {
210
+ className: css.header__titleText,
134
211
  "data-qaid": "title"
135
212
  }, title) : title), /*#__PURE__*/React__namespace.default.createElement("div", {
136
213
  className: css.header__action
@@ -139,14 +216,137 @@ var OverlayHeader = function OverlayHeader(_ref) {
139
216
  "button-theme": "black-inherit",
140
217
  type: "button",
141
218
  onClick: onClose,
142
- "aria-label": t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))),
219
+ "aria-label": t(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))),
143
220
  "data-qaid": "close"
144
221
  }, /*#__PURE__*/React__namespace.default.createElement(Icon.Icon, {
145
- "icon-as": Close.Close,
222
+ "icon-as": Close.SvgClose,
146
223
  className: css.header__actionIcon
147
224
  })))));
148
225
  };
149
226
 
227
+ var getPopupStyle = function getPopupStyle(placement, size, maxSize) {
228
+ if (['top', 'bottom'].includes(placement)) {
229
+ return {
230
+ height: size,
231
+ maxHeight: maxSize
232
+ };
233
+ }
234
+ return {
235
+ width: size,
236
+ maxWidth: maxSize
237
+ };
238
+ };
239
+ var TIMEOUT_RELOAD_ERROR = 600;
240
+ var getErrorType = function getErrorType() {
241
+ var _navigator;
242
+ return Boolean((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.onLine) ? 'default' : 'offline';
243
+ };
244
+
245
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
246
+ var ErrorComponent = function ErrorComponent(_ref) {
247
+ var onClickReload = _ref.onClickReload,
248
+ onClose = _ref.onClose,
249
+ _ref$errorType = _ref.errorType,
250
+ errorType = _ref$errorType === void 0 ? 'default' : _ref$errorType,
251
+ _ref$loading = _ref.loading,
252
+ loading = _ref$loading === void 0 ? false : _ref$loading;
253
+ var _useBodyTTag = useBodyTTag.useBodyTTag(),
254
+ t = _useBodyTTag.t;
255
+ var errorData = {
256
+ "default": {
257
+ icon: PromTroubleHappens.SvgPromTroubleHappens,
258
+ title: t(_templateObject || (_templateObject = _taggedTemplateLiteral(["\u041E\u0439, \u043A\u0430\u0436\u0435\u0442\u0441\u044F \u0447\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A"]))),
259
+ description: t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\u041C\u044B \u0443\u0436\u0435 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043C\u0441\u044F \u0441 \u044D\u0442\u0438\u043C"])))
260
+ },
261
+ offline: {
262
+ icon: PromNoSignal.SvgPromNoSignal,
263
+ title: t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\u041D\u0435\u0442 \u0441\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F"]))),
264
+ description: t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u043A \u0418\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u0443"])))
265
+ }
266
+ };
267
+ return /*#__PURE__*/React__namespace.default.createElement("div", {
268
+ className: classNames__default.default(css.errorContainer, _defineProperty({}, css.errorContainerLoading, loading)),
269
+ "data-qaid": "overlay_error_catch",
270
+ "data-testid": "overlay_error_catch"
271
+ }, /*#__PURE__*/React__namespace.default.createElement(Icon.Icon, {
272
+ className: css.errorIcon,
273
+ "icon-as": errorData[errorType].icon,
274
+ "data-qaid": "overlay_error_catch_icon",
275
+ "data-testid": "overlay_error_catch_icon"
276
+ }), /*#__PURE__*/React__namespace.default.createElement("div", {
277
+ className: css.errorTitle,
278
+ "data-qaid": "overlay_error_catch_title",
279
+ "data-testid": "overlay_error_catch_title"
280
+ }, errorData[errorType].title), /*#__PURE__*/React__namespace.default.createElement("div", {
281
+ className: css.errorDescription,
282
+ "data-qaid": "overlay_error_catch_description",
283
+ "data-testid": "overlay_error_catch_description"
284
+ }, errorData[errorType].description), /*#__PURE__*/React__namespace.default.createElement("div", {
285
+ className: css.errorWrapReloadButton
286
+ }, /*#__PURE__*/React__namespace.default.createElement(Button.Button, {
287
+ "button-theme": "violet",
288
+ "button-padding-left": "4xl",
289
+ "button-padding-right": "4xl",
290
+ type: "button",
291
+ onClick: onClickReload,
292
+ loading: loading,
293
+ "data-qaid": "overlay_error_catch_reload_button",
294
+ "data-testid": "overlay_error_catch_reload_button"
295
+ }, t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\u041F\u043E\u043F\u0440\u043E\u0431\u043E\u0432\u0430\u0442\u044C \u0435\u0449\u0435 \u0440\u0430\u0437"]))))), /*#__PURE__*/React__namespace.default.createElement("div", {
296
+ className: css.errorWrapCloseButton
297
+ }, /*#__PURE__*/React__namespace.default.createElement(Link.Link, {
298
+ className: loading ? css.errorCloseButtonLoading : undefined,
299
+ "link-as": "button",
300
+ "link-color": "blue-500",
301
+ type: "button",
302
+ onClick: onClose,
303
+ "data-qaid": "overlay_error_catch_close_button",
304
+ "data-testid": "overlay_error_catch_close_button"
305
+ }, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))))));
306
+ };
307
+ ErrorComponent.displayName = 'ErrorComponent';
308
+ var OverlayErrCatch = function OverlayErrCatch(_ref2) {
309
+ var children = _ref2.children,
310
+ _ref2$name = _ref2.name,
311
+ name = _ref2$name === void 0 ? 'OverlayErrCatch' : _ref2$name,
312
+ onClose = _ref2.onClose;
313
+ var _useState = React.useState(false),
314
+ _useState2 = _slicedToArray(_useState, 2),
315
+ isReload = _useState2[0],
316
+ setReload = _useState2[1];
317
+ var _useState3 = React.useState('default'),
318
+ _useState4 = _slicedToArray(_useState3, 2),
319
+ errorType = _useState4[0],
320
+ setErrorType = _useState4[1];
321
+ React.useEffect(function () {
322
+ if (isReload) {
323
+ setTimeout(function () {
324
+ setErrorType(getErrorType());
325
+ setReload(false);
326
+ }, TIMEOUT_RELOAD_ERROR);
327
+ } else {
328
+ setErrorType(getErrorType());
329
+ }
330
+ }, [isReload]);
331
+ if (isReload) {
332
+ return /*#__PURE__*/React__namespace.default.createElement(ErrorComponent, {
333
+ errorType: errorType,
334
+ loading: true
335
+ });
336
+ }
337
+ return /*#__PURE__*/React__namespace.default.createElement(errcatch.ErrCatch, {
338
+ name: name,
339
+ errorComponent: /*#__PURE__*/React__namespace.default.createElement(ErrorComponent, {
340
+ onClose: onClose,
341
+ errorType: errorType,
342
+ onClickReload: function onClickReload() {
343
+ return setReload(true);
344
+ }
345
+ })
346
+ }, children);
347
+ };
348
+ OverlayErrCatch.displayName = 'OverlayErrCatch';
349
+
150
350
  // FORK FROM https://github.com/jossmac/react-scrolllock/blob/master/src/TouchScrollable.js
151
351
 
152
352
  var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
@@ -296,19 +496,6 @@ var SwipeClose = function SwipeClose(_ref) {
296
496
  }, children);
297
497
  };
298
498
 
299
- var getPopupStyle = function getPopupStyle(placement, size, maxSize) {
300
- if (['top', 'bottom'].includes(placement)) {
301
- return {
302
- height: size,
303
- maxHeight: maxSize
304
- };
305
- }
306
- return {
307
- width: size,
308
- maxWidth: maxSize
309
- };
310
- };
311
-
312
499
  var _excluded = ["children", "onClose", "onOpen", "onPrev", "onOpened", "onClosed", "isOpen", "isShowCloseButton", "isShowPrevButton", "isCloseOnEscape", "isCloseOnSwipe", "isCloseOutsideClick", "isAnimated", "isRenderPortal", "isScrollLock", "isScrollLockTouch", "header", "footer", "padding", "title", "placement", "size", "maxSize", "zIndex", "contentRef", "dataQaId"];
313
500
  var DEFAULT_SIZE = 400;
314
501
 
@@ -442,7 +629,9 @@ var Overlay = function Overlay(_ref) {
442
629
  style: {
443
630
  padding: padding
444
631
  }
445
- }, children))))))));
632
+ }, /*#__PURE__*/React__namespace.createElement(OverlayErrCatch, {
633
+ onClose: onClose
634
+ }, children)))))))));
446
635
  };
447
636
 
448
637
  exports.Overlay = Overlay;
@@ -12,10 +12,13 @@ var Portal = require('@prom-ui/core/Portal');
12
12
  var Media = require('@prom-ui/core/Media');
13
13
  var Button = require('@prom-ui/core/Button');
14
14
  var Icon = require('@prom-ui/core/Icon');
15
- var Text = require('@prom-ui/core/Text');
16
15
  var useBodyTTag = require('@prom-ui/core/useBodyTTag');
17
16
  var Close = require('@prom-ui/icons/Close');
18
17
  var ArrowBack = require('@prom-ui/icons/ArrowBack');
18
+ var errcatch = require('@evo/errcatch');
19
+ var Link = require('@prom-ui/core/Link');
20
+ var PromTroubleHappens = require('@prom-ui/icons/colors/PromTroubleHappens');
21
+ var PromNoSignal = require('@prom-ui/icons/colors/PromNoSignal');
19
22
  var utils = require('react-scrolllock/dist/utils');
20
23
  var Swipe = require('react-easy-swipe');
21
24
 
@@ -44,6 +47,47 @@ var ScrollLock__default = /*#__PURE__*/_interopDefaultCompat(ScrollLock);
44
47
  var classNames__default = /*#__PURE__*/_interopDefaultCompat(classNames);
45
48
  var Swipe__default = /*#__PURE__*/_interopDefaultCompat(Swipe);
46
49
 
50
+ function _iterableToArrayLimit(arr, i) {
51
+ var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"];
52
+ if (null != _i) {
53
+ var _s,
54
+ _e,
55
+ _x,
56
+ _r,
57
+ _arr = [],
58
+ _n = !0,
59
+ _d = !1;
60
+ try {
61
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
62
+ if (Object(_i) !== _i) return;
63
+ _n = !1;
64
+ } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);
65
+ } catch (err) {
66
+ _d = !0, _e = err;
67
+ } finally {
68
+ try {
69
+ if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;
70
+ } finally {
71
+ if (_d) throw _e;
72
+ }
73
+ }
74
+ return _arr;
75
+ }
76
+ }
77
+ function _defineProperty(obj, key, value) {
78
+ key = _toPropertyKey(key);
79
+ if (key in obj) {
80
+ Object.defineProperty(obj, key, {
81
+ value: value,
82
+ enumerable: true,
83
+ configurable: true,
84
+ writable: true
85
+ });
86
+ } else {
87
+ obj[key] = value;
88
+ }
89
+ return obj;
90
+ }
47
91
  function _extends() {
48
92
  _extends = Object.assign ? Object.assign.bind() : function (target) {
49
93
  for (var i = 1; i < arguments.length; i++) {
@@ -95,10 +139,46 @@ function _taggedTemplateLiteral(strings, raw) {
95
139
  }
96
140
  }));
97
141
  }
142
+ function _slicedToArray(arr, i) {
143
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
144
+ }
145
+ function _arrayWithHoles(arr) {
146
+ if (Array.isArray(arr)) return arr;
147
+ }
148
+ function _unsupportedIterableToArray(o, minLen) {
149
+ if (!o) return;
150
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
151
+ var n = Object.prototype.toString.call(o).slice(8, -1);
152
+ if (n === "Object" && o.constructor) n = o.constructor.name;
153
+ if (n === "Map" || n === "Set") return Array.from(o);
154
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
155
+ }
156
+ function _arrayLikeToArray(arr, len) {
157
+ if (len == null || len > arr.length) len = arr.length;
158
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
159
+ return arr2;
160
+ }
161
+ function _nonIterableRest() {
162
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
163
+ }
164
+ function _toPrimitive(input, hint) {
165
+ if (typeof input !== "object" || input === null) return input;
166
+ var prim = input[Symbol.toPrimitive];
167
+ if (prim !== undefined) {
168
+ var res = prim.call(input, hint || "default");
169
+ if (typeof res !== "object") return res;
170
+ throw new TypeError("@@toPrimitive must return a primitive value.");
171
+ }
172
+ return (hint === "string" ? String : Number)(input);
173
+ }
174
+ function _toPropertyKey(arg) {
175
+ var key = _toPrimitive(arg, "string");
176
+ return typeof key === "symbol" ? key : String(key);
177
+ }
98
178
 
99
- var css = {"root":"Overlay__root___-yvLz","backdrop":"Overlay__backdrop___MKZgL","popup":"Overlay__popup___RJENA","popup_placement_top":"Overlay__popup_placement_top___ERdxO","popup_placement_bottom":"Overlay__popup_placement_bottom___MJb6v","popup_placement_right":"Overlay__popup_placement_right___nL79b","popup_placement_left":"Overlay__popup_placement_left___p-p5e","content":"Overlay__content___uHLyZ","header":"Overlay__header___ntf6X","header__grid":"Overlay__header__grid___-OCio","header__item":"Overlay__header__item___gjOzy","header__title":"Overlay__header__title___-s4aZ Overlay__header__item___gjOzy","header__action":"Overlay__header__action___fzZrE Overlay__header__item___gjOzy","header__actionButton":"Overlay__header__actionButton___CC-hv","header__actionIcon":"Overlay__header__actionIcon___LoRyP","footer":"Overlay__footer___nE-cV","enter":"Overlay__enter___v7DoD","exit":"Overlay__exit___E0PkA","enterActive":"Overlay__enterActive___RFXzo","exitActive":"Overlay__exitActive___a2xd2"};
179
+ var css = {"root":"Overlay__root___-yvLz","backdrop":"Overlay__backdrop___MKZgL","popup":"Overlay__popup___RJENA","popup_placement_top":"Overlay__popup_placement_top___ERdxO","popup_placement_bottom":"Overlay__popup_placement_bottom___MJb6v","popup_placement_right":"Overlay__popup_placement_right___nL79b","popup_placement_left":"Overlay__popup_placement_left___p-p5e","content":"Overlay__content___uHLyZ","header":"Overlay__header___ntf6X","header__grid":"Overlay__header__grid___-OCio","header__item":"Overlay__header__item___gjOzy","header__title":"Overlay__header__title___-s4aZ Overlay__header__item___gjOzy","header__titleText":"Overlay__header__titleText___zkpK2","header__action":"Overlay__header__action___fzZrE Overlay__header__item___gjOzy","header__actionButton":"Overlay__header__actionButton___CC-hv","header__actionIcon":"Overlay__header__actionIcon___LoRyP","footer":"Overlay__footer___nE-cV","enter":"Overlay__enter___v7DoD","exit":"Overlay__exit___E0PkA","enterActive":"Overlay__enterActive___RFXzo","exitActive":"Overlay__exitActive___a2xd2","errorContainer":"Overlay__errorContainer___6Vqfn","errorContainerLoading":"Overlay__errorContainerLoading___1NWwx","errorIcon":"Overlay__errorIcon___B2x3n","errorTitle":"Overlay__errorTitle___xzjW5","errorDescription":"Overlay__errorDescription___9ITQZ","errorWrapReloadButton":"Overlay__errorWrapReloadButton___TztMO","errorWrapCloseButton":"Overlay__errorWrapCloseButton___6pk7M","errorCloseButtonLoading":"Overlay__errorCloseButtonLoading___4NTmf"};
100
180
 
101
- var _templateObject, _templateObject2;
181
+ var _templateObject$1, _templateObject2$1;
102
182
  var OverlayHeader = function OverlayHeader(_ref) {
103
183
  var isShowPrevButton = _ref.isShowPrevButton,
104
184
  isShowCloseButton = _ref.isShowCloseButton,
@@ -119,18 +199,15 @@ var OverlayHeader = function OverlayHeader(_ref) {
119
199
  "button-theme": "black-inherit",
120
200
  type: "button",
121
201
  onClick: onPrev,
122
- "aria-label": t(_templateObject || (_templateObject = _taggedTemplateLiteral(["\u041D\u0430\u0437\u0430\u0434"]))),
202
+ "aria-label": t(_templateObject$1 || (_templateObject$1 = _taggedTemplateLiteral(["\u041D\u0430\u0437\u0430\u0434"]))),
123
203
  "data-qaid": "prev"
124
204
  }, /*#__PURE__*/React__namespace.default.createElement(Icon.Icon, {
125
- "icon-as": ArrowBack.ArrowBack,
205
+ "icon-as": ArrowBack.SvgArrowBack,
126
206
  className: css.header__actionIcon
127
207
  }))), /*#__PURE__*/React__namespace.default.createElement("div", {
128
208
  className: css.header__title
129
- }, typeof title === 'string' ? /*#__PURE__*/React__namespace.default.createElement(Text.Text, {
130
- "text-align": "center",
131
- "text-size": "h4",
132
- "text-wrap": "ellipsis",
133
- "text-weight": "bold",
209
+ }, typeof title === 'string' ? /*#__PURE__*/React__namespace.default.createElement("span", {
210
+ className: css.header__titleText,
134
211
  "data-qaid": "title"
135
212
  }, title) : title), /*#__PURE__*/React__namespace.default.createElement("div", {
136
213
  className: css.header__action
@@ -139,14 +216,137 @@ var OverlayHeader = function OverlayHeader(_ref) {
139
216
  "button-theme": "black-inherit",
140
217
  type: "button",
141
218
  onClick: onClose,
142
- "aria-label": t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))),
219
+ "aria-label": t(_templateObject2$1 || (_templateObject2$1 = _taggedTemplateLiteral(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))),
143
220
  "data-qaid": "close"
144
221
  }, /*#__PURE__*/React__namespace.default.createElement(Icon.Icon, {
145
- "icon-as": Close.Close,
222
+ "icon-as": Close.SvgClose,
146
223
  className: css.header__actionIcon
147
224
  })))));
148
225
  };
149
226
 
227
+ var getPopupStyle = function getPopupStyle(placement, size, maxSize) {
228
+ if (['top', 'bottom'].includes(placement)) {
229
+ return {
230
+ height: size,
231
+ maxHeight: maxSize
232
+ };
233
+ }
234
+ return {
235
+ width: size,
236
+ maxWidth: maxSize
237
+ };
238
+ };
239
+ var TIMEOUT_RELOAD_ERROR = 600;
240
+ var getErrorType = function getErrorType() {
241
+ var _navigator;
242
+ return Boolean((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.onLine) ? 'default' : 'offline';
243
+ };
244
+
245
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6;
246
+ var ErrorComponent = function ErrorComponent(_ref) {
247
+ var onClickReload = _ref.onClickReload,
248
+ onClose = _ref.onClose,
249
+ _ref$errorType = _ref.errorType,
250
+ errorType = _ref$errorType === void 0 ? 'default' : _ref$errorType,
251
+ _ref$loading = _ref.loading,
252
+ loading = _ref$loading === void 0 ? false : _ref$loading;
253
+ var _useBodyTTag = useBodyTTag.useBodyTTag(),
254
+ t = _useBodyTTag.t;
255
+ var errorData = {
256
+ "default": {
257
+ icon: PromTroubleHappens.SvgPromTroubleHappens,
258
+ title: t(_templateObject || (_templateObject = _taggedTemplateLiteral(["\u041E\u0439, \u043A\u0430\u0436\u0435\u0442\u0441\u044F \u0447\u0442\u043E-\u0442\u043E \u043F\u043E\u0448\u043B\u043E \u043D\u0435 \u0442\u0430\u043A"]))),
259
+ description: t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\u041C\u044B \u0443\u0436\u0435 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043C\u0441\u044F \u0441 \u044D\u0442\u0438\u043C"])))
260
+ },
261
+ offline: {
262
+ icon: PromNoSignal.SvgPromNoSignal,
263
+ title: t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\u041D\u0435\u0442 \u0441\u043E\u0435\u0434\u0438\u043D\u0435\u043D\u0438\u044F"]))),
264
+ description: t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u043F\u043E\u0434\u043A\u043B\u044E\u0447\u0435\u043D\u0438\u0435 \u043A \u0418\u043D\u0442\u0435\u0440\u043D\u0435\u0442\u0443"])))
265
+ }
266
+ };
267
+ return /*#__PURE__*/React__namespace.default.createElement("div", {
268
+ className: classNames__default.default(css.errorContainer, _defineProperty({}, css.errorContainerLoading, loading)),
269
+ "data-qaid": "overlay_error_catch",
270
+ "data-testid": "overlay_error_catch"
271
+ }, /*#__PURE__*/React__namespace.default.createElement(Icon.Icon, {
272
+ className: css.errorIcon,
273
+ "icon-as": errorData[errorType].icon,
274
+ "data-qaid": "overlay_error_catch_icon",
275
+ "data-testid": "overlay_error_catch_icon"
276
+ }), /*#__PURE__*/React__namespace.default.createElement("div", {
277
+ className: css.errorTitle,
278
+ "data-qaid": "overlay_error_catch_title",
279
+ "data-testid": "overlay_error_catch_title"
280
+ }, errorData[errorType].title), /*#__PURE__*/React__namespace.default.createElement("div", {
281
+ className: css.errorDescription,
282
+ "data-qaid": "overlay_error_catch_description",
283
+ "data-testid": "overlay_error_catch_description"
284
+ }, errorData[errorType].description), /*#__PURE__*/React__namespace.default.createElement("div", {
285
+ className: css.errorWrapReloadButton
286
+ }, /*#__PURE__*/React__namespace.default.createElement(Button.Button, {
287
+ "button-theme": "violet",
288
+ "button-padding-left": "4xl",
289
+ "button-padding-right": "4xl",
290
+ type: "button",
291
+ onClick: onClickReload,
292
+ loading: loading,
293
+ "data-qaid": "overlay_error_catch_reload_button",
294
+ "data-testid": "overlay_error_catch_reload_button"
295
+ }, t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\u041F\u043E\u043F\u0440\u043E\u0431\u043E\u0432\u0430\u0442\u044C \u0435\u0449\u0435 \u0440\u0430\u0437"]))))), /*#__PURE__*/React__namespace.default.createElement("div", {
296
+ className: css.errorWrapCloseButton
297
+ }, /*#__PURE__*/React__namespace.default.createElement(Link.Link, {
298
+ className: loading ? css.errorCloseButtonLoading : undefined,
299
+ "link-as": "button",
300
+ "link-color": "blue-500",
301
+ type: "button",
302
+ onClick: onClose,
303
+ "data-qaid": "overlay_error_catch_close_button",
304
+ "data-testid": "overlay_error_catch_close_button"
305
+ }, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\u0417\u0430\u043A\u0440\u044B\u0442\u044C"]))))));
306
+ };
307
+ ErrorComponent.displayName = 'ErrorComponent';
308
+ var OverlayErrCatch = function OverlayErrCatch(_ref2) {
309
+ var children = _ref2.children,
310
+ _ref2$name = _ref2.name,
311
+ name = _ref2$name === void 0 ? 'OverlayErrCatch' : _ref2$name,
312
+ onClose = _ref2.onClose;
313
+ var _useState = React.useState(false),
314
+ _useState2 = _slicedToArray(_useState, 2),
315
+ isReload = _useState2[0],
316
+ setReload = _useState2[1];
317
+ var _useState3 = React.useState('default'),
318
+ _useState4 = _slicedToArray(_useState3, 2),
319
+ errorType = _useState4[0],
320
+ setErrorType = _useState4[1];
321
+ React.useEffect(function () {
322
+ if (isReload) {
323
+ setTimeout(function () {
324
+ setErrorType(getErrorType());
325
+ setReload(false);
326
+ }, TIMEOUT_RELOAD_ERROR);
327
+ } else {
328
+ setErrorType(getErrorType());
329
+ }
330
+ }, [isReload]);
331
+ if (isReload) {
332
+ return /*#__PURE__*/React__namespace.default.createElement(ErrorComponent, {
333
+ errorType: errorType,
334
+ loading: true
335
+ });
336
+ }
337
+ return /*#__PURE__*/React__namespace.default.createElement(errcatch.ErrCatch, {
338
+ name: name,
339
+ errorComponent: /*#__PURE__*/React__namespace.default.createElement(ErrorComponent, {
340
+ onClose: onClose,
341
+ errorType: errorType,
342
+ onClickReload: function onClickReload() {
343
+ return setReload(true);
344
+ }
345
+ })
346
+ }, children);
347
+ };
348
+ OverlayErrCatch.displayName = 'OverlayErrCatch';
349
+
150
350
  // FORK FROM https://github.com/jossmac/react-scrolllock/blob/master/src/TouchScrollable.js
151
351
 
152
352
  var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
@@ -296,19 +496,6 @@ var SwipeClose = function SwipeClose(_ref) {
296
496
  }, children);
297
497
  };
298
498
 
299
- var getPopupStyle = function getPopupStyle(placement, size, maxSize) {
300
- if (['top', 'bottom'].includes(placement)) {
301
- return {
302
- height: size,
303
- maxHeight: maxSize
304
- };
305
- }
306
- return {
307
- width: size,
308
- maxWidth: maxSize
309
- };
310
- };
311
-
312
499
  var _excluded = ["children", "onClose", "onOpen", "onPrev", "onOpened", "onClosed", "isOpen", "isShowCloseButton", "isShowPrevButton", "isCloseOnEscape", "isCloseOnSwipe", "isCloseOutsideClick", "isAnimated", "isRenderPortal", "isScrollLock", "isScrollLockTouch", "header", "footer", "padding", "title", "placement", "size", "maxSize", "zIndex", "contentRef", "dataQaId"];
313
500
  var DEFAULT_SIZE = 400;
314
501
 
@@ -442,7 +629,9 @@ var Overlay = function Overlay(_ref) {
442
629
  style: {
443
630
  padding: padding
444
631
  }
445
- }, children))))))));
632
+ }, /*#__PURE__*/React__namespace.createElement(OverlayErrCatch, {
633
+ onClose: onClose
634
+ }, children)))))))));
446
635
  };
447
636
 
448
637
  exports.Overlay = Overlay;