@salutejs/plasma-new-hope 0.253.0-canary.1730.13069305986.0 → 0.253.0-dev.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/Autocomplete/Autocomplete.css +30 -30
- package/cjs/components/Combobox/ComboboxNew/Combobox.css +30 -30
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +30 -30
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +30 -30
- package/cjs/components/DatePicker/SingleDate/SingleDate.css +30 -30
- package/cjs/components/Pagination/Pagination.css +30 -30
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +30 -30
- package/cjs/components/Portal/Portal.js +5 -1
- package/cjs/components/Portal/Portal.js.map +1 -1
- package/cjs/components/Range/Range.css +30 -30
- package/cjs/components/Select/Select.css +30 -30
- package/cjs/components/Select/ui/Target/Target.css +30 -30
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +30 -30
- package/cjs/components/Slider/Slider.css +30 -30
- package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +30 -30
- package/cjs/components/TextField/TextField.styles.js +42 -42
- package/cjs/components/TextField/TextField.styles.js.map +1 -1
- package/cjs/components/TextField/TextField.styles_kh1zhz.css +22 -0
- package/cjs/components/TextField/ui/Hint/Hint.css +20 -20
- package/cjs/components/TextField/variations/_clear/base.js +1 -1
- package/cjs/components/TextField/variations/_clear/base_gm5pwg.css +1 -0
- package/cjs/components/TextField/variations/_disabled/base.js +1 -1
- package/{es/components/TextField/variations/_disabled/base_2tv0nz.css → cjs/components/TextField/variations/_disabled/base_4d3opa.css} +1 -1
- package/cjs/components/TextField/variations/_hint-size/base.js +1 -1
- package/{es/components/TextField/variations/_hint-size/base_z7a2uf.css → cjs/components/TextField/variations/_hint-size/base_1x99605.css} +1 -1
- package/cjs/components/TextField/variations/_hint-view/base.js +1 -1
- package/cjs/components/TextField/variations/_hint-view/{base_1htnb8e.css → base_l8etux.css} +1 -1
- package/cjs/components/TextField/variations/_label-placement/base.js +1 -1
- package/cjs/components/TextField/variations/_label-placement/base_if7w35.css +1 -0
- package/cjs/components/TextField/variations/_read-only/base.js +1 -1
- package/cjs/components/TextField/variations/_read-only/base_17ypmu7.css +1 -0
- package/cjs/components/TextField/variations/_size/base.js +1 -1
- package/cjs/components/TextField/variations/_size/base_7va3kt.css +1 -0
- package/cjs/components/TextField/variations/_view/base.js +1 -1
- package/cjs/components/TextField/variations/_view/base_1uzaktg.css +1 -0
- package/cjs/components/TextFieldGroup/TextFieldGroup.css +1 -1
- package/cjs/components/TextFieldGroup/variations/_shape/base.js +1 -1
- package/cjs/components/TextFieldGroup/variations/_shape/base_52bndd.css +1 -0
- package/cjs/components/Toast/Toast.css +7 -7
- package/cjs/components/Toast/Toast.js +5 -2
- package/cjs/components/Toast/Toast.js.map +1 -1
- package/cjs/components/Toast/Toast.styles.js +11 -2
- package/cjs/components/Toast/Toast.styles.js.map +1 -1
- package/cjs/components/Toast/{Toast.styles_1nei944.css → Toast.styles_1kasmzh.css} +2 -2
- package/cjs/components/Toast/Toast.tokens.js +2 -1
- 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 +6 -1
- package/cjs/components/Toast/ToastProvider/ToastProvider.js.map +1 -1
- package/cjs/components/Toast/utils.js +2 -0
- 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_13i59v3.css +1 -0
- package/cjs/index.css +36 -36
- package/emotion/cjs/components/Portal/Portal.js +5 -1
- package/emotion/cjs/components/TextField/TextField.styles.js +44 -45
- package/emotion/cjs/components/Toast/Toast.js +5 -2
- package/emotion/cjs/components/Toast/Toast.styles.js +9 -6
- package/emotion/cjs/components/Toast/Toast.template-doc.mdx +22 -5
- package/emotion/cjs/components/Toast/Toast.tokens.js +2 -1
- package/emotion/cjs/components/Toast/ToastProvider/ToastProvider.js +6 -1
- package/emotion/cjs/components/Toast/utils.js +2 -1
- package/emotion/cjs/components/Toast/variations/_pilled/base.js +1 -1
- package/emotion/cjs/examples/plasma_b2c/components/Toast/Toast.config.js +17 -7
- package/emotion/cjs/examples/plasma_b2c/components/Toast/Toast.stories.tsx +31 -14
- package/emotion/cjs/examples/plasma_web/components/Toast/Toast.config.js +17 -7
- package/emotion/cjs/examples/plasma_web/components/Toast/Toast.stories.tsx +31 -14
- package/emotion/es/components/Portal/Portal.js +5 -1
- package/emotion/es/components/TextField/TextField.styles.js +44 -45
- package/emotion/es/components/Toast/Toast.js +5 -2
- package/emotion/es/components/Toast/Toast.styles.js +9 -6
- package/emotion/es/components/Toast/Toast.template-doc.mdx +22 -5
- package/emotion/es/components/Toast/Toast.tokens.js +2 -1
- package/emotion/es/components/Toast/ToastProvider/ToastProvider.js +7 -2
- package/emotion/es/components/Toast/utils.js +1 -0
- package/emotion/es/components/Toast/variations/_pilled/base.js +1 -1
- package/emotion/es/examples/plasma_b2c/components/Toast/Toast.config.js +17 -7
- package/emotion/es/examples/plasma_b2c/components/Toast/Toast.stories.tsx +31 -14
- package/emotion/es/examples/plasma_web/components/Toast/Toast.config.js +17 -7
- package/emotion/es/examples/plasma_web/components/Toast/Toast.stories.tsx +31 -14
- package/es/components/Autocomplete/Autocomplete.css +30 -30
- package/es/components/Combobox/ComboboxNew/Combobox.css +30 -30
- package/es/components/DatePicker/RangeDate/RangeDate.css +30 -30
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +30 -30
- package/es/components/DatePicker/SingleDate/SingleDate.css +30 -30
- package/es/components/Pagination/Pagination.css +30 -30
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +30 -30
- package/es/components/Portal/Portal.js +5 -1
- package/es/components/Portal/Portal.js.map +1 -1
- package/es/components/Range/Range.css +30 -30
- package/es/components/Select/Select.css +30 -30
- package/es/components/Select/ui/Target/Target.css +30 -30
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +30 -30
- package/es/components/Slider/Slider.css +30 -30
- package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +30 -30
- package/es/components/TextField/TextField.styles.js +42 -42
- package/es/components/TextField/TextField.styles.js.map +1 -1
- package/es/components/TextField/TextField.styles_kh1zhz.css +22 -0
- package/es/components/TextField/ui/Hint/Hint.css +20 -20
- package/es/components/TextField/variations/_clear/base.js +1 -1
- package/es/components/TextField/variations/_clear/base_gm5pwg.css +1 -0
- package/es/components/TextField/variations/_disabled/base.js +1 -1
- package/{cjs/components/TextField/variations/_disabled/base_2tv0nz.css → es/components/TextField/variations/_disabled/base_4d3opa.css} +1 -1
- package/es/components/TextField/variations/_hint-size/base.js +1 -1
- package/{cjs/components/TextField/variations/_hint-size/base_z7a2uf.css → es/components/TextField/variations/_hint-size/base_1x99605.css} +1 -1
- package/es/components/TextField/variations/_hint-view/base.js +1 -1
- package/es/components/TextField/variations/_hint-view/{base_1htnb8e.css → base_l8etux.css} +1 -1
- package/es/components/TextField/variations/_label-placement/base.js +1 -1
- package/es/components/TextField/variations/_label-placement/base_if7w35.css +1 -0
- package/es/components/TextField/variations/_read-only/base.js +1 -1
- package/es/components/TextField/variations/_read-only/base_17ypmu7.css +1 -0
- package/es/components/TextField/variations/_size/base.js +1 -1
- package/es/components/TextField/variations/_size/base_7va3kt.css +1 -0
- package/es/components/TextField/variations/_view/base.js +1 -1
- package/es/components/TextField/variations/_view/base_1uzaktg.css +1 -0
- package/es/components/TextFieldGroup/TextFieldGroup.css +1 -1
- package/es/components/TextFieldGroup/variations/_shape/base.js +1 -1
- package/es/components/TextFieldGroup/variations/_shape/base_52bndd.css +1 -0
- package/es/components/Toast/Toast.css +7 -7
- package/es/components/Toast/Toast.js +5 -2
- package/es/components/Toast/Toast.js.map +1 -1
- package/es/components/Toast/Toast.styles.js +11 -2
- package/es/components/Toast/Toast.styles.js.map +1 -1
- package/es/components/Toast/{Toast.styles_1nei944.css → Toast.styles_1kasmzh.css} +2 -2
- package/es/components/Toast/Toast.tokens.js +2 -1
- 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 +7 -2
- package/es/components/Toast/ToastProvider/ToastProvider.js.map +1 -1
- package/es/components/Toast/utils.js +2 -1
- 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_13i59v3.css +1 -0
- package/es/index.css +36 -36
- package/package.json +2 -2
- package/styled-components/cjs/components/Portal/Portal.js +5 -1
- package/styled-components/cjs/components/TextField/TextField.styles.js +22 -23
- package/styled-components/cjs/components/Toast/Toast.js +5 -2
- package/styled-components/cjs/components/Toast/Toast.styles.js +5 -2
- package/styled-components/cjs/components/Toast/Toast.template-doc.mdx +22 -5
- package/styled-components/cjs/components/Toast/Toast.tokens.js +2 -1
- package/styled-components/cjs/components/Toast/ToastProvider/ToastProvider.js +6 -1
- package/styled-components/cjs/components/Toast/utils.js +2 -1
- package/styled-components/cjs/components/Toast/variations/_pilled/base.js +1 -1
- package/styled-components/cjs/examples/plasma_b2c/components/Toast/Toast.config.js +12 -2
- package/styled-components/cjs/examples/plasma_b2c/components/Toast/Toast.stories.tsx +31 -14
- package/styled-components/cjs/examples/plasma_web/components/Toast/Toast.config.js +12 -2
- package/styled-components/cjs/examples/plasma_web/components/Toast/Toast.stories.tsx +31 -14
- package/styled-components/es/components/Portal/Portal.js +5 -1
- package/styled-components/es/components/TextField/TextField.styles.js +22 -23
- package/styled-components/es/components/Toast/Toast.js +5 -2
- package/styled-components/es/components/Toast/Toast.styles.js +5 -2
- package/styled-components/es/components/Toast/Toast.template-doc.mdx +22 -5
- package/styled-components/es/components/Toast/Toast.tokens.js +2 -1
- package/styled-components/es/components/Toast/ToastProvider/ToastProvider.js +7 -2
- package/styled-components/es/components/Toast/utils.js +1 -0
- package/styled-components/es/components/Toast/variations/_pilled/base.js +1 -1
- package/styled-components/es/examples/plasma_b2c/components/Toast/Toast.config.js +12 -2
- package/styled-components/es/examples/plasma_b2c/components/Toast/Toast.stories.tsx +31 -14
- package/styled-components/es/examples/plasma_web/components/Toast/Toast.config.js +12 -2
- package/styled-components/es/examples/plasma_web/components/Toast/Toast.stories.tsx +31 -14
- package/types/components/Portal/Portal.d.ts.map +1 -1
- package/types/components/TextField/TextField.styles.d.ts +1 -1
- package/types/components/TextField/TextField.styles.d.ts.map +1 -1
- package/types/components/Toast/Toast.styles.d.ts +3 -1
- package/types/components/Toast/Toast.styles.d.ts.map +1 -1
- package/types/components/Toast/Toast.tokens.d.ts +2 -1
- package/types/components/Toast/Toast.tokens.d.ts.map +1 -1
- package/types/components/Toast/Toast.types.d.ts +8 -0
- 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 +1 -0
- package/types/components/Toast/utils.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Toast/Toast.config.d.ts +10 -0
- package/types/examples/plasma_b2c/components/Toast/Toast.config.d.ts.map +1 -1
- package/types/examples/plasma_b2c/components/Toast/Toast.d.ts +2 -0
- package/types/examples/plasma_b2c/components/Toast/Toast.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Toast/Toast.config.d.ts +10 -0
- package/types/examples/plasma_web/components/Toast/Toast.config.d.ts.map +1 -1
- package/types/examples/plasma_web/components/Toast/Toast.d.ts +2 -0
- package/types/examples/plasma_web/components/Toast/Toast.d.ts.map +1 -1
- package/cjs/components/TextField/TextField.styles_1cdp5eg.css +0 -22
- package/cjs/components/TextField/variations/_clear/base_appgl3.css +0 -1
- package/cjs/components/TextField/variations/_label-placement/base_jfnl8i.css +0 -1
- package/cjs/components/TextField/variations/_read-only/base_oizdmx.css +0 -1
- package/cjs/components/TextField/variations/_size/base_uulqii.css +0 -1
- package/cjs/components/TextField/variations/_view/base_1npz45o.css +0 -1
- package/cjs/components/TextFieldGroup/variations/_shape/base_1e0je21.css +0 -1
- package/cjs/components/Toast/variations/_pilled/base_199qghc.css +0 -1
- package/es/components/TextField/TextField.styles_1cdp5eg.css +0 -22
- package/es/components/TextField/variations/_clear/base_appgl3.css +0 -1
- package/es/components/TextField/variations/_label-placement/base_jfnl8i.css +0 -1
- package/es/components/TextField/variations/_read-only/base_oizdmx.css +0 -1
- package/es/components/TextField/variations/_size/base_uulqii.css +0 -1
- package/es/components/TextField/variations/_view/base_1npz45o.css +0 -1
- package/es/components/TextFieldGroup/variations/_shape/base_1e0je21.css +0 -1
- package/es/components/Toast/variations/_pilled/base_199qghc.css +0 -1
@@ -15,14 +15,24 @@ var config = exports.config = {
|
|
15
15
|
variations: {
|
16
16
|
view: {
|
17
17
|
"default": /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-secondary);", ":var(--text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
18
|
+
positive: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-positive);", ":var(--text-secondary);", ":var(--text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.contentLeftColor, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
19
|
+
negative: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-negative);", ":var(--text-secondary);", ":var(--text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.contentLeftColor, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
20
|
+
/**
|
21
|
+
* @deprecated
|
22
|
+
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
23
|
+
*/
|
18
24
|
dark: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--on-dark-text-primary);", ":var(--on-dark-surface-solid-primary-brightness);", ":var(--on-dark-text-secondary);", ":var(--on-dark-text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
25
|
+
/**
|
26
|
+
* @deprecated
|
27
|
+
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
28
|
+
*/
|
19
29
|
light: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--on-light-text-primary);", ":var(--on-light-surface-solid-primary-brightness);", ":var(--on-light-text-secondary);", ":var(--on-light-text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover)
|
20
30
|
},
|
21
31
|
size: {
|
22
|
-
m: /*#__PURE__*/(0, _styledComponents.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;"], _Toast.toastTokens.borderRadius, _Toast.toastTokens.maxWidth, _Toast.toastTokens.padding, _Toast.toastTokens.fontFamily, _Toast.toastTokens.fontSize, _Toast.toastTokens.fontStyle, _Toast.toastTokens.fontWeight, _Toast.toastTokens.letterSpacing, _Toast.toastTokens.lineHeight, _Toast.toastTokens.
|
32
|
+
m: /*#__PURE__*/(0, _styledComponents.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;"], _Toast.toastTokens.borderRadius, _Toast.toastTokens.maxWidth, _Toast.toastTokens.padding, _Toast.toastTokens.fontFamily, _Toast.toastTokens.fontSize, _Toast.toastTokens.fontStyle, _Toast.toastTokens.fontWeight, _Toast.toastTokens.letterSpacing, _Toast.toastTokens.lineHeight, _Toast.toastTokens.contentLeftMargin, _Toast.toastTokens.closeIconMargin)
|
23
33
|
},
|
24
34
|
pilled: {
|
25
|
-
"true": /*#__PURE__*/(0, _styledComponents.css)(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], _Toast.toastTokens.pilledBorderRadius, _Toast.toastTokens.
|
35
|
+
"true": /*#__PURE__*/(0, _styledComponents.css)(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], _Toast.toastTokens.pilledBorderRadius, _Toast.toastTokens.contentLeftMargin, _Toast.toastTokens.closeIconMargin)
|
26
36
|
},
|
27
37
|
closeIconType: {
|
28
38
|
"default": /*#__PURE__*/(0, _styledComponents.css)(["", ":1rem;", ":1.5rem;"], _Toast.toastTokens.closeIconButtonSize, _Toast.toastTokens.closeIconSize),
|
@@ -4,21 +4,39 @@ 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 {
|
8
|
-
import { mergeConfig } from '../../../../engines';
|
9
|
-
import { WithTheme, argTypesFromConfig } from '../../../_helpers';
|
7
|
+
import { WithTheme } from '../../../_helpers';
|
10
8
|
import { Button } from '../Button/Button';
|
11
9
|
import { PopupProvider } from '../Popup/Popup';
|
12
10
|
import { addNotification } from '../../../../../src/components/Notification';
|
13
11
|
import { NotificationsProvider } from '../Notification/Notification';
|
14
12
|
import { Modal } from '../Modal/Modal';
|
15
13
|
|
16
|
-
import { config } from './Toast.config';
|
17
14
|
import { Toast, ToastController, ToastProvider, useToast } from './Toast';
|
18
15
|
|
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
|
+
},
|
22
40
|
};
|
23
41
|
|
24
42
|
export default meta;
|
@@ -49,7 +67,6 @@ const StyledWrapper = styled.div`
|
|
49
67
|
`;
|
50
68
|
|
51
69
|
const ToastContainer = styled.div`
|
52
|
-
position: fixed;
|
53
70
|
transform: translateX(50%);
|
54
71
|
`;
|
55
72
|
|
@@ -61,6 +78,7 @@ const Container = styled.div`
|
|
61
78
|
export const ToastComponent: StoryComponent = {
|
62
79
|
args: {
|
63
80
|
text: 'Текст всплывающего уведомления',
|
81
|
+
textColor: undefined,
|
64
82
|
view: 'default',
|
65
83
|
closeIconType: 'default',
|
66
84
|
size: 'm',
|
@@ -68,14 +86,6 @@ export const ToastComponent: StoryComponent = {
|
|
68
86
|
enableContentLeft: true,
|
69
87
|
pilled: false,
|
70
88
|
},
|
71
|
-
argTypes: {
|
72
|
-
closeIconType: {
|
73
|
-
options: ['default', 'thin'],
|
74
|
-
control: {
|
75
|
-
type: 'select',
|
76
|
-
},
|
77
|
-
},
|
78
|
-
},
|
79
89
|
render: ({ enableContentLeft, ...args }) => (
|
80
90
|
<ToastContainer>
|
81
91
|
<Toast contentLeft={enableContentLeft && <BellIcon width="1rem" height="1rem" />} {...args} />
|
@@ -94,6 +104,8 @@ const StoryLiveDemo = ({
|
|
94
104
|
size,
|
95
105
|
hasClose,
|
96
106
|
enableContentLeft,
|
107
|
+
closeIconType,
|
108
|
+
textColor,
|
97
109
|
}: StoryProps) => {
|
98
110
|
const { showToast, hideToast } = useToast();
|
99
111
|
const contentLeft = enableContentLeft && <BellIcon width="1rem" height="1rem" />;
|
@@ -114,6 +126,8 @@ const StoryLiveDemo = ({
|
|
114
126
|
view,
|
115
127
|
size,
|
116
128
|
hasClose,
|
129
|
+
closeIconType,
|
130
|
+
textColor,
|
117
131
|
onHide: action('onHide'),
|
118
132
|
onShow: action('onShow'),
|
119
133
|
});
|
@@ -141,7 +155,6 @@ export const LiveDemo: Story = {
|
|
141
155
|
type: 'inline-radio',
|
142
156
|
},
|
143
157
|
},
|
144
|
-
...argTypesFromConfig(mergeConfig(toastConfig, config)),
|
145
158
|
...disableProps(['role', 'onShow', 'onHide', 'contentLeft']),
|
146
159
|
},
|
147
160
|
parameters: {
|
@@ -167,6 +180,8 @@ const StoryComplex = ({
|
|
167
180
|
size,
|
168
181
|
hasClose,
|
169
182
|
enableContentLeft,
|
183
|
+
closeIconType,
|
184
|
+
textColor,
|
170
185
|
}: StoryProps) => {
|
171
186
|
const [isModalOpen, setIsModalOpen] = useState(false);
|
172
187
|
|
@@ -185,6 +200,8 @@ const StoryComplex = ({
|
|
185
200
|
view,
|
186
201
|
size,
|
187
202
|
hasClose,
|
203
|
+
closeIconType,
|
204
|
+
textColor,
|
188
205
|
onHide: action('onHide'),
|
189
206
|
onShow: action('onShow'),
|
190
207
|
});
|
@@ -15,14 +15,24 @@ var config = exports.config = {
|
|
15
15
|
variations: {
|
16
16
|
view: {
|
17
17
|
"default": /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-secondary);", ":var(--text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
18
|
+
positive: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-positive);", ":var(--text-secondary);", ":var(--text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.contentLeftColor, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
19
|
+
negative: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--text-primary);", ":var(--surface-solid-card-brightness);", ":var(--text-negative);", ":var(--text-secondary);", ":var(--text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.contentLeftColor, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
20
|
+
/**
|
21
|
+
* @deprecated
|
22
|
+
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
23
|
+
*/
|
18
24
|
dark: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--on-dark-text-primary);", ":var(--on-dark-surface-solid-primary-brightness);", ":var(--on-dark-text-secondary);", ":var(--on-dark-text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover),
|
25
|
+
/**
|
26
|
+
* @deprecated
|
27
|
+
* светлый и темный фон регулировать через `view` компонента `ViewContainer`
|
28
|
+
*/
|
19
29
|
light: /*#__PURE__*/(0, _styledComponents.css)(["", ":var(--on-light-text-primary);", ":var(--on-light-surface-solid-primary-brightness);", ":var(--on-light-text-secondary);", ":var(--on-light-text-secondary);"], _Toast.toastTokens.color, _Toast.toastTokens.background, _Toast.toastTokens.closeIconColor, _Toast.toastTokens.closeIconColorOnHover)
|
20
30
|
},
|
21
31
|
size: {
|
22
|
-
m: /*#__PURE__*/(0, _styledComponents.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;"], _Toast.toastTokens.borderRadius, _Toast.toastTokens.maxWidth, _Toast.toastTokens.padding, _Toast.toastTokens.fontFamily, _Toast.toastTokens.fontSize, _Toast.toastTokens.fontStyle, _Toast.toastTokens.fontWeight, _Toast.toastTokens.letterSpacing, _Toast.toastTokens.lineHeight, _Toast.toastTokens.
|
32
|
+
m: /*#__PURE__*/(0, _styledComponents.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;"], _Toast.toastTokens.borderRadius, _Toast.toastTokens.maxWidth, _Toast.toastTokens.padding, _Toast.toastTokens.fontFamily, _Toast.toastTokens.fontSize, _Toast.toastTokens.fontStyle, _Toast.toastTokens.fontWeight, _Toast.toastTokens.letterSpacing, _Toast.toastTokens.lineHeight, _Toast.toastTokens.contentLeftMargin, _Toast.toastTokens.closeIconMargin)
|
23
33
|
},
|
24
34
|
pilled: {
|
25
|
-
"true": /*#__PURE__*/(0, _styledComponents.css)(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], _Toast.toastTokens.pilledBorderRadius, _Toast.toastTokens.
|
35
|
+
"true": /*#__PURE__*/(0, _styledComponents.css)(["", ":1.5rem;", ":-0.0625rem 0.375rem -0.0625rem -0.25rem;", ":-0.0625rem -0.25rem -0.0625rem 0.375rem;"], _Toast.toastTokens.pilledBorderRadius, _Toast.toastTokens.contentLeftMargin, _Toast.toastTokens.closeIconMargin)
|
26
36
|
},
|
27
37
|
closeIconType: {
|
28
38
|
"default": /*#__PURE__*/(0, _styledComponents.css)(["", ":1rem;", ":1.5rem;"], _Toast.toastTokens.closeIconButtonSize, _Toast.toastTokens.closeIconSize),
|
@@ -4,21 +4,39 @@ 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 {
|
8
|
-
import { mergeConfig } from '../../../../engines';
|
9
|
-
import { WithTheme, argTypesFromConfig } from '../../../_helpers';
|
7
|
+
import { WithTheme } from '../../../_helpers';
|
10
8
|
import { Button } from '../Button/Button';
|
11
9
|
import { PopupProvider } from '../Popup/Popup';
|
12
10
|
import { addNotification } from '../../../../../src/components/Notification';
|
13
11
|
import { NotificationsProvider } from '../Notification/Notification';
|
14
12
|
import { Modal } from '../Modal/Modal';
|
15
13
|
|
16
|
-
import { config } from './Toast.config';
|
17
14
|
import { Toast, ToastController, ToastProvider, useToast } from './Toast';
|
18
15
|
|
16
|
+
const views = ['default', 'positive', 'negative'];
|
17
|
+
const closeIconTypes = ['default', 'thin'];
|
18
|
+
|
19
19
|
const meta: Meta<typeof ToastController> = {
|
20
20
|
title: 'web/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
|
+
},
|
22
40
|
};
|
23
41
|
|
24
42
|
export default meta;
|
@@ -49,7 +67,6 @@ const StyledWrapper = styled.div`
|
|
49
67
|
`;
|
50
68
|
|
51
69
|
const ToastContainer = styled.div`
|
52
|
-
position: fixed;
|
53
70
|
transform: translateX(50%);
|
54
71
|
`;
|
55
72
|
|
@@ -61,6 +78,7 @@ const Container = styled.div`
|
|
61
78
|
export const ToastComponent: StoryComponent = {
|
62
79
|
args: {
|
63
80
|
text: 'Текст всплывающего уведомления',
|
81
|
+
textColor: undefined,
|
64
82
|
view: 'default',
|
65
83
|
closeIconType: 'default',
|
66
84
|
size: 'm',
|
@@ -68,14 +86,6 @@ export const ToastComponent: StoryComponent = {
|
|
68
86
|
enableContentLeft: true,
|
69
87
|
pilled: false,
|
70
88
|
},
|
71
|
-
argTypes: {
|
72
|
-
closeIconType: {
|
73
|
-
options: ['default', 'thin'],
|
74
|
-
control: {
|
75
|
-
type: 'select',
|
76
|
-
},
|
77
|
-
},
|
78
|
-
},
|
79
89
|
render: ({ enableContentLeft, ...args }) => (
|
80
90
|
<ToastContainer>
|
81
91
|
<Toast contentLeft={enableContentLeft && <BellIcon width="1rem" height="1rem" />} {...args} />
|
@@ -94,6 +104,8 @@ const StoryLiveDemo = ({
|
|
94
104
|
size,
|
95
105
|
hasClose,
|
96
106
|
enableContentLeft,
|
107
|
+
closeIconType,
|
108
|
+
textColor,
|
97
109
|
}: StoryProps) => {
|
98
110
|
const { showToast, hideToast } = useToast();
|
99
111
|
const contentLeft = enableContentLeft && <BellIcon width="1rem" height="1rem" />;
|
@@ -114,6 +126,8 @@ const StoryLiveDemo = ({
|
|
114
126
|
view,
|
115
127
|
size,
|
116
128
|
hasClose,
|
129
|
+
closeIconType,
|
130
|
+
textColor,
|
117
131
|
onHide: action('onHide'),
|
118
132
|
onShow: action('onShow'),
|
119
133
|
});
|
@@ -141,7 +155,6 @@ export const LiveDemo: Story = {
|
|
141
155
|
type: 'inline-radio',
|
142
156
|
},
|
143
157
|
},
|
144
|
-
...argTypesFromConfig(mergeConfig(toastConfig, config)),
|
145
158
|
...disableProps(['role', 'onShow', 'onHide', 'contentLeft']),
|
146
159
|
},
|
147
160
|
parameters: {
|
@@ -167,6 +180,8 @@ const StoryComplex = ({
|
|
167
180
|
size,
|
168
181
|
hasClose,
|
169
182
|
enableContentLeft,
|
183
|
+
closeIconType,
|
184
|
+
textColor,
|
170
185
|
}: StoryProps) => {
|
171
186
|
const [isModalOpen, setIsModalOpen] = useState(false);
|
172
187
|
|
@@ -185,6 +200,8 @@ const StoryComplex = ({
|
|
185
200
|
view,
|
186
201
|
size,
|
187
202
|
hasClose,
|
203
|
+
closeIconType,
|
204
|
+
textColor,
|
188
205
|
onHide: action('onHide'),
|
189
206
|
onShow: action('onShow'),
|
190
207
|
});
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import ReactDOM from 'react-dom';
|
3
|
+
import { canUseDOM } from '../../utils';
|
3
4
|
/**
|
4
5
|
* Вспомогательный компонент. Используется в Popup, Popover.
|
5
6
|
* Представляет собой ReactDOM.createPortal() в форме компонента.
|
@@ -9,6 +10,9 @@ export var Portal = function Portal(_ref) {
|
|
9
10
|
container = _ref.container,
|
10
11
|
_ref$disabled = _ref.disabled,
|
11
12
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled;
|
13
|
+
if (!canUseDOM) {
|
14
|
+
return null;
|
15
|
+
}
|
12
16
|
var portalContainer = typeof container === 'function' ? container() : container;
|
13
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, disabled || !portalContainer
|
17
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, (disabled || !portalContainer) && children, !disabled && portalContainer && /*#__PURE__*/ReactDOM.createPortal(children, portalContainer));
|
14
18
|
};
|
@@ -1,24 +1,26 @@
|
|
1
1
|
import styled from 'styled-components';
|
2
2
|
import { component, mergeConfig } from '../../engines';
|
3
3
|
import { tooltipConfig } from '../Tooltip';
|
4
|
-
import { popoverClasses } from '../Popover';
|
5
4
|
import { classes, tokens } from './TextField.tokens';
|
6
5
|
var mergedConfig = /*#__PURE__*/mergeConfig(tooltipConfig);
|
7
6
|
var Tooltip = /*#__PURE__*/component(mergedConfig);
|
8
|
-
export var
|
7
|
+
export var Hint = /*#__PURE__*/styled(Tooltip).withConfig({
|
9
8
|
componentId: "plasma-new-hope__sc-g4vxbb-0"
|
9
|
+
})([""]);
|
10
|
+
export var InputWrapper = /*#__PURE__*/styled.div.withConfig({
|
11
|
+
componentId: "plasma-new-hope__sc-g4vxbb-1"
|
10
12
|
})(["position:relative;display:flex;align-items:center;box-sizing:border-box;"]);
|
11
13
|
export var InputLabelWrapper = /*#__PURE__*/styled.div.withConfig({
|
12
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
14
|
+
componentId: "plasma-new-hope__sc-g4vxbb-2"
|
13
15
|
})(["flex:1;overflow:scroll;position:relative;width:100%;display:inline-flex;align-items:center;::-webkit-scrollbar{display:none;}scrollbar-width:none;overscroll-behavior:contain;&.", "{height:var(", ");border-radius:var(", ");}"], /*#__PURE__*/String(classes.hasChips), tokens.chipHeight, tokens.chipBorderRadius);
|
14
16
|
export var StyledChips = /*#__PURE__*/styled.div.withConfig({
|
15
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
17
|
+
componentId: "plasma-new-hope__sc-g4vxbb-3"
|
16
18
|
})(["display:flex;gap:var(", ");margin-right:var(", ",var(", "));user-select:none;"], tokens.chipGap, tokens.chipMarginRight, tokens.chipGap);
|
17
19
|
export var Input = /*#__PURE__*/styled.input.withConfig({
|
18
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
20
|
+
componentId: "plasma-new-hope__sc-g4vxbb-4"
|
19
21
|
})(["box-sizing:border-box;appearance:none;border:0;padding:0;background-color:transparent;outline:none;width:100%;z-index:1;&::placeholder{opacity:0;}"]);
|
20
22
|
export var InputContainer = /*#__PURE__*/styled.div.withConfig({
|
21
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
23
|
+
componentId: "plasma-new-hope__sc-g4vxbb-5"
|
22
24
|
})(["position:relative;display:flex;flex:1;min-width:", ";", "{max-width:", ";}"], function (_ref) {
|
23
25
|
var hasDynamicWidth = _ref.hasDynamicWidth;
|
24
26
|
return hasDynamicWidth ? 'auto' : '60%';
|
@@ -27,13 +29,13 @@ export var InputContainer = /*#__PURE__*/styled.div.withConfig({
|
|
27
29
|
return hasDynamicWidth ? '100%' : 'none';
|
28
30
|
});
|
29
31
|
export var InputPlaceholder = /*#__PURE__*/styled.div.withConfig({
|
30
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
32
|
+
componentId: "plasma-new-hope__sc-g4vxbb-6"
|
31
33
|
})(["display:flex;position:absolute;top:0;left:0;right:0;bottom:0;z-index:0;white-space:nowrap;pointer-events:none;user-select:none;font:inherit;letter-spacing:inherit;line-height:inherit;color:var(", ");padding:", ";"], tokens.placeholderColor, function (_ref3) {
|
32
34
|
var hasPadding = _ref3.hasPadding;
|
33
35
|
return hasPadding ? "var(".concat(tokens.contentLabelInnerPadding, ")") : '0';
|
34
36
|
});
|
35
37
|
export var OuterLabelWrapper = /*#__PURE__*/styled.div.withConfig({
|
36
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
38
|
+
componentId: "plasma-new-hope__sc-g4vxbb-7"
|
37
39
|
})(["display:flex;align-items:center;white-space:", ";margin-bottom:", ";"], function (_ref4) {
|
38
40
|
var isInnerLabel = _ref4.isInnerLabel;
|
39
41
|
return isInnerLabel ? 'nowrap' : 'normal';
|
@@ -42,51 +44,48 @@ export var OuterLabelWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
42
44
|
return isInnerLabel ? "var(".concat(tokens.titleCaptionInnerLabelOffset, ")") : "var(".concat(tokens.labelOffset, ")");
|
43
45
|
});
|
44
46
|
export var TitleCaption = /*#__PURE__*/styled.div.withConfig({
|
45
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
47
|
+
componentId: "plasma-new-hope__sc-g4vxbb-8"
|
46
48
|
})(["display:inline-block;margin-left:auto;"]);
|
47
49
|
export var StyledIndicatorWrapper = /*#__PURE__*/styled.div.withConfig({
|
48
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
50
|
+
componentId: "plasma-new-hope__sc-g4vxbb-9"
|
49
51
|
})(["position:relative;display:inline-flex;align-items:center;"]);
|
50
52
|
export var Label = /*#__PURE__*/styled.label.withConfig({
|
51
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
53
|
+
componentId: "plasma-new-hope__sc-g4vxbb-10"
|
52
54
|
})(["display:inline-flex;"]);
|
53
55
|
export var StyledContentLeft = /*#__PURE__*/styled.div.withConfig({
|
54
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
56
|
+
componentId: "plasma-new-hope__sc-g4vxbb-11"
|
55
57
|
})(["margin:var(", ");color:", ";line-height:0;"], tokens.leftContentMargin, function (_ref6) {
|
56
58
|
var isDefaultView = _ref6.isDefaultView,
|
57
59
|
isClear = _ref6.isClear;
|
58
60
|
return !isDefaultView && isClear ? "var(".concat(tokens.clearColor, ")") : "var(".concat(tokens.contentSlotColor, ")");
|
59
61
|
});
|
60
62
|
export var StyledContentRightWrapper = /*#__PURE__*/styled.div.withConfig({
|
61
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
63
|
+
componentId: "plasma-new-hope__sc-g4vxbb-12"
|
62
64
|
})(["display:flex;align-items:center;"]);
|
63
65
|
export var StyledContentRight = /*#__PURE__*/styled.div.withConfig({
|
64
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
66
|
+
componentId: "plasma-new-hope__sc-g4vxbb-13"
|
65
67
|
})(["line-height:0;margin:var(", ");color:var(", ",var(", "));&:hover{color:var(", ",var(", "));cursor:pointer;}&:active{color:var(", ",var(", "));}"], tokens.rightContentMargin, tokens.contentSlotRightColor, tokens.contentSlotColor, tokens.contentSlotRightColorHover, tokens.contentSlotColorHover, tokens.contentSlotRightColorActive, tokens.contentSlotColorActive);
|
66
68
|
export var LeftHelper = /*#__PURE__*/styled.div.withConfig({
|
67
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
69
|
+
componentId: "plasma-new-hope__sc-g4vxbb-14"
|
68
70
|
})([""]);
|
69
71
|
export var StyledTextBefore = /*#__PURE__*/styled.div.withConfig({
|
70
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
72
|
+
componentId: "plasma-new-hope__sc-g4vxbb-15"
|
71
73
|
})(["visibility:", ";"], function (_ref7) {
|
72
74
|
var isHidden = _ref7.isHidden;
|
73
75
|
return isHidden ? 'hidden' : 'visible';
|
74
76
|
});
|
75
77
|
export var StyledTextAfter = /*#__PURE__*/styled.div.withConfig({
|
76
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
78
|
+
componentId: "plasma-new-hope__sc-g4vxbb-16"
|
77
79
|
})([""]);
|
78
80
|
export var StyledOptionalText = /*#__PURE__*/styled.span.withConfig({
|
79
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
81
|
+
componentId: "plasma-new-hope__sc-g4vxbb-17"
|
80
82
|
})(["color:var(", ");"], tokens.optionalColor);
|
81
83
|
export var StyledHintWrapper = /*#__PURE__*/styled.div.withConfig({
|
82
|
-
componentId: "plasma-new-hope__sc-g4vxbb-
|
84
|
+
componentId: "plasma-new-hope__sc-g4vxbb-18"
|
83
85
|
})(["display:inline-block;line-height:0;&.", "{position:absolute;margin:0;inset:var(", ");}"], classes.innerLabelPlacement, tokens.hintInnerLabelPlacementOffset);
|
84
86
|
export var HintTargetWrapper = /*#__PURE__*/styled.div.withConfig({
|
85
|
-
componentId: "plasma-new-hope__sc-g4vxbb-18"
|
86
|
-
})(["color:var(", ");display:flex;justify-content:center;align-items:center;"], tokens.hintIconColor);
|
87
|
-
export var Hint = /*#__PURE__*/styled(Tooltip).withConfig({
|
88
87
|
componentId: "plasma-new-hope__sc-g4vxbb-19"
|
89
|
-
})(["", "
|
88
|
+
})(["color:var(", ");display:flex;justify-content:center;align-items:center;"], tokens.hintIconColor);
|
90
89
|
export var HintIconWrapper = /*#__PURE__*/styled.div.withConfig({
|
91
90
|
componentId: "plasma-new-hope__sc-g4vxbb-20"
|
92
91
|
})(["display:flex;"]);
|
@@ -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", "textColor"];
|
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,6 +35,7 @@ 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,
|
38
39
|
rest = _objectWithoutProperties(props, _excluded);
|
39
40
|
var pilledClass = pilled ? classes.toastPilled : undefined;
|
40
41
|
var fixedWidth = !Number.isNaN(Number(width)) ? "".concat(width, "%") : width;
|
@@ -58,7 +59,9 @@ export var toastRoot = function toastRoot(Root) {
|
|
58
59
|
role: role,
|
59
60
|
"aria-live": ariaLive,
|
60
61
|
"aria-atomic": ariaAtomic
|
61
|
-
}, rest), contentLeft && /*#__PURE__*/React.createElement(StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(StyledContent,
|
62
|
+
}, rest), contentLeft && /*#__PURE__*/React.createElement(StyledContentLeft, null, contentLeft), /*#__PURE__*/React.createElement(StyledContent, {
|
63
|
+
textColor: textColor
|
64
|
+
}, text), hasClose && /*#__PURE__*/React.createElement(CloseIconWrapper, {
|
62
65
|
view: "clear",
|
63
66
|
size: "s",
|
64
67
|
onClick: onCloseButtonClick,
|
@@ -34,7 +34,10 @@ 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-left-
|
37
|
+
})(["display:flex;--plasma_private-content-left-margin:var(", ");margin:var(--plasma_private-content-left-margin);color:var(", ");"], tokens.contentLeftMargin, tokens.contentLeftColor);
|
38
38
|
export var StyledContent = /*#__PURE__*/styled.div.withConfig({
|
39
39
|
componentId: "plasma-new-hope__sc-19l9ekl-4"
|
40
|
-
})([""])
|
40
|
+
})(["color:", ";"], function (_ref5) {
|
41
|
+
var textColor = _ref5.textColor;
|
42
|
+
return textColor || 'currentColor';
|
43
|
+
});
|
@@ -104,6 +104,10 @@ export interface ShowToastArgs {
|
|
104
104
|
* Время отображения подсказки. Если не передать значение, подсказка будет отображаться пока ее не закроют.
|
105
105
|
*/
|
106
106
|
timeout?: number;
|
107
|
+
/**
|
108
|
+
* Цвет текста (по умолчанию берётся цвет из view)
|
109
|
+
*/
|
110
|
+
textColor?: string;
|
107
111
|
/**
|
108
112
|
* callback срабатывающий в момент события hideToast
|
109
113
|
*/
|
@@ -117,9 +121,11 @@ export interface ShowToastArgs {
|
|
117
121
|
|
118
122
|
## Пример использования
|
119
123
|
|
124
|
+
Для изменения цветовой темы компонента `Toast` используйте свойство `view` компонента `ViewContainer`.
|
125
|
+
|
120
126
|
```jsx live
|
121
127
|
import React from 'react'
|
122
|
-
import { useToast, ToastProvider, Button } from '@salutejs/{{ package }}'
|
128
|
+
import { useToast, ToastProvider, Button, ViewContainer } from '@salutejs/{{ package }}'
|
123
129
|
|
124
130
|
export function App() {
|
125
131
|
|
@@ -130,12 +136,13 @@ export function App() {
|
|
130
136
|
const onHide = () => {}
|
131
137
|
const toastData = {
|
132
138
|
text: 'Подсказка вызванная showToast',
|
139
|
+
textColor: 'cyan',
|
133
140
|
position: 'bottom',
|
134
141
|
role: 'status',
|
135
142
|
hasClose: true,
|
136
143
|
fade: false,
|
137
144
|
size: 'm',
|
138
|
-
view: '
|
145
|
+
view: 'default',
|
139
146
|
timeout: 3000,
|
140
147
|
onShow,
|
141
148
|
onHide
|
@@ -145,9 +152,19 @@ export function App() {
|
|
145
152
|
}
|
146
153
|
|
147
154
|
return (
|
148
|
-
<
|
149
|
-
<
|
150
|
-
|
155
|
+
<div style=\{{ display: 'flex', gap: '1rem' }}>
|
156
|
+
<ViewContainer view="onLight">
|
157
|
+
<ToastProvider>
|
158
|
+
<ToastExample />
|
159
|
+
</ToastProvider>
|
160
|
+
</ViewContainer>
|
161
|
+
|
162
|
+
<ViewContainer view="onDark">
|
163
|
+
<ToastProvider>
|
164
|
+
<ToastExample />
|
165
|
+
</ToastProvider>
|
166
|
+
</ViewContainer>
|
167
|
+
</div>
|
151
168
|
)
|
152
169
|
}
|
153
170
|
```
|
@@ -19,7 +19,8 @@ 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
|
-
|
22
|
+
contentLeftMargin: '--plasma-toast-content-left-margin',
|
23
|
+
contentLeftColor: '--plasma-toast-content-left-color',
|
23
24
|
closeIconMargin: '--plasma-toast-close-icon-margin',
|
24
25
|
closeIconColor: '--plasma-toast-close-icon-color',
|
25
26
|
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 { DEFAULT_FADE, DEFAULT_POSITION, TIMER_DELAY } from '../utils';
|
9
|
+
import { DEFAULT_CLOSE_ICON_TYPE, 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,6 +118,9 @@ 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,
|
121
124
|
onHide = _getShowToastCallSign.onHide,
|
122
125
|
onShow = _getShowToastCallSign.onShow;
|
123
126
|
setToastProps({
|
@@ -131,7 +134,9 @@ export var ToastProviderHoc = function ToastProviderHoc(ToastComponent) {
|
|
131
134
|
pilled: pilled,
|
132
135
|
hasClose: hasClose,
|
133
136
|
size: size,
|
134
|
-
view: view
|
137
|
+
view: view,
|
138
|
+
closeIconType: closeIconType,
|
139
|
+
textColor: textColor
|
135
140
|
});
|
136
141
|
setToastInfo({
|
137
142
|
timeout: timeout,
|
@@ -2,6 +2,7 @@ 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';
|
5
6
|
export var TIMER_DELAY = 300;
|
6
7
|
export var FADE_Z_INDEX = '9900';
|
7
8
|
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-left-
|
3
|
+
export var base = /*#__PURE__*/css(["&.", "{--plasma_private-content-left-margin:var(", ");--plasma_private-close-icon-margin:var(", ");border-radius:var(", ");}"], /*#__PURE__*/String(classes.toastPilled), tokens.contentLeftMargin, tokens.closeIconMargin, tokens.pilledBorderRadius);
|
@@ -9,14 +9,24 @@ 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
|
+
*/
|
12
18
|
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
|
+
*/
|
13
23
|
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)
|
14
24
|
},
|
15
25
|
size: {
|
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.
|
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.contentLeftMargin, toastTokens.closeIconMargin)
|
17
27
|
},
|
18
28
|
pilled: {
|
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.
|
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.contentLeftMargin, toastTokens.closeIconMargin)
|
20
30
|
},
|
21
31
|
closeIconType: {
|
22
32
|
"default": /*#__PURE__*/css(["", ":1rem;", ":1.5rem;"], toastTokens.closeIconButtonSize, toastTokens.closeIconSize),
|