@salutejs/plasma-new-hope 0.249.0-canary.1719.13031725630.0 → 0.249.0-canary.1720.13031638569.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js +8 -0
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +8 -0
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.js +57 -36
- package/cjs/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -16
- package/cjs/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/cjs/components/Toast/Toast.css +7 -7
- package/cjs/components/Toast/Toast.js +2 -5
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.styles.js +2 -11
- package/cjs/components/Toast/Toast.styles.js.map +1 -1
- package/cjs/components/Toast/{Toast.styles_1kasmzh.css → Toast.styles_1nei944.css} +2 -2
- package/cjs/components/Toast/Toast.tokens.js +1 -2
- package/cjs/components/Toast/Toast.tokens.js.map +1 -1
- package/cjs/components/Toast/ToastController.css +6 -6
- package/cjs/components/Toast/ToastProvider/ToastProvider.js +1 -6
- package/cjs/components/Toast/ToastProvider/ToastProvider.js.map +1 -1
- package/cjs/components/Toast/utils.js +0 -2
- package/cjs/components/Toast/utils.js.map +1 -1
- package/cjs/components/Toast/variations/_pilled/base.js +1 -1
- package/cjs/components/Toast/variations/_pilled/base.js.map +1 -1
- package/cjs/components/Toast/variations/_pilled/base_199qghc.css +1 -0
- package/cjs/index.css +8 -8
- package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +8 -0
- package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +8 -0
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.js +57 -36
- package/emotion/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -16
- package/emotion/cjs/components/Toast/Toast.js +2 -5
- package/emotion/cjs/components/Toast/Toast.styles.js +6 -9
- package/emotion/cjs/components/Toast/Toast.template-doc.mdx +5 -22
- package/emotion/cjs/components/Toast/Toast.tokens.js +1 -2
- package/emotion/cjs/components/Toast/ToastProvider/ToastProvider.js +1 -6
- package/emotion/cjs/components/Toast/utils.js +1 -2
- package/emotion/cjs/components/Toast/variations/_pilled/base.js +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/Toast/Toast.config.js +7 -17
- package/emotion/cjs/examples/plasma_b2c/components/Toast/Toast.stories.tsx +14 -31
- package/emotion/cjs/examples/plasma_web/components/Toast/Toast.config.js +7 -17
- package/emotion/cjs/examples/plasma_web/components/Toast/Toast.stories.tsx +14 -31
- package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +8 -0
- package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +8 -0
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.js +59 -38
- package/emotion/es/components/DatePicker/SingleDate/SingleDate.js +33 -18
- package/emotion/es/components/Toast/Toast.js +2 -5
- package/emotion/es/components/Toast/Toast.styles.js +6 -9
- package/emotion/es/components/Toast/Toast.template-doc.mdx +5 -22
- package/emotion/es/components/Toast/Toast.tokens.js +1 -2
- package/emotion/es/components/Toast/ToastProvider/ToastProvider.js +2 -7
- package/emotion/es/components/Toast/utils.js +0 -1
- package/emotion/es/components/Toast/variations/_pilled/base.js +1 -1
- package/emotion/es/examples/plasma_b2c/components/Toast/Toast.config.js +7 -17
- package/emotion/es/examples/plasma_b2c/components/Toast/Toast.stories.tsx +14 -31
- package/emotion/es/examples/plasma_web/components/Toast/Toast.config.js +7 -17
- package/emotion/es/examples/plasma_web/components/Toast/Toast.stories.tsx +14 -31
- package/es/components/Calendar/CalendarBase/CalendarBase.js +8 -0
- package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js +8 -0
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.js +59 -38
- package/es/components/DatePicker/RangeDate/RangeDate.js.map +1 -1
- package/es/components/DatePicker/SingleDate/SingleDate.js +33 -18
- package/es/components/DatePicker/SingleDate/SingleDate.js.map +1 -1
- package/es/components/Toast/Toast.css +7 -7
- package/es/components/Toast/Toast.js +2 -5
- package/es/components/Toast/Toast.js.map +1 -1
- package/es/components/Toast/Toast.styles.js +2 -11
- package/es/components/Toast/Toast.styles.js.map +1 -1
- package/es/components/Toast/{Toast.styles_1kasmzh.css → Toast.styles_1nei944.css} +2 -2
- package/es/components/Toast/Toast.tokens.js +1 -2
- package/es/components/Toast/Toast.tokens.js.map +1 -1
- package/es/components/Toast/ToastController.css +6 -6
- package/es/components/Toast/ToastProvider/ToastProvider.js +2 -7
- package/es/components/Toast/ToastProvider/ToastProvider.js.map +1 -1
- package/es/components/Toast/utils.js +1 -2
- package/es/components/Toast/utils.js.map +1 -1
- package/es/components/Toast/variations/_pilled/base.js +1 -1
- package/es/components/Toast/variations/_pilled/base.js.map +1 -1
- package/es/components/Toast/variations/_pilled/base_199qghc.css +1 -0
- package/es/index.css +8 -8
- package/package.json +2 -2
- package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +8 -0
- package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +8 -0
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.js +57 -36
- package/styled-components/cjs/components/DatePicker/SingleDate/SingleDate.js +31 -16
- package/styled-components/cjs/components/Toast/Toast.js +2 -5
- package/styled-components/cjs/components/Toast/Toast.styles.js +2 -5
- package/styled-components/cjs/components/Toast/Toast.template-doc.mdx +5 -22
- package/styled-components/cjs/components/Toast/Toast.tokens.js +1 -2
- package/styled-components/cjs/components/Toast/ToastProvider/ToastProvider.js +1 -6
- package/styled-components/cjs/components/Toast/utils.js +1 -2
- package/styled-components/cjs/components/Toast/variations/_pilled/base.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Toast/Toast.config.js +2 -12
- package/styled-components/cjs/examples/plasma_b2c/components/Toast/Toast.stories.tsx +14 -31
- package/styled-components/cjs/examples/plasma_web/components/Toast/Toast.config.js +2 -12
- package/styled-components/cjs/examples/plasma_web/components/Toast/Toast.stories.tsx +14 -31
- package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +8 -0
- package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +8 -0
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.js +59 -38
- package/styled-components/es/components/DatePicker/SingleDate/SingleDate.js +33 -18
- package/styled-components/es/components/Toast/Toast.js +2 -5
- package/styled-components/es/components/Toast/Toast.styles.js +2 -5
- package/styled-components/es/components/Toast/Toast.template-doc.mdx +5 -22
- package/styled-components/es/components/Toast/Toast.tokens.js +1 -2
- package/styled-components/es/components/Toast/ToastProvider/ToastProvider.js +2 -7
- package/styled-components/es/components/Toast/utils.js +0 -1
- package/styled-components/es/components/Toast/variations/_pilled/base.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/Toast/Toast.config.js +2 -12
- package/styled-components/es/examples/plasma_b2c/components/Toast/Toast.stories.tsx +14 -31
- package/styled-components/es/examples/plasma_web/components/Toast/Toast.config.js +2 -12
- package/styled-components/es/examples/plasma_web/components/Toast/Toast.stories.tsx +14 -31
- package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
- package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts +2 -0
- package/types/components/DatePicker/RangeDate/RangeDate.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts +4 -0
- package/types/components/DatePicker/RangeDate/RangeDate.types.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts +2 -0
- package/types/components/DatePicker/SingleDate/SingleDate.d.ts.map +1 -1
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts +4 -0
- package/types/components/DatePicker/SingleDate/SingleDate.types.d.ts.map +1 -1
- package/types/components/Toast/Toast.styles.d.ts +1 -3
- package/types/components/Toast/Toast.styles.d.ts.map +1 -1
- package/types/components/Toast/Toast.tokens.d.ts +1 -2
- package/types/components/Toast/Toast.tokens.d.ts.map +1 -1
- package/types/components/Toast/Toast.types.d.ts +0 -8
- package/types/components/Toast/Toast.types.d.ts.map +1 -1
- package/types/components/Toast/ToastProvider/ToastProvider.d.ts.map +1 -1
- package/types/components/Toast/utils.d.ts +0 -1
- package/types/components/Toast/utils.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts +2 -0
- package/types/examples/plasma_b2c/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Toast/Toast.config.d.ts +0 -10
- package/types/examples/plasma_b2c/components/Toast/Toast.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Toast/Toast.d.ts +0 -2
- package/types/examples/plasma_b2c/components/Toast/Toast.d.ts.map +1 -1
- package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts +2 -0
- package/types/examples/plasma_web/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Toast/Toast.config.d.ts +0 -10
- package/types/examples/plasma_web/components/Toast/Toast.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Toast/Toast.d.ts +0 -2
- package/types/examples/plasma_web/components/Toast/Toast.d.ts.map +1 -1
- package/cjs/components/Toast/variations/_pilled/base_13i59v3.css +0 -1
- package/es/components/Toast/variations/_pilled/base_13i59v3.css +0 -1
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["className", "autoComplete", "isDoubleCalendar", "opened", "label", "leftHelper", "contentLeft", "contentRight", "view", "size", "readOnly", "disabled", "name", "dividerVariant", "dividerIcon", "defaultFirstDate", "defaultSecondDate", "firstValueError", "secondValueError", "firstValueSuccess", "secondValueSuccess", "firstPlaceholder", "secondPlaceholder", "firstTextfieldContentLeft", "firstTextfieldContentRight", "secondTextfieldContentLeft", "secondTextfieldContentRight", "firstTextfieldTextBefore", "secondTextfieldTextBefore", "firstTextfieldTextAfter", "secondTextfieldTextAfter", "required", "requiredPlacement", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "frame", "usePortal", "placement", "closeOnOverlayClick", "closeOnEsc", "closeAfterDateSelect", "offset", "onToggle", "onChange", "onChangeFirstValue", "onChangeSecondValue", "onCommitFirstDate", "onCommitSecondDate", "onFocusFirstTextfield", "onFocusSecondTextfield", "onBlurFirstTextfield", "onBlurSecondTextfield"];
|
1
|
+
var _excluded = ["className", "autoComplete", "isDoubleCalendar", "opened", "value", "label", "leftHelper", "contentLeft", "contentRight", "view", "size", "readOnly", "disabled", "name", "dividerVariant", "dividerIcon", "defaultFirstDate", "defaultSecondDate", "firstValueError", "secondValueError", "firstValueSuccess", "secondValueSuccess", "firstPlaceholder", "secondPlaceholder", "firstTextfieldContentLeft", "firstTextfieldContentRight", "secondTextfieldContentLeft", "secondTextfieldContentRight", "firstTextfieldTextBefore", "secondTextfieldTextBefore", "firstTextfieldTextAfter", "secondTextfieldTextAfter", "required", "requiredPlacement", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "frame", "usePortal", "placement", "closeOnOverlayClick", "closeOnEsc", "closeAfterDateSelect", "offset", "onToggle", "onChange", "onChangeFirstValue", "onChangeSecondValue", "onCommitFirstDate", "onCommitSecondDate", "onFocusFirstTextfield", "onFocusSecondTextfield", "onBlurFirstTextfield", "onBlurSecondTextfield"];
|
2
2
|
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); }
|
3
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
4
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -8,9 +8,9 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
8
8
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
9
9
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
10
10
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
11
|
-
import React, { createRef, forwardRef, useCallback, useEffect, useRef, useState } from 'react';
|
11
|
+
import React, { createRef, forwardRef, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';
|
12
12
|
import { cx, noop } from '../../../utils';
|
13
|
-
import { formatCalendarValue, formatInputValue, getDateFormatDelimiter, getDateFromFormat } from '../utils/dateHelper';
|
13
|
+
import { formatCalendarValue, formatInputValue, getDateFormatDelimiter, getDateFromFormat, validateDateWithFullMonth } from '../utils/dateHelper';
|
14
14
|
import { useDatePicker } from '../hooks/useDatePicker';
|
15
15
|
import { classes } from '../DatePicker.tokens';
|
16
16
|
import { keys, useKeyNavigation } from '../hooks/useKeyboardNavigation';
|
@@ -31,6 +31,7 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
31
31
|
isDoubleCalendar = _ref$isDoubleCalendar === void 0 ? false : _ref$isDoubleCalendar,
|
32
32
|
_ref$opened = _ref.opened,
|
33
33
|
opened = _ref$opened === void 0 ? false : _ref$opened,
|
34
|
+
externalValue = _ref.value,
|
34
35
|
label = _ref.label,
|
35
36
|
leftHelper = _ref.leftHelper,
|
36
37
|
contentLeft = _ref.contentLeft,
|
@@ -113,6 +114,10 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
113
114
|
var rootRef = useRef(null);
|
114
115
|
var innerRefFirst = useRef(null);
|
115
116
|
var innerRefSecond = useRef(null);
|
117
|
+
var _ref2 = externalValue || [],
|
118
|
+
_ref3 = _slicedToArray(_ref2, 2),
|
119
|
+
startExternalValue = _ref3[0],
|
120
|
+
endExternalValue = _ref3[1];
|
116
121
|
var _useState = useState(rangeRef === null || rangeRef === void 0 || (_rangeRef$current = rangeRef.current) === null || _rangeRef$current === void 0 ? void 0 : _rangeRef$current.firstTextField()),
|
117
122
|
_useState2 = _slicedToArray(_useState, 2),
|
118
123
|
firstInputRef = _useState2[0],
|
@@ -125,24 +130,24 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
125
130
|
_useState6 = _slicedToArray(_useState5, 2),
|
126
131
|
isInnerOpen = _useState6[0],
|
127
132
|
setIsInnerOpen = _useState6[1];
|
128
|
-
var _useState7 = useState(formatCalendarValue(defaultFirstDate, format, lang)),
|
133
|
+
var _useState7 = useState(formatCalendarValue(startExternalValue || defaultFirstDate, format, lang)),
|
129
134
|
_useState8 = _slicedToArray(_useState7, 2),
|
130
135
|
calendarFirstValue = _useState8[0],
|
131
136
|
setCalendarFirstValue = _useState8[1];
|
132
137
|
var _useState9 = useState(formatInputValue({
|
133
|
-
value: defaultFirstDate,
|
138
|
+
value: startExternalValue || defaultFirstDate,
|
134
139
|
format: format,
|
135
140
|
lang: lang
|
136
141
|
})),
|
137
142
|
_useState10 = _slicedToArray(_useState9, 2),
|
138
143
|
inputFirstValue = _useState10[0],
|
139
144
|
setInputFirstValue = _useState10[1];
|
140
|
-
var _useState11 = useState(formatCalendarValue(defaultSecondDate, format, lang)),
|
145
|
+
var _useState11 = useState(formatCalendarValue(endExternalValue || defaultSecondDate, format, lang)),
|
141
146
|
_useState12 = _slicedToArray(_useState11, 2),
|
142
147
|
calendarSecondValue = _useState12[0],
|
143
148
|
setCalendarSecondValue = _useState12[1];
|
144
149
|
var _useState13 = useState(formatInputValue({
|
145
|
-
value: defaultSecondDate,
|
150
|
+
value: endExternalValue || defaultSecondDate,
|
146
151
|
format: format,
|
147
152
|
lang: lang
|
148
153
|
})),
|
@@ -280,6 +285,8 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
280
285
|
}));
|
281
286
|
setCalendarFirstValue(formatCalendarValue(startValue, format, lang));
|
282
287
|
setCalendarSecondValue(formatCalendarValue(endValue, format, lang));
|
288
|
+
handleCommitFirstDate(startValue, true, false);
|
289
|
+
handleCommitSecondDate(endValue, true, false);
|
283
290
|
outerHandler === null || outerHandler === void 0 || outerHandler(event);
|
284
291
|
};
|
285
292
|
var _useKeyNavigation = useKeyNavigation({
|
@@ -305,10 +312,10 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
305
312
|
handleToggle(false);
|
306
313
|
}
|
307
314
|
};
|
308
|
-
var handleChangeCalendarValue = function handleChangeCalendarValue(
|
309
|
-
var
|
310
|
-
firstDate =
|
311
|
-
secondDate =
|
315
|
+
var handleChangeCalendarValue = function handleChangeCalendarValue(_ref4, dateInfo) {
|
316
|
+
var _ref5 = _slicedToArray(_ref4, 2),
|
317
|
+
firstDate = _ref5[0],
|
318
|
+
secondDate = _ref5[1];
|
312
319
|
if (firstDate) {
|
313
320
|
handleCommitFirstDate(firstDate, false, true, dateInfo);
|
314
321
|
}
|
@@ -385,42 +392,56 @@ export var datePickerRangeRoot = function datePickerRangeRoot(Root) {
|
|
385
392
|
});
|
386
393
|
}, [opened]);
|
387
394
|
useEffect(function () {
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
}));
|
394
|
-
}, [defaultFirstDate]);
|
395
|
-
useEffect(function () {
|
396
|
-
setCalendarSecondValue(formatCalendarValue(defaultSecondDate, format, lang));
|
397
|
-
setInputSecondValue(formatInputValue({
|
398
|
-
value: defaultSecondDate,
|
399
|
-
format: format,
|
400
|
-
lang: lang
|
401
|
-
}));
|
402
|
-
}, [defaultSecondDate]);
|
403
|
-
useEffect(function () {
|
404
|
-
setCalendarFirstValue(formatCalendarValue(defaultFirstDate, format, lang));
|
395
|
+
if (calendarFirstValue && calendarSecondValue) {
|
396
|
+
setFullDateEntered(true);
|
397
|
+
}
|
398
|
+
}, [calendarFirstValue, calendarSecondValue]);
|
399
|
+
useLayoutEffect(function () {
|
405
400
|
setInputFirstValue(formatInputValue({
|
406
|
-
value: defaultFirstDate,
|
401
|
+
value: startExternalValue || defaultFirstDate,
|
407
402
|
format: format,
|
408
403
|
lang: lang
|
409
404
|
}));
|
410
|
-
|
405
|
+
if (!format) {
|
406
|
+
setCalendarFirstValue(formatCalendarValue(startExternalValue || defaultFirstDate, undefined, lang));
|
407
|
+
return;
|
408
|
+
}
|
409
|
+
var _validateDateWithFull = validateDateWithFullMonth({
|
410
|
+
currentValue: inputFirstValue,
|
411
|
+
format: format,
|
412
|
+
lang: lang
|
413
|
+
}),
|
414
|
+
hasMonthFullName = _validateDateWithFull.hasMonthFullName,
|
415
|
+
isValidMonth = _validateDateWithFull.isValidMonth,
|
416
|
+
isLengthEqual = _validateDateWithFull.isLengthEqual;
|
417
|
+
if (!hasMonthFullName && (inputFirstValue === null || inputFirstValue === void 0 ? void 0 : inputFirstValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
|
418
|
+
setCalendarFirstValue(formatCalendarValue(inputFirstValue, format, lang));
|
419
|
+
}
|
420
|
+
}, [startExternalValue, defaultFirstDate, format, lang]);
|
421
|
+
useLayoutEffect(function () {
|
411
422
|
setInputSecondValue(formatInputValue({
|
412
|
-
value: defaultSecondDate,
|
423
|
+
value: endExternalValue || defaultSecondDate,
|
413
424
|
format: format,
|
414
425
|
lang: lang
|
415
426
|
}));
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
setFullDateEntered(true);
|
427
|
+
if (!format) {
|
428
|
+
setCalendarSecondValue(formatCalendarValue(endExternalValue || defaultSecondDate, format, lang));
|
429
|
+
return;
|
420
430
|
}
|
421
|
-
|
422
|
-
|
423
|
-
|
431
|
+
var _validateDateWithFull2 = validateDateWithFullMonth({
|
432
|
+
currentValue: inputSecondValue,
|
433
|
+
format: format,
|
434
|
+
lang: lang
|
435
|
+
}),
|
436
|
+
hasMonthFullName = _validateDateWithFull2.hasMonthFullName,
|
437
|
+
isValidMonth = _validateDateWithFull2.isValidMonth,
|
438
|
+
isLengthEqual = _validateDateWithFull2.isLengthEqual;
|
439
|
+
if (!hasMonthFullName && (inputSecondValue === null || inputSecondValue === void 0 ? void 0 : inputSecondValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
|
440
|
+
setCalendarFirstValue(formatCalendarValue(inputSecondValue, format, lang));
|
441
|
+
}
|
442
|
+
}, [endExternalValue, defaultSecondDate, format, lang]);
|
443
|
+
var RootWrapper = useCallback(function (_ref6) {
|
444
|
+
var children = _ref6.children;
|
424
445
|
return /*#__PURE__*/React.createElement(Root, {
|
425
446
|
view: view,
|
426
447
|
size: size,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["className", "opened", "label", "labelPlacement", "keepPlaceholder", "required", "requiredPlacement", "placeholder", "leftHelper", "contentLeft", "contentRight", "textBefore", "textAfter", "view", "size", "readOnly", "disabled", "name", "defaultDate", "valueError", "valueSuccess", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "frame", "usePortal", "placement", "closeOnOverlayClick", "closeOnEsc", "offset", "onChangeValue", "onCommitDate", "onToggle", "onFocus", "onBlur", "onChange"];
|
1
|
+
var _excluded = ["className", "opened", "value", "label", "labelPlacement", "keepPlaceholder", "required", "requiredPlacement", "placeholder", "leftHelper", "contentLeft", "contentRight", "textBefore", "textAfter", "view", "size", "readOnly", "disabled", "name", "defaultDate", "valueError", "valueSuccess", "format", "lang", "maskWithFormat", "min", "max", "includeEdgeDates", "eventList", "disabledList", "eventMonthList", "disabledMonthList", "eventQuarterList", "disabledQuarterList", "eventYearList", "disabledYearList", "type", "frame", "usePortal", "placement", "closeOnOverlayClick", "closeOnEsc", "offset", "onChangeValue", "onCommitDate", "onToggle", "onFocus", "onBlur", "onChange"];
|
2
2
|
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); }
|
3
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
4
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -8,9 +8,9 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
8
8
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
9
9
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
10
10
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
11
|
-
import React, { forwardRef, useCallback, useEffect, useRef, useState } from 'react';
|
11
|
+
import React, { forwardRef, useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';
|
12
12
|
import { cx, getPlacements, noop } from '../../../utils';
|
13
|
-
import { formatCalendarValue, formatInputValue, getDateFormatDelimiter } from '../utils/dateHelper';
|
13
|
+
import { formatCalendarValue, formatInputValue, getDateFormatDelimiter, validateDateWithFullMonth } from '../utils/dateHelper';
|
14
14
|
import { useDatePicker } from '../hooks/useDatePicker';
|
15
15
|
import { classes } from '../DatePicker.tokens';
|
16
16
|
import { InputHidden, StyledCalendar } from '../DatePickerBase.styles';
|
@@ -25,6 +25,7 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
25
25
|
var className = _ref.className,
|
26
26
|
_ref$opened = _ref.opened,
|
27
27
|
opened = _ref$opened === void 0 ? false : _ref$opened,
|
28
|
+
value = _ref.value,
|
28
29
|
label = _ref.label,
|
29
30
|
_ref$labelPlacement = _ref.labelPlacement,
|
30
31
|
labelPlacement = _ref$labelPlacement === void 0 ? 'outer' : _ref$labelPlacement,
|
@@ -93,12 +94,12 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
93
94
|
_useState2 = _slicedToArray(_useState, 2),
|
94
95
|
isInnerOpen = _useState2[0],
|
95
96
|
setIsInnerOpen = _useState2[1];
|
96
|
-
var _useState3 = useState(formatCalendarValue(defaultDate, format, lang)),
|
97
|
+
var _useState3 = useState(formatCalendarValue(value || defaultDate, format, lang)),
|
97
98
|
_useState4 = _slicedToArray(_useState3, 2),
|
98
99
|
calendarValue = _useState4[0],
|
99
100
|
setCalendarValue = _useState4[1];
|
100
101
|
var _useState5 = useState(formatInputValue({
|
101
|
-
value: defaultDate,
|
102
|
+
value: value || defaultDate,
|
102
103
|
format: format,
|
103
104
|
lang: lang
|
104
105
|
})),
|
@@ -129,6 +130,12 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
129
130
|
datePickerSuccessClass = _useDatePicker.datePickerSuccessClass,
|
130
131
|
handleChangeValue = _useDatePicker.handleChangeValue,
|
131
132
|
handleCommitDate = _useDatePicker.handleCommitDate;
|
133
|
+
var handleBlur = function handleBlur(event, date) {
|
134
|
+
if (onBlur) {
|
135
|
+
onBlur(event);
|
136
|
+
}
|
137
|
+
handleCommitDate(date, true, false);
|
138
|
+
};
|
132
139
|
var handleToggle = function handleToggle(opened, event) {
|
133
140
|
if (disabled || readOnly) {
|
134
141
|
return;
|
@@ -167,7 +174,9 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
167
174
|
return handleCommitDate(date, true, false);
|
168
175
|
},
|
169
176
|
onFocus: onFocus,
|
170
|
-
onBlur: onBlur
|
177
|
+
onBlur: function onBlur(event) {
|
178
|
+
return handleBlur(event, inputValue);
|
179
|
+
},
|
171
180
|
onKeyDown: onKeyDown,
|
172
181
|
required: required,
|
173
182
|
requiredPlacement: requiredPlacement,
|
@@ -180,22 +189,28 @@ export var datePickerRoot = function datePickerRoot(Root) {
|
|
180
189
|
return prevOpen !== opened && opened;
|
181
190
|
});
|
182
191
|
}, [opened]);
|
183
|
-
|
184
|
-
setCalendarValue(formatCalendarValue(defaultDate, format, lang));
|
185
|
-
setInputValue(formatInputValue({
|
186
|
-
value: defaultDate,
|
187
|
-
format: format,
|
188
|
-
lang: lang
|
189
|
-
}));
|
190
|
-
}, [defaultDate]);
|
191
|
-
useEffect(function () {
|
192
|
-
setCalendarValue(formatCalendarValue(defaultDate, format, lang));
|
192
|
+
useLayoutEffect(function () {
|
193
193
|
setInputValue(formatInputValue({
|
194
|
-
value: defaultDate,
|
194
|
+
value: value || defaultDate,
|
195
195
|
format: format,
|
196
196
|
lang: lang
|
197
197
|
}));
|
198
|
-
|
198
|
+
if (!format) {
|
199
|
+
setCalendarValue(formatCalendarValue(value || defaultDate, undefined, lang));
|
200
|
+
return;
|
201
|
+
}
|
202
|
+
var _validateDateWithFull = validateDateWithFullMonth({
|
203
|
+
currentValue: inputValue,
|
204
|
+
format: format,
|
205
|
+
lang: lang
|
206
|
+
}),
|
207
|
+
hasMonthFullName = _validateDateWithFull.hasMonthFullName,
|
208
|
+
isValidMonth = _validateDateWithFull.isValidMonth,
|
209
|
+
isLengthEqual = _validateDateWithFull.isLengthEqual;
|
210
|
+
if (!hasMonthFullName && (inputValue === null || inputValue === void 0 ? void 0 : inputValue.length) === (format === null || format === void 0 ? void 0 : format.length) || isValidMonth && isLengthEqual) {
|
211
|
+
setCalendarValue(formatCalendarValue(inputValue, format, lang));
|
212
|
+
}
|
213
|
+
}, [value, defaultDate, format, lang]);
|
199
214
|
return /*#__PURE__*/React.createElement(Root, _extends({
|
200
215
|
view: view,
|
201
216
|
size: size,
|
@@ -1,5 +1,5 @@
|
|
1
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
2
|
-
var _excluded = ["role", "width", "text", "hasClose", "contentLeft", "view", "size", "pilled", "className", "style", "closeIconType", "onCloseButtonClick"
|
2
|
+
var _excluded = ["role", "width", "text", "hasClose", "contentLeft", "view", "size", "pilled", "className", "style", "closeIconType", "onCloseButtonClick"];
|
3
3
|
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); }
|
4
4
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
5
5
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
@@ -35,7 +35,6 @@ export var toastRoot = function toastRoot(Root) {
|
|
35
35
|
style = props.style,
|
36
36
|
closeIconType = props.closeIconType,
|
37
37
|
onCloseButtonClick = props.onCloseButtonClick,
|
38
|
-
textColor = props.textColor,
|
39
38
|
rest = _objectWithoutProperties(props, _excluded);
|
40
39
|
var pilledClass = pilled ? classes.toastPilled : undefined;
|
41
40
|
var fixedWidth = !Number.isNaN(Number(width)) ? "".concat(width, "%") : width;
|
@@ -59,9 +58,7 @@ export var toastRoot = function toastRoot(Root) {
|
|
59
58
|
role: role,
|
60
59
|
"aria-live": ariaLive,
|
61
60
|
"aria-atomic": ariaAtomic
|
62
|
-
}, rest), contentLeft && /*#__PURE__*/React.createElement(StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(StyledContent, {
|
63
|
-
textColor: textColor
|
64
|
-
}, text), hasClose && /*#__PURE__*/React.createElement(CloseIconWrapper, {
|
61
|
+
}, rest), contentLeft && /*#__PURE__*/React.createElement(StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(StyledContent, null, text), hasClose && /*#__PURE__*/React.createElement(CloseIconWrapper, {
|
65
62
|
view: "clear",
|
66
63
|
size: "s",
|
67
64
|
onClick: onCloseButtonClick,
|
@@ -34,10 +34,7 @@ export var StyledOverlay = /*#__PURE__*/styled(Overlay).withConfig({
|
|
34
34
|
})(["&&.", "{animation:0.3s showFadeAnimation ease-out forwards;}&&.", "{animation:0.3s hideFadeAnimation ease-out forwards;}@keyframes showFadeAnimation{0%{opacity:0;}100%{opacity:1;}}@keyframes hideFadeAnimation{0%{opacity:1;}100%{opacity:0;}}"], /*#__PURE__*/String(classes.toastFadeShowed), /*#__PURE__*/String(classes.toastFadeHidden));
|
35
35
|
export var StyledContentLeft = /*#__PURE__*/styled.div.withConfig({
|
36
36
|
componentId: "plasma-new-hope__sc-19l9ekl-3"
|
37
|
-
})(["display:flex;--plasma_private-content-
|
37
|
+
})(["display:flex;--plasma_private-left-content-margin:var(", ");margin:var(--plasma_private-left-content-margin);"], tokens.leftContentMargin);
|
38
38
|
export var StyledContent = /*#__PURE__*/styled.div.withConfig({
|
39
39
|
componentId: "plasma-new-hope__sc-19l9ekl-4"
|
40
|
-
})(["
|
41
|
-
var textColor = _ref5.textColor;
|
42
|
-
return textColor || 'currentColor';
|
43
|
-
});
|
40
|
+
})([""]);
|
@@ -104,10 +104,6 @@ export interface ShowToastArgs {
|
|
104
104
|
* Время отображения подсказки. Если не передать значение, подсказка будет отображаться пока ее не закроют.
|
105
105
|
*/
|
106
106
|
timeout?: number;
|
107
|
-
/**
|
108
|
-
* Цвет текста (по умолчанию берётся цвет из view)
|
109
|
-
*/
|
110
|
-
textColor?: string;
|
111
107
|
/**
|
112
108
|
* callback срабатывающий в момент события hideToast
|
113
109
|
*/
|
@@ -121,11 +117,9 @@ export interface ShowToastArgs {
|
|
121
117
|
|
122
118
|
## Пример использования
|
123
119
|
|
124
|
-
Для изменения цветовой темы компонента `Toast` используйте свойство `view` компонента `ViewContainer`.
|
125
|
-
|
126
120
|
```jsx live
|
127
121
|
import React from 'react'
|
128
|
-
import { useToast, ToastProvider, Button
|
122
|
+
import { useToast, ToastProvider, Button } from '@salutejs/{{ package }}'
|
129
123
|
|
130
124
|
export function App() {
|
131
125
|
|
@@ -136,13 +130,12 @@ export function App() {
|
|
136
130
|
const onHide = () => {}
|
137
131
|
const toastData = {
|
138
132
|
text: 'Подсказка вызванная showToast',
|
139
|
-
textColor: 'cyan',
|
140
133
|
position: 'bottom',
|
141
134
|
role: 'status',
|
142
135
|
hasClose: true,
|
143
136
|
fade: false,
|
144
137
|
size: 'm',
|
145
|
-
view: '
|
138
|
+
view: 'dark',
|
146
139
|
timeout: 3000,
|
147
140
|
onShow,
|
148
141
|
onHide
|
@@ -152,19 +145,9 @@ export function App() {
|
|
152
145
|
}
|
153
146
|
|
154
147
|
return (
|
155
|
-
<
|
156
|
-
<
|
157
|
-
|
158
|
-
<ToastExample />
|
159
|
-
</ToastProvider>
|
160
|
-
</ViewContainer>
|
161
|
-
|
162
|
-
<ViewContainer view="onDark">
|
163
|
-
<ToastProvider>
|
164
|
-
<ToastExample />
|
165
|
-
</ToastProvider>
|
166
|
-
</ViewContainer>
|
167
|
-
</div>
|
148
|
+
<ToastProvider>
|
149
|
+
<ToastExample />
|
150
|
+
</ToastProvider>
|
168
151
|
)
|
169
152
|
}
|
170
153
|
```
|
@@ -19,8 +19,7 @@ export var tokens = {
|
|
19
19
|
letterSpacing: '--plasma-toast-letter-spacing',
|
20
20
|
lineHeight: '--plasma-toast-lineheight',
|
21
21
|
pilledBorderRadius: '--plasma-toast-pilled-border-radius',
|
22
|
-
|
23
|
-
contentLeftColor: '--plasma-toast-content-left-color',
|
22
|
+
leftContentMargin: '--plasma-toast-left-content-margin',
|
24
23
|
closeIconMargin: '--plasma-toast-close-icon-margin',
|
25
24
|
closeIconColor: '--plasma-toast-close-icon-color',
|
26
25
|
closeIconColorOnHover: '--plasma-toast-close-icon-color-on-hover',
|
@@ -6,7 +6,7 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
6
6
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
7
7
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
8
8
|
import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
|
9
|
-
import {
|
9
|
+
import { DEFAULT_FADE, DEFAULT_POSITION, TIMER_DELAY } from '../utils';
|
10
10
|
export var ToastContext = /*#__PURE__*/createContext(null);
|
11
11
|
export var useToastInner = function useToastInner() {
|
12
12
|
var context = useContext(ToastContext);
|
@@ -118,9 +118,6 @@ export var ToastProviderHoc = function ToastProviderHoc(ToastComponent) {
|
|
118
118
|
size = _getShowToastCallSign.size,
|
119
119
|
view = _getShowToastCallSign.view,
|
120
120
|
width = _getShowToastCallSign.width,
|
121
|
-
_getShowToastCallSign4 = _getShowToastCallSign.closeIconType,
|
122
|
-
closeIconType = _getShowToastCallSign4 === void 0 ? DEFAULT_CLOSE_ICON_TYPE : _getShowToastCallSign4,
|
123
|
-
textColor = _getShowToastCallSign.textColor,
|
124
121
|
onHide = _getShowToastCallSign.onHide,
|
125
122
|
onShow = _getShowToastCallSign.onShow;
|
126
123
|
setToastProps({
|
@@ -134,9 +131,7 @@ export var ToastProviderHoc = function ToastProviderHoc(ToastComponent) {
|
|
134
131
|
pilled: pilled,
|
135
132
|
hasClose: hasClose,
|
136
133
|
size: size,
|
137
|
-
view: view
|
138
|
-
closeIconType: closeIconType,
|
139
|
-
textColor: textColor
|
134
|
+
view: view
|
140
135
|
});
|
141
136
|
setToastInfo({
|
142
137
|
timeout: timeout,
|
@@ -2,7 +2,6 @@ import { buttonConfig } from '../Button';
|
|
2
2
|
import { component, mergeConfig } from '../../engines';
|
3
3
|
export var DEFAULT_FADE = true;
|
4
4
|
export var DEFAULT_POSITION = 'bottom';
|
5
|
-
export var DEFAULT_CLOSE_ICON_TYPE = 'default';
|
6
5
|
export var TIMER_DELAY = 300;
|
7
6
|
export var FADE_Z_INDEX = '9900';
|
8
7
|
export var TOAST_Z_INDEX = '9901';
|
@@ -1,3 +1,3 @@
|
|
1
1
|
import { css } from 'styled-components';
|
2
2
|
import { classes, tokens } from '../../Toast.tokens';
|
3
|
-
export var base = /*#__PURE__*/css(["&.", "{--plasma_private-content-
|
3
|
+
export var base = /*#__PURE__*/css(["&.", "{--plasma_private-left-content-margin:var(", ");--plasma_private-close-icon-margin:var(", ");border-radius:var(", ");}"], /*#__PURE__*/String(classes.toastPilled), tokens.leftContentMargin, tokens.closeIconMargin, tokens.pilledBorderRadius);
|
@@ -9,24 +9,14 @@ export var config = {
|
|
9
9
|
variations: {
|
10
10
|
view: {
|
11
11
|
"default": /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-secondary);", ":var(--text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
12
|
-
positive: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-positive);", ":var(--text-secondary);", ":var(--text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.contentLeftColor, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
13
|
-
negative: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-negative);", ":var(--text-secondary);", ":var(--text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.contentLeftColor, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
14
|
-
/**
|
15
|
-
* @deprecated
|
16
|
-
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
17
|
-
*/
|
18
12
|
dark: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-surface-solid-primary-brightness);", ":var(--on-dark-text-secondary);", ":var(--on-dark-text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
19
|
-
/**
|
20
|
-
* @deprecated
|
21
|
-
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
22
|
-
*/
|
23
13
|
light: /*#__PURE__*/css(["", ":var(--on-light-text-primary);", ":var(--on-light-surface-solid-primary-brightness);", ":var(--on-light-text-secondary);", ":var(--on-light-text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover)
|
24
14
|
},
|
25
15
|
size: {
|
26
|
-
m: /*#__PURE__*/css(["", ":0.75rem;", ":calc(100vw - 5rem);", ":0.5625rem 0.75rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.375rem -0.0625rem -0.125rem;", ":-0.0625rem -0.25rem -0.0625rem 0.5rem;"], toastTokens.borderRadius, toastTokens.maxWidth, toastTokens.padding, toastTokens.fontFamily, toastTokens.fontSize, toastTokens.fontStyle, toastTokens.fontWeight, toastTokens.letterSpacing, toastTokens.lineHeight, toastTokens.
|
16
|
+
m: /*#__PURE__*/css(["", ":0.75rem;", ":calc(100vw - 5rem);", ":0.5625rem 0.75rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.375rem -0.0625rem -0.125rem;", ":-0.0625rem -0.25rem -0.0625rem 0.5rem;"], toastTokens.borderRadius, toastTokens.maxWidth, toastTokens.padding, toastTokens.fontFamily, toastTokens.fontSize, toastTokens.fontStyle, toastTokens.fontWeight, toastTokens.letterSpacing, toastTokens.lineHeight, toastTokens.leftContentMargin, toastTokens.closeIconMargin)
|
27
17
|
},
|
28
18
|
pilled: {
|
29
|
-
"true": /*#__PURE__*/css(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], toastTokens.pilledBorderRadius, toastTokens.
|
19
|
+
"true": /*#__PURE__*/css(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], toastTokens.pilledBorderRadius, toastTokens.leftContentMargin, toastTokens.closeIconMargin)
|
30
20
|
},
|
31
21
|
closeIconType: {
|
32
22
|
"default": /*#__PURE__*/css(["", ":1rem;", ":1.5rem;"], toastTokens.closeIconButtonSize, toastTokens.closeIconSize),
|
@@ -4,39 +4,21 @@ import { action } from '@storybook/addon-actions';
|
|
4
4
|
import styled from 'styled-components';
|
5
5
|
import { disableProps } from '@salutejs/plasma-sb-utils';
|
6
6
|
|
7
|
-
import {
|
7
|
+
import { toastConfig } from '../../../../components/Toast';
|
8
|
+
import { mergeConfig } from '../../../../engines';
|
9
|
+
import { WithTheme, argTypesFromConfig } from '../../../_helpers';
|
8
10
|
import { Button } from '../Button/Button';
|
9
11
|
import { PopupProvider } from '../Popup/Popup';
|
10
12
|
import { addNotification } from '../../../../../src/components/Notification';
|
11
13
|
import { NotificationsProvider } from '../Notification/Notification';
|
12
14
|
import { Modal } from '../Modal/Modal';
|
13
15
|
|
16
|
+
import { config } from './Toast.config';
|
14
17
|
import { Toast, ToastController, ToastProvider, useToast } from './Toast';
|
15
18
|
|
16
|
-
const views = ['default', 'positive', 'negative'];
|
17
|
-
const closeIconTypes = ['default', 'thin'];
|
18
|
-
|
19
19
|
const meta: Meta<typeof ToastController> = {
|
20
20
|
title: 'b2c/Overlay/Toast',
|
21
21
|
decorators: [WithTheme],
|
22
|
-
argTypes: {
|
23
|
-
view: {
|
24
|
-
options: views,
|
25
|
-
control: {
|
26
|
-
type: 'select',
|
27
|
-
},
|
28
|
-
},
|
29
|
-
closeIconType: {
|
30
|
-
options: closeIconTypes,
|
31
|
-
control: {
|
32
|
-
type: 'select',
|
33
|
-
},
|
34
|
-
},
|
35
|
-
textColor: {
|
36
|
-
control: 'color',
|
37
|
-
},
|
38
|
-
...disableProps(['size']),
|
39
|
-
},
|
40
22
|
};
|
41
23
|
|
42
24
|
export default meta;
|
@@ -67,6 +49,7 @@ const StyledWrapper = styled.div`
|
|
67
49
|
`;
|
68
50
|
|
69
51
|
const ToastContainer = styled.div`
|
52
|
+
position: fixed;
|
70
53
|
transform: translateX(50%);
|
71
54
|
`;
|
72
55
|
|
@@ -78,7 +61,6 @@ const Container = styled.div`
|
|
78
61
|
export const ToastComponent: StoryComponent = {
|
79
62
|
args: {
|
80
63
|
text: 'Текст всплывающего уведомления',
|
81
|
-
textColor: undefined,
|
82
64
|
view: 'default',
|
83
65
|
closeIconType: 'default',
|
84
66
|
size: 'm',
|
@@ -86,6 +68,14 @@ export const ToastComponent: StoryComponent = {
|
|
86
68
|
enableContentLeft: true,
|
87
69
|
pilled: false,
|
88
70
|
},
|
71
|
+
argTypes: {
|
72
|
+
closeIconType: {
|
73
|
+
options: ['default', 'thin'],
|
74
|
+
control: {
|
75
|
+
type: 'select',
|
76
|
+
},
|
77
|
+
},
|
78
|
+
},
|
89
79
|
render: ({ enableContentLeft, ...args }) => (
|
90
80
|
<ToastContainer>
|
91
81
|
<Toast contentLeft={enableContentLeft && <BellIcon width="1rem" height="1rem" />} {...args} />
|
@@ -104,8 +94,6 @@ const StoryLiveDemo = ({
|
|
104
94
|
size,
|
105
95
|
hasClose,
|
106
96
|
enableContentLeft,
|
107
|
-
closeIconType,
|
108
|
-
textColor,
|
109
97
|
}: StoryProps) => {
|
110
98
|
const { showToast, hideToast } = useToast();
|
111
99
|
const contentLeft = enableContentLeft && <BellIcon width="1rem" height="1rem" />;
|
@@ -126,8 +114,6 @@ const StoryLiveDemo = ({
|
|
126
114
|
view,
|
127
115
|
size,
|
128
116
|
hasClose,
|
129
|
-
closeIconType,
|
130
|
-
textColor,
|
131
117
|
onHide: action('onHide'),
|
132
118
|
onShow: action('onShow'),
|
133
119
|
});
|
@@ -155,6 +141,7 @@ export const LiveDemo: Story = {
|
|
155
141
|
type: 'inline-radio',
|
156
142
|
},
|
157
143
|
},
|
144
|
+
...argTypesFromConfig(mergeConfig(toastConfig, config)),
|
158
145
|
...disableProps(['role', 'onShow', 'onHide', 'contentLeft']),
|
159
146
|
},
|
160
147
|
parameters: {
|
@@ -180,8 +167,6 @@ const StoryComplex = ({
|
|
180
167
|
size,
|
181
168
|
hasClose,
|
182
169
|
enableContentLeft,
|
183
|
-
closeIconType,
|
184
|
-
textColor,
|
185
170
|
}: StoryProps) => {
|
186
171
|
const [isModalOpen, setIsModalOpen] = useState(false);
|
187
172
|
|
@@ -200,8 +185,6 @@ const StoryComplex = ({
|
|
200
185
|
view,
|
201
186
|
size,
|
202
187
|
hasClose,
|
203
|
-
closeIconType,
|
204
|
-
textColor,
|
205
188
|
onHide: action('onHide'),
|
206
189
|
onShow: action('onShow'),
|
207
190
|
});
|
@@ -9,24 +9,14 @@ export var config = {
|
|
9
9
|
variations: {
|
10
10
|
view: {
|
11
11
|
"default": /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-secondary);", ":var(--text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
12
|
-
positive: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-positive);", ":var(--text-secondary);", ":var(--text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.contentLeftColor, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
13
|
-
negative: /*#__PURE__*/css(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-negative);", ":var(--text-secondary);", ":var(--text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.contentLeftColor, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
14
|
-
/**
|
15
|
-
* @deprecated
|
16
|
-
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
17
|
-
*/
|
18
12
|
dark: /*#__PURE__*/css(["", ":var(--on-dark-text-primary);", ":var(--on-dark-surface-solid-primary-brightness);", ":var(--on-dark-text-secondary);", ":var(--on-dark-text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover),
|
19
|
-
/**
|
20
|
-
* @deprecated
|
21
|
-
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
22
|
-
*/
|
23
13
|
light: /*#__PURE__*/css(["", ":var(--on-light-text-primary);", ":var(--on-light-surface-solid-primary-brightness);", ":var(--on-light-text-secondary);", ":var(--on-light-text-secondary);"], toastTokens.color, toastTokens.background, toastTokens.closeIconColor, toastTokens.closeIconColorOnHover)
|
24
14
|
},
|
25
15
|
size: {
|
26
|
-
m: /*#__PURE__*/css(["", ":0.75rem;", ":calc(100vw - 5rem);", ":0.5625rem 0.75rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.375rem -0.0625rem -0.125rem;", ":-0.0625rem -0.25rem -0.0625rem 0.5rem;"], toastTokens.borderRadius, toastTokens.maxWidth, toastTokens.padding, toastTokens.fontFamily, toastTokens.fontSize, toastTokens.fontStyle, toastTokens.fontWeight, toastTokens.letterSpacing, toastTokens.lineHeight, toastTokens.
|
16
|
+
m: /*#__PURE__*/css(["", ":0.75rem;", ":calc(100vw - 5rem);", ":0.5625rem 0.75rem;", ":var(--plasma-typo-body-xs-font-family);", ":var(--plasma-typo-body-xs-font-size);", ":var(--plasma-typo-body-xs-font-style);", ":var(--plasma-typo-body-xs-font-weight);", ":var(--plasma-typo-body-xs-letter-spacing);", ":var(--plasma-typo-body-xs-line-height);", ":-0.0625rem 0.375rem -0.0625rem -0.125rem;", ":-0.0625rem -0.25rem -0.0625rem 0.5rem;"], toastTokens.borderRadius, toastTokens.maxWidth, toastTokens.padding, toastTokens.fontFamily, toastTokens.fontSize, toastTokens.fontStyle, toastTokens.fontWeight, toastTokens.letterSpacing, toastTokens.lineHeight, toastTokens.leftContentMargin, toastTokens.closeIconMargin)
|
27
17
|
},
|
28
18
|
pilled: {
|
29
|
-
"true": /*#__PURE__*/css(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], toastTokens.pilledBorderRadius, toastTokens.
|
19
|
+
"true": /*#__PURE__*/css(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], toastTokens.pilledBorderRadius, toastTokens.leftContentMargin, toastTokens.closeIconMargin)
|
30
20
|
},
|
31
21
|
closeIconType: {
|
32
22
|
"default": /*#__PURE__*/css(["", ":1rem;", ":1.5rem;"], toastTokens.closeIconButtonSize, toastTokens.closeIconSize),
|