@salutejs/plasma-new-hope 0.146.1-canary.1412.10901451694.0 → 0.146.1-canary.1441.10902378762.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. package/cjs/components/DatePicker/RangeDate/RangeDate.js +30 -6
  2. package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  3. package/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -3
  4. package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  5. package/cjs/components/DatePicker/hooks/useDatePicker.js +48 -5
  6. package/cjs/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  7. package/cjs/components/DatePicker/utils/dateHelper.js +11 -2
  8. package/cjs/components/DatePicker/utils/dateHelper.js.map +1 -1
  9. package/cjs/components/Drawer/Drawer.css +3 -4
  10. package/cjs/components/Drawer/Drawer.js +1 -1
  11. package/cjs/components/Drawer/Drawer.styles.js +0 -2
  12. package/cjs/components/Drawer/Drawer.styles.js.map +1 -1
  13. package/cjs/components/Drawer/hooks/useDrawer.js +1 -1
  14. package/cjs/components/Modal/Modal.css +3 -4
  15. package/cjs/components/Modal/hooks/useModal.js +1 -1
  16. package/cjs/components/Notification/NotificationsProvider.css +3 -4
  17. package/cjs/components/Popup/Popup.css +3 -0
  18. package/cjs/components/Popup/Popup.js +38 -25
  19. package/cjs/components/Popup/Popup.js.map +1 -1
  20. package/cjs/components/Popup/Popup.styles.js +9 -21
  21. package/cjs/components/Popup/Popup.styles.js.map +1 -1
  22. package/cjs/components/Popup/Popup.styles_141jyqa.css +3 -0
  23. package/cjs/components/Popup/PopupContext.js +9 -9
  24. package/cjs/components/Popup/PopupContext.js.map +1 -1
  25. package/cjs/components/Popup/hooks/usePopup.js +1 -1
  26. package/cjs/components/Popup/hooks/usePopup.js.map +1 -1
  27. package/cjs/index.css +3 -4
  28. package/emotion/cjs/components/DatePicker/DatePicker.template-doc.mdx +13 -10
  29. package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +30 -6
  30. package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -3
  31. package/emotion/cjs/components/DatePicker/hooks/useDatePicker.js +48 -5
  32. package/emotion/cjs/components/DatePicker/utils/dateHelper.js +11 -2
  33. package/emotion/cjs/components/Popup/Popup.js +38 -26
  34. package/emotion/cjs/components/Popup/Popup.styles.js +5 -25
  35. package/emotion/cjs/components/Popup/PopupContext.js +9 -10
  36. package/emotion/cjs/components/Popup/hooks/usePopup.js +1 -1
  37. package/emotion/es/components/DatePicker/DatePicker.template-doc.mdx +13 -10
  38. package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +30 -6
  39. package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +15 -3
  40. package/emotion/es/components/DatePicker/hooks/useDatePicker.js +48 -5
  41. package/emotion/es/components/DatePicker/utils/dateHelper.js +11 -2
  42. package/emotion/es/components/Popup/Popup.js +39 -26
  43. package/emotion/es/components/Popup/Popup.styles.js +4 -24
  44. package/emotion/es/components/Popup/PopupContext.js +10 -10
  45. package/emotion/es/components/Popup/hooks/usePopup.js +1 -1
  46. package/es/components/DatePicker/RangeDate/RangeDate.js +30 -6
  47. package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
  48. package/es/components/DatePicker/SingleDate/SingleDate.js +15 -3
  49. package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
  50. package/es/components/DatePicker/hooks/useDatePicker.js +48 -5
  51. package/es/components/DatePicker/hooks/useDatePicker.js.map +1 -1
  52. package/es/components/DatePicker/utils/dateHelper.js +11 -2
  53. package/es/components/DatePicker/utils/dateHelper.js.map +1 -1
  54. package/es/components/Drawer/Drawer.css +3 -4
  55. package/es/components/Drawer/Drawer.js +1 -1
  56. package/es/components/Drawer/Drawer.styles.js +0 -2
  57. package/es/components/Drawer/Drawer.styles.js.map +1 -1
  58. package/es/components/Drawer/hooks/useDrawer.js +1 -1
  59. package/es/components/Modal/Modal.css +3 -4
  60. package/es/components/Modal/hooks/useModal.js +1 -1
  61. package/es/components/Notification/NotificationsProvider.css +3 -4
  62. package/es/components/Popup/Popup.css +3 -0
  63. package/es/components/Popup/Popup.js +40 -27
  64. package/es/components/Popup/Popup.js.map +1 -1
  65. package/es/components/Popup/Popup.styles.js +10 -20
  66. package/es/components/Popup/Popup.styles.js.map +1 -1
  67. package/es/components/Popup/Popup.styles_141jyqa.css +3 -0
  68. package/es/components/Popup/PopupContext.js +10 -10
  69. package/es/components/Popup/PopupContext.js.map +1 -1
  70. package/es/components/Popup/hooks/usePopup.js +1 -1
  71. package/es/components/Popup/hooks/usePopup.js.map +1 -1
  72. package/es/index.css +3 -4
  73. package/package.json +4 -4
  74. package/styled-components/cjs/components/DatePicker/DatePicker.template-doc.mdx +13 -10
  75. package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +30 -6
  76. package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +15 -3
  77. package/styled-components/cjs/components/DatePicker/hooks/useDatePicker.js +48 -5
  78. package/styled-components/cjs/components/DatePicker/utils/dateHelper.js +11 -2
  79. package/styled-components/cjs/components/Popup/Popup.js +38 -26
  80. package/styled-components/cjs/components/Popup/Popup.styles.js +4 -7
  81. package/styled-components/cjs/components/Popup/PopupContext.js +9 -10
  82. package/styled-components/cjs/components/Popup/hooks/usePopup.js +1 -1
  83. package/styled-components/es/components/DatePicker/DatePicker.template-doc.mdx +13 -10
  84. package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +30 -6
  85. package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +15 -3
  86. package/styled-components/es/components/DatePicker/hooks/useDatePicker.js +48 -5
  87. package/styled-components/es/components/DatePicker/utils/dateHelper.js +11 -2
  88. package/styled-components/es/components/Popup/Popup.js +39 -26
  89. package/styled-components/es/components/Popup/Popup.styles.js +3 -6
  90. package/styled-components/es/components/Popup/PopupContext.js +10 -10
  91. package/styled-components/es/components/Popup/hooks/usePopup.js +1 -1
  92. package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
  93. package/types/components/DatePicker/hooks/useDatePicker.d.ts.map +1 -1
  94. package/types/components/DatePicker/utils/dateHelper.d.ts +10 -1
  95. package/types/components/DatePicker/utils/dateHelper.d.ts.map +1 -1
  96. package/types/components/Popup/Popup.d.ts +1 -1
  97. package/types/components/Popup/Popup.d.ts.map +1 -1
  98. package/types/components/Popup/Popup.styles.d.ts +0 -1
  99. package/types/components/Popup/Popup.styles.d.ts.map +1 -1
  100. package/types/components/Popup/PopupContext.d.ts.map +1 -1
  101. package/cjs/components/Popup/Popup.styles_8h77g1.css +0 -4
  102. package/cjs/components/Popup/PopupContext.css +0 -4
  103. package/es/components/Popup/Popup.styles_8h77g1.css +0 -4
  104. package/es/components/Popup/PopupContext.css +0 -4
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useDatePicker = void 0;
7
7
  var _DatePicker = /*#__PURE__*/require("../DatePicker.tokens");
8
8
  var _dateHelper = /*#__PURE__*/require("../utils/dateHelper");
9
+ var _datejs = /*#__PURE__*/require("../../../utils/datejs");
9
10
  var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
10
11
  var currentValue = _ref.currentValue,
11
12
  setInputValue = _ref.setInputValue,
@@ -44,10 +45,43 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
44
45
  var newValue = maskWithFormat ? (0, _dateHelper.getMaskedDateOnInput)(value, format, dateFormatDelimiter(), currentValue) : value;
45
46
  if (!format) {
46
47
  setCalendarValue((0, _dateHelper.formatCalendarValue)(newValue));
47
- } else if ((newValue === null || newValue === void 0 ? void 0 : newValue.length) === format.length) {
48
+ setInputValue((0, _dateHelper.formatInputValue)({
49
+ value: newValue,
50
+ format: format,
51
+ lang: lang
52
+ }));
53
+ onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
54
+ return;
55
+ }
56
+
57
+ /**
58
+ * NOTE: если в формате даты есть месяц в полном названии или сокращенном,
59
+ * нужно дополнительно проводить валидацию на полноту введенной даты.
60
+ * Иначе dayjs циклически будет пытаться отформатировать некорректную дату.
61
+ */
62
+ var hasMonthFullName = /M{3,4}/g.test(format);
63
+ var isValidMonth;
64
+ var isLengthEqual;
65
+ if (hasMonthFullName) {
66
+ _datejs.customDayjs.locale(lang);
67
+ var firstIndexOfMonth = format.indexOf('M');
68
+ var lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);
69
+ var fullMonthName = !lastIndexOfMonth ? newValue.slice(firstIndexOfMonth) : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);
70
+ var monthFormatting = format.replace(/[^M]/g, '');
71
+ isValidMonth = (0, _datejs.customDayjs)("01 ".concat(fullMonthName, " 1970"), "DD ".concat(monthFormatting, " YYYY"), true).isValid();
72
+ isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;
73
+ }
74
+ if (!hasMonthFullName && (newValue === null || newValue === void 0 ? void 0 : newValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
48
75
  setCalendarValue((0, _dateHelper.formatCalendarValue)(newValue, format, lang));
49
76
  }
50
- setInputValue((0, _dateHelper.formatInputValue)(newValue, format, lang));
77
+ setInputValue((0, _dateHelper.formatInputValue)({
78
+ value: newValue,
79
+ format: format,
80
+ lang: lang,
81
+ hasMonthFullName: hasMonthFullName,
82
+ isValidMonth: isValidMonth,
83
+ isLengthEqual: isLengthEqual
84
+ }));
51
85
  onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
52
86
  };
53
87
  var handleCommitDate = function handleCommitDate(date, applyFormat, isCalendarValue, dateInfo) {
@@ -61,8 +95,13 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
61
95
  }
62
96
  if (isCalendarValue) {
63
97
  setCalendarValue((0, _dateHelper.formatCalendarValue)(date, format, lang));
64
- setInputValue((0, _dateHelper.formatInputValue)(date, format, lang));
65
- return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate(date, false, true, dateInfo);
98
+ setInputValue((0, _dateHelper.formatInputValue)({
99
+ value: date,
100
+ format: format,
101
+ lang: lang
102
+ }));
103
+ onCommitDate === null || onCommitDate === void 0 || onCommitDate(date, false, true, dateInfo);
104
+ return;
66
105
  }
67
106
  var formatString = applyFormat ? format : undefined;
68
107
  var _getDateFromFormat = (0, _dateHelper.getDateFromFormat)(date, formatString, lang),
@@ -70,7 +109,11 @@ var useDatePicker = exports.useDatePicker = function useDatePicker(_ref) {
70
109
  isError = _getDateFromFormat.isError,
71
110
  isSuccess = _getDateFromFormat.isSuccess;
72
111
  setCalendarValue((0, _dateHelper.formatCalendarValue)(newDate, format, lang));
73
- setInputValue((0, _dateHelper.formatInputValue)(newDate, format, lang));
112
+ setInputValue((0, _dateHelper.formatInputValue)({
113
+ value: newDate,
114
+ format: format,
115
+ lang: lang
116
+ }));
74
117
  onCommitDate === null || onCommitDate === void 0 || onCommitDate(newDate, isError, isSuccess);
75
118
  };
76
119
  return {
@@ -5,10 +5,19 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.getMaskedDateOnInput = exports.getDateFromFormat = exports.getDateFormatDelimiter = exports.formatInputValue = exports.formatCalendarValue = void 0;
7
7
  var _datejs = /*#__PURE__*/require("../../../utils/datejs");
8
- var formatInputValue = exports.formatInputValue = function formatInputValue(value, format, lang) {
8
+ var formatInputValue = exports.formatInputValue = function formatInputValue(_ref) {
9
+ var value = _ref.value,
10
+ format = _ref.format,
11
+ lang = _ref.lang,
12
+ hasMonthFullName = _ref.hasMonthFullName,
13
+ isValidMonth = _ref.isValidMonth,
14
+ isLengthEqual = _ref.isLengthEqual;
9
15
  if (!value || !lang) {
10
16
  return '';
11
17
  }
18
+ if (hasMonthFullName && (!isValidMonth || !isLengthEqual)) {
19
+ return String(value);
20
+ }
12
21
  if (format && (0, _datejs.customDayjs)(value, format, true).isValid()) {
13
22
  return (0, _datejs.customDayjs)(value, format).locale(lang).format(format);
14
23
  }
@@ -62,7 +71,7 @@ var getMaskedDateOnInput = exports.getMaskedDateOnInput = function getMaskedDate
62
71
  if (!value) {
63
72
  return '';
64
73
  }
65
- if (!format || !delimiter) {
74
+ if (!format || !delimiter || /M{3,4}/g.test(format)) {
66
75
  return value;
67
76
  }
68
77
  if (value.length >= format.length) {
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.popupRoot = exports.popupConfig = exports.handlePosition = void 0;
8
8
  var _react = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("react"));
9
- var _reactDom = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react-dom"));
10
9
  var _plasmaCore = /*#__PURE__*/require("@salutejs/plasma-core");
11
10
  var _utils = /*#__PURE__*/require("../../utils");
12
11
  var _Portal = /*#__PURE__*/require("../Portal");
@@ -14,9 +13,7 @@ var _PopupContext = /*#__PURE__*/require("./PopupContext");
14
13
  var _PopupRoot = /*#__PURE__*/require("./PopupRoot");
15
14
  var _hooks = /*#__PURE__*/require("./hooks");
16
15
  var _Popup = /*#__PURE__*/require("./Popup.tokens");
17
- var _Popup2 = /*#__PURE__*/require("./Popup.styles");
18
16
  var _excluded = ["id", "isOpen", "opened", "placement", "offset", "frame", "children", "overlay", "role", "zIndex", "popupInfo", "withAnimation", "className"];
19
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
20
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
21
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
22
19
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
@@ -51,8 +48,8 @@ var handlePosition = exports.handlePosition = function handlePosition(placement,
51
48
  var bottom;
52
49
  var transform;
53
50
  var placements = placement.split('-');
54
- placements.forEach(function (placementValue) {
55
- switch (placementValue) {
51
+ placements.forEach(function (placement) {
52
+ switch (placement) {
56
53
  case 'left':
57
54
  left = x;
58
55
  break;
@@ -87,7 +84,7 @@ var handlePosition = exports.handlePosition = function handlePosition(placement,
87
84
  };
88
85
 
89
86
  /**
90
- * Базовый компонент Popup.
87
+ * Базовый копмонент Popup.
91
88
  */
92
89
  var popupRoot = exports.popupRoot = function popupRoot(Root) {
93
90
  return /*#__PURE__*/(0, _react.forwardRef)(function (_ref, outerRootRef) {
@@ -126,11 +123,44 @@ var popupRoot = exports.popupRoot = function popupRoot(Root) {
126
123
  var portalRef = (0, _react.useRef)(null);
127
124
  var contentRef = (0, _react.useRef)(null);
128
125
  var innerRef = (0, _plasmaCore.useForkRef)(contentRef, outerRootRef);
126
+ var _useState = (0, _react.useState)(false),
127
+ _useState2 = _slicedToArray(_useState, 2),
128
+ forceRender = _useState2[1];
129
+ (0, _react.useEffect)(function () {
130
+ var portal = document.getElementById(_PopupContext.POPUP_PORTAL_ID);
131
+ if (typeof frame !== 'string' && frame && frame.current) {
132
+ portal = frame.current;
133
+ }
134
+ if (!portal) {
135
+ portal = document.createElement('div');
136
+ portal.setAttribute('id', _PopupContext.POPUP_PORTAL_ID);
137
+ /**
138
+ * Нужно для того, чтобы во фрейме не происходило скачков контента
139
+ * при анимации через transform, если есть элемент с шириной/высотой в 100% (Overlay)
140
+ */
141
+ portal.style.width = '0';
142
+ if (typeof frame === 'string' && frame !== 'document') {
143
+ var _document$getElementB;
144
+ (_document$getElementB = document.getElementById(frame)) === null || _document$getElementB === void 0 || _document$getElementB.appendChild(portal);
145
+ } else {
146
+ document.body.appendChild(portal);
147
+ }
148
+ }
149
+ portalRef.current = portal;
150
+
151
+ /**
152
+ * Изменение стейта нужно для того, чтобы Popup
153
+ * отобразился после записи DOM элемента в portalRef.current
154
+ */
155
+ forceRender(true);
156
+ }, []);
129
157
  if (!isVisible && !innerIsOpen) {
130
158
  return null;
131
159
  }
132
160
  var cls = (0, _utils.cx)(className, animationInfo !== null && animationInfo !== void 0 && animationInfo.endAnimation ? _Popup.classes.endAnimation : '', animationInfo !== null && animationInfo !== void 0 && animationInfo.endTransition ? _Popup.classes.endTransition : '');
133
- var rootNode = /*#__PURE__*/_react["default"].createElement(Root, _extends({
161
+ return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, portalRef.current && /*#__PURE__*/_react["default"].createElement(_Portal.Portal, {
162
+ container: portalRef.current
163
+ }, /*#__PURE__*/_react["default"].createElement(Root, _extends({
134
164
  className: cls
135
165
  }, rest), overlay, /*#__PURE__*/_react["default"].createElement(_PopupRoot.PopupRoot, {
136
166
  id: innerId,
@@ -140,25 +170,7 @@ var popupRoot = exports.popupRoot = function popupRoot(Root) {
140
170
  zIndex: zIndex,
141
171
  animationInfo: animationInfo,
142
172
  setVisible: setVisible
143
- }, children));
144
- if (typeof frame !== 'string' && frame && frame.current) {
145
- return /*#__PURE__*/_react["default"].createElement(_Portal.Portal, {
146
- container: frame.current
147
- }, rootNode);
148
- }
149
- var withFrameId = typeof frame === 'string' && frame !== 'document';
150
- var containerElement = withFrameId && document.getElementById(frame);
151
- if (containerElement) {
152
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_reactDom["default"].createPortal( /*#__PURE__*/_react["default"].createElement(_Popup2.StyledPortalContainer, {
153
- ref: portalRef
154
- }, portalRef.current && /*#__PURE__*/_react["default"].createElement(_Portal.Portal, {
155
- container: portalRef.current
156
- }, rootNode)), containerElement));
157
- }
158
- var globalPortal = typeof document !== 'undefined' && document.getElementById(_PopupContext.POPUP_PORTAL_ID);
159
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, globalPortal && /*#__PURE__*/_react["default"].createElement(_Portal.Portal, {
160
- container: globalPortal
161
- }, rootNode));
173
+ }, children))));
162
174
  });
163
175
  };
164
176
  var popupConfig = exports.popupConfig = {
@@ -3,35 +3,15 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.StyledPortalContainer = exports.StyledPortal = exports.PopupView = exports.PopupRootContainer = void 0;
6
+ exports.StyledPortal = exports.PopupView = exports.PopupRootContainer = void 0;
7
7
  var _base = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("@emotion/styled/base"));
8
8
  var _utils = /*#__PURE__*/require("./utils");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
10
10
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11
11
  var StyledPortal = exports.StyledPortal = /*#__PURE__*/(0, _base["default"])("div", {
12
- target: "eaqy7mk3",
13
- label: "plasma-new-hope__StyledPortal"
14
- })(process.env.NODE_ENV === "production" ? {
15
- name: "14er37y",
16
- styles: "position:fixed;top:0;left:0;right:0;bottom:0;:empty{width:0;pointer-events:none;}:not(:empty){width:auto;pointer-events:auto;}"
17
- } : {
18
- name: "14er37y",
19
- styles: "position:fixed;top:0;left:0;right:0;bottom:0;:empty{width:0;pointer-events:none;}:not(:empty){width:auto;pointer-events:auto;}",
20
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtzQyIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1BvcHVwL1BvcHVwLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHR5cGUgeyBQb3B1cFJvb3RDb250YWluZXJQcm9wcyB9IGZyb20gJy4vUG9wdXAudHlwZXMnO1xuaW1wb3J0IHsgREVGQVVMVF9aX0lOREVYIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQb3J0YWwgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICA6ZW1wdHkge1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgOm5vdCg6ZW1wdHkpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQb3J0YWxDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICAgIHdpZHRoOiAwO1xuYDtcblxuZXhwb3J0IGNvbnN0IFBvcHVwVmlldyA9IHN0eWxlZC5kaXZgXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuYDtcblxuZXhwb3J0IGNvbnN0IFBvcHVwUm9vdENvbnRhaW5lciA9IHN0eWxlZC5kaXY8UG9wdXBSb290Q29udGFpbmVyUHJvcHM+YFxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAkeyh7IHpJbmRleCB9KSA9PiB6SW5kZXggfHwgREVGQVVMVF9aX0lOREVYfTtcbiAgICBsZWZ0OiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmxlZnQgfHwgJyd9O1xuICAgIHJpZ2h0OiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnJpZ2h0IHx8ICcnfTtcbiAgICB0b3A6ICR7KHsgcG9zaXRpb24gfSkgPT4gcG9zaXRpb24udG9wIHx8ICcnfTtcbiAgICBib3R0b206ICR7KHsgcG9zaXRpb24gfSkgPT4gcG9zaXRpb24uYm90dG9tIHx8ICcnfTtcbiAgICB0cmFuc2Zvcm06ICR7KHsgcG9zaXRpb24gfSkgPT4gcG9zaXRpb24udHJhbnNmb3JtIHx8ICcnfTtcbmA7XG4iXX0= */",
21
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
22
- });
23
- var StyledPortalContainer = exports.StyledPortalContainer = /*#__PURE__*/(0, _base["default"])("div", {
24
12
  target: "eaqy7mk2",
25
- label: "plasma-new-hope__StyledPortalContainer"
26
- })(process.env.NODE_ENV === "production" ? {
27
- name: "k2uqvh",
28
- styles: "width:0"
29
- } : {
30
- name: "k2uqvh",
31
- styles: "width:0",
32
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVCK0MiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9Qb3B1cC9Qb3B1cC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB0eXBlIHsgUG9wdXBSb290Q29udGFpbmVyUHJvcHMgfSBmcm9tICcuL1BvcHVwLnR5cGVzJztcbmltcG9ydCB7IERFRkFVTFRfWl9JTkRFWCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUG9ydGFsID0gc3R5bGVkLmRpdmBcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgOmVtcHR5IHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIDpub3QoOmVtcHR5KSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUG9ydGFsQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgICB3aWR0aDogMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBvcHVwUm9vdENvbnRhaW5lclByb3BzPmBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4IHx8IERFRkFVTFRfWl9JTkRFWH07XG4gICAgbGVmdDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5sZWZ0IHx8ICcnfTtcbiAgICByaWdodDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5yaWdodCB8fCAnJ307XG4gICAgdG9wOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRvcCB8fCAnJ307XG4gICAgYm90dG9tOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmJvdHRvbSB8fCAnJ307XG4gICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRyYW5zZm9ybSB8fCAnJ307XG5gO1xuIl19 */",
33
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
34
- });
13
+ label: "plasma-new-hope__StyledPortal"
14
+ })(process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtzQyIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1BvcHVwL1BvcHVwLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHR5cGUgeyBQb3B1cFJvb3RDb250YWluZXJQcm9wcyB9IGZyb20gJy4vUG9wdXAudHlwZXMnO1xuaW1wb3J0IHsgREVGQVVMVF9aX0lOREVYIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQb3J0YWwgPSBzdHlsZWQuZGl2YGA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBvcHVwUm9vdENvbnRhaW5lclByb3BzPmBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4IHx8IERFRkFVTFRfWl9JTkRFWH07XG4gICAgbGVmdDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5sZWZ0IHx8ICcnfTtcbiAgICByaWdodDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5yaWdodCB8fCAnJ307XG4gICAgdG9wOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRvcCB8fCAnJ307XG4gICAgYm90dG9tOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmJvdHRvbSB8fCAnJ307XG4gICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRyYW5zZm9ybSB8fCAnJ307XG5gO1xuIl19 */");
35
15
  var PopupView = exports.PopupView = /*#__PURE__*/(0, _base["default"])("div", {
36
16
  target: "eaqy7mk1",
37
17
  label: "plasma-new-hope__PopupView"
@@ -41,7 +21,7 @@ var PopupView = exports.PopupView = /*#__PURE__*/(0, _base["default"])("div", {
41
21
  } : {
42
22
  name: "1m82nn4",
43
23
  styles: "position:relative;max-width:100%;pointer-events:all",
44
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJCbUMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9Qb3B1cC9Qb3B1cC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB0eXBlIHsgUG9wdXBSb290Q29udGFpbmVyUHJvcHMgfSBmcm9tICcuL1BvcHVwLnR5cGVzJztcbmltcG9ydCB7IERFRkFVTFRfWl9JTkRFWCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUG9ydGFsID0gc3R5bGVkLmRpdmBcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgOmVtcHR5IHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIDpub3QoOmVtcHR5KSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUG9ydGFsQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgICB3aWR0aDogMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBvcHVwUm9vdENvbnRhaW5lclByb3BzPmBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4IHx8IERFRkFVTFRfWl9JTkRFWH07XG4gICAgbGVmdDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5sZWZ0IHx8ICcnfTtcbiAgICByaWdodDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5yaWdodCB8fCAnJ307XG4gICAgdG9wOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRvcCB8fCAnJ307XG4gICAgYm90dG9tOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmJvdHRvbSB8fCAnJ307XG4gICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRyYW5zZm9ybSB8fCAnJ307XG5gO1xuIl19 */",
24
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9tQyIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1BvcHVwL1BvcHVwLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHR5cGUgeyBQb3B1cFJvb3RDb250YWluZXJQcm9wcyB9IGZyb20gJy4vUG9wdXAudHlwZXMnO1xuaW1wb3J0IHsgREVGQVVMVF9aX0lOREVYIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQb3J0YWwgPSBzdHlsZWQuZGl2YGA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBvcHVwUm9vdENvbnRhaW5lclByb3BzPmBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4IHx8IERFRkFVTFRfWl9JTkRFWH07XG4gICAgbGVmdDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5sZWZ0IHx8ICcnfTtcbiAgICByaWdodDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5yaWdodCB8fCAnJ307XG4gICAgdG9wOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRvcCB8fCAnJ307XG4gICAgYm90dG9tOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmJvdHRvbSB8fCAnJ307XG4gICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRyYW5zZm9ybSB8fCAnJ307XG5gO1xuIl19 */",
45
25
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
46
26
  });
47
27
  var PopupRootContainer = exports.PopupRootContainer = /*#__PURE__*/(0, _base["default"])("div", {
@@ -65,4 +45,4 @@ var PopupRootContainer = exports.PopupRootContainer = /*#__PURE__*/(0, _base["de
65
45
  }, ";transform:", function (_ref6) {
66
46
  var position = _ref6.position;
67
47
  return position.transform || '';
68
- }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlDcUUiLCJmaWxlIjoiLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9Qb3B1cC9Qb3B1cC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5cbmltcG9ydCB0eXBlIHsgUG9wdXBSb290Q29udGFpbmVyUHJvcHMgfSBmcm9tICcuL1BvcHVwLnR5cGVzJztcbmltcG9ydCB7IERFRkFVTFRfWl9JTkRFWCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUG9ydGFsID0gc3R5bGVkLmRpdmBcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgOmVtcHR5IHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIDpub3QoOmVtcHR5KSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5gO1xuXG5leHBvcnQgY29uc3QgU3R5bGVkUG9ydGFsQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgICB3aWR0aDogMDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBvcHVwUm9vdENvbnRhaW5lclByb3BzPmBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4IHx8IERFRkFVTFRfWl9JTkRFWH07XG4gICAgbGVmdDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5sZWZ0IHx8ICcnfTtcbiAgICByaWdodDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5yaWdodCB8fCAnJ307XG4gICAgdG9wOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRvcCB8fCAnJ307XG4gICAgYm90dG9tOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmJvdHRvbSB8fCAnJ307XG4gICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRyYW5zZm9ybSB8fCAnJ307XG5gO1xuIl19 */"));
48
+ }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvUG9wdXAvUG9wdXAuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWFxRSIsImZpbGUiOiIuLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL1BvcHVwL1BvcHVwLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcblxuaW1wb3J0IHR5cGUgeyBQb3B1cFJvb3RDb250YWluZXJQcm9wcyB9IGZyb20gJy4vUG9wdXAudHlwZXMnO1xuaW1wb3J0IHsgREVGQVVMVF9aX0lOREVYIH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBTdHlsZWRQb3J0YWwgPSBzdHlsZWQuZGl2YGA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFZpZXcgPSBzdHlsZWQuZGl2YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbmA7XG5cbmV4cG9ydCBjb25zdCBQb3B1cFJvb3RDb250YWluZXIgPSBzdHlsZWQuZGl2PFBvcHVwUm9vdENvbnRhaW5lclByb3BzPmBcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogJHsoeyB6SW5kZXggfSkgPT4gekluZGV4IHx8IERFRkFVTFRfWl9JTkRFWH07XG4gICAgbGVmdDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5sZWZ0IHx8ICcnfTtcbiAgICByaWdodDogJHsoeyBwb3NpdGlvbiB9KSA9PiBwb3NpdGlvbi5yaWdodCB8fCAnJ307XG4gICAgdG9wOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRvcCB8fCAnJ307XG4gICAgYm90dG9tOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLmJvdHRvbSB8fCAnJ307XG4gICAgdHJhbnNmb3JtOiAkeyh7IHBvc2l0aW9uIH0pID0+IHBvc2l0aW9uLnRyYW5zZm9ybSB8fCAnJ307XG5gO1xuIl19 */"));
@@ -6,11 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.usePopupContext = exports.PopupProvider = exports.POPUP_PORTAL_ID = void 0;
8
8
  var _react = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("react"));
9
- var _reactDom = /*#__PURE__*/_interopRequireDefault( /*#__PURE__*/require("react-dom"));
10
9
  var _ModalContext = /*#__PURE__*/require("../Modal/ModalContext");
11
- var _Popup = /*#__PURE__*/require("./Popup.styles");
12
- var _StyledPortal;
13
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
15
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
16
12
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
@@ -27,11 +23,9 @@ var POPUP_PORTAL_ID = exports.POPUP_PORTAL_ID = 'plasma-popup-root';
27
23
  var items = [];
28
24
  var PopupContext = /*#__PURE__*/(0, _react.createContext)({
29
25
  items: items,
30
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
31
26
  register: function register(_info) {
32
27
  throw new Error('Function not implemented. Add PopupProvider');
33
28
  },
34
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
35
29
  unregister: function unregister(_id) {
36
30
  throw new Error('Function not implemented. Add PopupProvider');
37
31
  }
@@ -42,7 +36,6 @@ var usePopupContext = exports.usePopupContext = function usePopupContext() {
42
36
  var PopupProvider = exports.PopupProvider = function PopupProvider(_ref) {
43
37
  var children = _ref.children;
44
38
  var prevBodyOverflowY = (0, _react.useRef)(typeof document !== 'undefined' ? document.body.style.overflowY : '');
45
- // eslint-disable-next-line no-shadow
46
39
  var _useState = (0, _react.useState)([]),
47
40
  _useState2 = _slicedToArray(_useState, 2),
48
41
  items = _useState2[0],
@@ -80,9 +73,15 @@ var PopupProvider = exports.PopupProvider = function PopupProvider(_ref) {
80
73
  register: register,
81
74
  unregister: unregister
82
75
  };
76
+ (0, _react.useEffect)(function () {
77
+ return function () {
78
+ var portal = document.createElement('div');
79
+ if (portal && document.body.contains(portal)) {
80
+ document.body.removeChild(portal);
81
+ }
82
+ };
83
+ }, []);
83
84
  return /*#__PURE__*/_react["default"].createElement(PopupContext.Provider, {
84
85
  value: context
85
- }, children, /*#__PURE__*/_reactDom["default"].createPortal(_StyledPortal || (_StyledPortal = /*#__PURE__*/_react["default"].createElement(_Popup.StyledPortal, {
86
- id: POPUP_PORTAL_ID
87
- })), document.body));
86
+ }, children);
88
87
  };
@@ -18,7 +18,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
18
18
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
19
19
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
20
20
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
21
- // Хук для подключения анимации
21
+ // Хук для поключения анимации
22
22
  var usePopupAnimation = function usePopupAnimation() {
23
23
  var _useState = (0, _react.useState)(false),
24
24
  _useState2 = _slicedToArray(_useState, 2),
@@ -37,17 +37,20 @@ export function App() {
37
37
 
38
38
  ### Формат даты
39
39
  Формат даты задается с помощью свойства `format`.
40
- | Обозначение | Отображение | Описание |
41
- |-------------|-------------|---------------------|
42
- | DD | 01-31 | Дни месяца, 2 цифры |
43
- | D | 1-31 | Дни месяца |
44
- | MM | 01-12 | Месяц года, 2 цифры |
45
- | M | 1-12 | Месяц года |
46
- | YYYY | 2024 | Год из 4 цифр |
47
- | YY | 24 | Год из 2 цифр |
48
- | Q | 1-4 | Квартал |
40
+ | Обозначение | Отображение | Описание |
41
+ |-------------|---------------------------------------|----------------------------------|
42
+ | DD | 01-31 | Дни месяца, 2 цифры |
43
+ | D | 1-31 | Дни месяца |
44
+ | MMMM | January...December / январь...декабрь | Месяц года, полное название |
45
+ | MMM | Jan...Dec / янв.-дек. | Месяц года, сокращенное название |
46
+ | MM | 01-12 | Месяц года, 2 цифры |
47
+ | M | 1-12 | Месяц года |
48
+ | YYYY | 2024 | Год из 4 цифр |
49
+ | YY | 24 | Год из 2 цифр |
50
+ | Q | 1-4 | Квартал |
51
+
49
52
  При выборе даты в календаре или вводе даты через поле ввода, дата будет приводиться к заданному формату.
50
- Свойство `maskWithFormat` позволяет маскировать ввод:
53
+ Свойство `maskWithFormat` позволяет маскировать ввод, кроме случаев когда месяц имеет формат полной записи MMMM:
51
54
 
52
55
  ```tsx live
53
56
  import React from 'react';
@@ -113,7 +113,11 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
113
113
  _useState8 = _slicedToArray(_useState7, 2),
114
114
  calendarFirstValue = _useState8[0],
115
115
  setCalendarFirstValue = _useState8[1];
116
- var _useState9 = useState(formatInputValue(defaultFirstDate, format, lang)),
116
+ var _useState9 = useState(formatInputValue({
117
+ value: defaultFirstDate,
118
+ format: format,
119
+ lang: lang
120
+ })),
117
121
  _useState10 = _slicedToArray(_useState9, 2),
118
122
  inputFirstValue = _useState10[0],
119
123
  setInputFirstValue = _useState10[1];
@@ -121,7 +125,11 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
121
125
  _useState12 = _slicedToArray(_useState11, 2),
122
126
  calendarSecondValue = _useState12[0],
123
127
  setCalendarSecondValue = _useState12[1];
124
- var _useState13 = useState(formatInputValue(defaultSecondDate, format, lang)),
128
+ var _useState13 = useState(formatInputValue({
129
+ value: defaultSecondDate,
130
+ format: format,
131
+ lang: lang
132
+ })),
125
133
  _useState14 = _slicedToArray(_useState13, 2),
126
134
  inputSecondValue = _useState14[0],
127
135
  setInputSecondValue = _useState14[1];
@@ -240,17 +248,33 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
240
248
  }, [opened]);
241
249
  useEffect(function () {
242
250
  setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));
243
- setInputFirstValue(formatInputValue(defaultFirstDate, format, lang));
251
+ setInputFirstValue(formatInputValue({
252
+ value: defaultFirstDate,
253
+ format: format,
254
+ lang: lang
255
+ }));
244
256
  }, [defaultFirstDate]);
245
257
  useEffect(function () {
246
258
  setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));
247
- setInputSecondValue(formatInputValue(defaultSecondDate, format, lang));
259
+ setInputSecondValue(formatInputValue({
260
+ value: defaultSecondDate,
261
+ format: format,
262
+ lang: lang
263
+ }));
248
264
  }, [defaultSecondDate]);
249
265
  useEffect(function () {
250
266
  setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));
251
- setInputFirstValue(formatInputValue(defaultFirstDate, format, lang));
267
+ setInputFirstValue(formatInputValue({
268
+ value: defaultFirstDate,
269
+ format: format,
270
+ lang: lang
271
+ }));
252
272
  setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));
253
- setInputSecondValue(formatInputValue(defaultSecondDate, format, lang));
273
+ setInputSecondValue(formatInputValue({
274
+ value: defaultSecondDate,
275
+ format: format,
276
+ lang: lang
277
+ }));
254
278
  }, [format, lang]);
255
279
  return /*#__PURE__*/React.createElement(Root, _extends({
256
280
  ref: rootRef,
@@ -83,7 +83,11 @@ export var datePickerRoot = function datePickerRoot(Root) {
83
83
  _useState4 = _slicedToArray(_useState3, 2),
84
84
  calendarValue = _useState4[0],
85
85
  setCalendarValue = _useState4[1];
86
- var _useState5 = useState(formatInputValue(defaultDate, format, lang)),
86
+ var _useState5 = useState(formatInputValue({
87
+ value: defaultDate,
88
+ format: format,
89
+ lang: lang
90
+ })),
87
91
  _useState6 = _slicedToArray(_useState5, 2),
88
92
  inputValue = _useState6[0],
89
93
  setInputValue = _useState6[1];
@@ -149,11 +153,19 @@ export var datePickerRoot = function datePickerRoot(Root) {
149
153
  }, [opened]);
150
154
  useEffect(function () {
151
155
  setCalendarValue(formatCalendarValue(defaultDate, format, lang));
152
- setInputValue(formatInputValue(defaultDate, format, lang));
156
+ setInputValue(formatInputValue({
157
+ value: defaultDate,
158
+ format: format,
159
+ lang: lang
160
+ }));
153
161
  }, [defaultDate]);
154
162
  useEffect(function () {
155
163
  setCalendarValue(formatCalendarValue(defaultDate, format, lang));
156
- setInputValue(formatInputValue(defaultDate, format, lang));
164
+ setInputValue(formatInputValue({
165
+ value: defaultDate,
166
+ format: format,
167
+ lang: lang
168
+ }));
157
169
  }, [format, lang]);
158
170
  return /*#__PURE__*/React.createElement(Root, _extends({
159
171
  view: view,
@@ -1,5 +1,6 @@
1
1
  import { classes } from '../DatePicker.tokens';
2
2
  import { formatCalendarValue, formatInputValue, getDateFromFormat, getMaskedDateOnInput } from '../utils/dateHelper';
3
+ import { customDayjs } from '../../../utils/datejs';
3
4
  export var useDatePicker = function useDatePicker(_ref) {
4
5
  var currentValue = _ref.currentValue,
5
6
  setInputValue = _ref.setInputValue,
@@ -38,10 +39,43 @@ export var useDatePicker = function useDatePicker(_ref) {
38
39
  var newValue = maskWithFormat ? getMaskedDateOnInput(value, format, dateFormatDelimiter(), currentValue) : value;
39
40
  if (!format) {
40
41
  setCalendarValue(formatCalendarValue(newValue));
41
- } else if ((newValue === null || newValue === void 0 ? void 0 : newValue.length) === format.length) {
42
+ setInputValue(formatInputValue({
43
+ value: newValue,
44
+ format: format,
45
+ lang: lang
46
+ }));
47
+ onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
48
+ return;
49
+ }
50
+
51
+ /**
52
+ * NOTE: если в формате даты есть месяц в полном названии или сокращенном,
53
+ * нужно дополнительно проводить валидацию на полноту введенной даты.
54
+ * Иначе dayjs циклически будет пытаться отформатировать некорректную дату.
55
+ */
56
+ var hasMonthFullName = /M{3,4}/g.test(format);
57
+ var isValidMonth;
58
+ var isLengthEqual;
59
+ if (hasMonthFullName) {
60
+ customDayjs.locale(lang);
61
+ var firstIndexOfMonth = format.indexOf('M');
62
+ var lastIndexOfMonth = newValue.indexOf(dateFormatDelimiter(), firstIndexOfMonth);
63
+ var fullMonthName = !lastIndexOfMonth ? newValue.slice(firstIndexOfMonth) : newValue.slice(firstIndexOfMonth, lastIndexOfMonth);
64
+ var monthFormatting = format.replace(/[^M]/g, '');
65
+ isValidMonth = customDayjs("01 ".concat(fullMonthName, " 1970"), "DD ".concat(monthFormatting, " YYYY"), true).isValid();
66
+ isLengthEqual = format.length - monthFormatting.length === newValue.length - fullMonthName.length;
67
+ }
68
+ if (!hasMonthFullName && (newValue === null || newValue === void 0 ? void 0 : newValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
42
69
  setCalendarValue(formatCalendarValue(newValue, format, lang));
43
70
  }
44
- setInputValue(formatInputValue(newValue, format, lang));
71
+ setInputValue(formatInputValue({
72
+ value: newValue,
73
+ format: format,
74
+ lang: lang,
75
+ hasMonthFullName: hasMonthFullName,
76
+ isValidMonth: isValidMonth,
77
+ isLengthEqual: isLengthEqual
78
+ }));
45
79
  onChangeValue === null || onChangeValue === void 0 || onChangeValue(event, newValue);
46
80
  };
47
81
  var handleCommitDate = function handleCommitDate(date, applyFormat, isCalendarValue, dateInfo) {
@@ -55,8 +89,13 @@ export var useDatePicker = function useDatePicker(_ref) {
55
89
  }
56
90
  if (isCalendarValue) {
57
91
  setCalendarValue(formatCalendarValue(date, format, lang));
58
- setInputValue(formatInputValue(date, format, lang));
59
- return onCommitDate === null || onCommitDate === void 0 ? void 0 : onCommitDate(date, false, true, dateInfo);
92
+ setInputValue(formatInputValue({
93
+ value: date,
94
+ format: format,
95
+ lang: lang
96
+ }));
97
+ onCommitDate === null || onCommitDate === void 0 || onCommitDate(date, false, true, dateInfo);
98
+ return;
60
99
  }
61
100
  var formatString = applyFormat ? format : undefined;
62
101
  var _getDateFromFormat = getDateFromFormat(date, formatString, lang),
@@ -64,7 +103,11 @@ export var useDatePicker = function useDatePicker(_ref) {
64
103
  isError = _getDateFromFormat.isError,
65
104
  isSuccess = _getDateFromFormat.isSuccess;
66
105
  setCalendarValue(formatCalendarValue(newDate, format, lang));
67
- setInputValue(formatInputValue(newDate, format, lang));
106
+ setInputValue(formatInputValue({
107
+ value: newDate,
108
+ format: format,
109
+ lang: lang
110
+ }));
68
111
  onCommitDate === null || onCommitDate === void 0 || onCommitDate(newDate, isError, isSuccess);
69
112
  };
70
113
  return {
@@ -1,8 +1,17 @@
1
1
  import { customDayjs } from '../../../utils/datejs';
2
- export var formatInputValue = function formatInputValue(value, format, lang) {
2
+ export var formatInputValue = function formatInputValue(_ref) {
3
+ var value = _ref.value,
4
+ format = _ref.format,
5
+ lang = _ref.lang,
6
+ hasMonthFullName = _ref.hasMonthFullName,
7
+ isValidMonth = _ref.isValidMonth,
8
+ isLengthEqual = _ref.isLengthEqual;
3
9
  if (!value || !lang) {
4
10
  return '';
5
11
  }
12
+ if (hasMonthFullName && (!isValidMonth || !isLengthEqual)) {
13
+ return String(value);
14
+ }
6
15
  if (format && customDayjs(value, format, true).isValid()) {
7
16
  return customDayjs(value, format).locale(lang).format(format);
8
17
  }
@@ -56,7 +65,7 @@ export var getMaskedDateOnInput = function getMaskedDateOnInput(value, format, d
56
65
  if (!value) {
57
66
  return '';
58
67
  }
59
- if (!format || !delimiter) {
68
+ if (!format || !delimiter || /M{3,4}/g.test(format)) {
60
69
  return value;
61
70
  }
62
71
  if (value.length >= format.length) {