Skip to content

Commit 78200e2

Browse files
Lukas742MarcusNotheis
authored andcommitted
feat(Notifications): Add Notification and NotificationGroup component (#171)
1 parent bc9bef3 commit 78200e2

14 files changed

+2482
-0
lines changed
Lines changed: 142 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
import { JSSTheme } from '../../interfaces/JSSTheme';
2+
3+
const style = ({ parameters }: JSSTheme) => ({
4+
notificationContainer: {
5+
width: '100%',
6+
maxWidth: '60rem',
7+
backgroundColor: parameters.sapUiListBackground,
8+
boxShadow: parameters.sapUiShadowLevel0,
9+
display: 'flex',
10+
flexDirection: 'row',
11+
position: 'relative',
12+
overflow: 'hidden',
13+
'&:hover': {
14+
backgroundColor: parameters.sapUiListHoverBackground
15+
},
16+
'&:active': {
17+
backgroundColor: parameters.sapUiListHoverBackground
18+
}
19+
},
20+
notificationContainerChild: {
21+
backgroundColor: parameters.sapUiListHeaderBackground
22+
},
23+
header: {
24+
display: 'flex',
25+
flexDirection: 'row',
26+
boxShadow: `inset 0 -0.0625rem ${parameters.sapUiPageHeaderBorderColor}`,
27+
padding: '1rem 0 1rem 1.25rem',
28+
alignItems: 'center'
29+
},
30+
titleEllipsised: {
31+
overflow: 'hidden',
32+
textOverflow: 'ellipsis',
33+
display: '-webkit-box',
34+
lineHeight: '15px',
35+
maxHeight: '30px' /* height * number of lines */,
36+
WebkitLineClamp: 2 /* number of lines to show */,
37+
WebkitBoxOrient: 'vertical',
38+
paddingRight: '40px'
39+
},
40+
title: {
41+
color: parameters.sapUiGroupTitleTextColor,
42+
fontFamily: parameters.sapUiFontHeaderFamily,
43+
textShadow: parameters.sapUiShadowText,
44+
fontSize: '14px',
45+
paddingRight: '40px'
46+
},
47+
closeButton: {
48+
position: 'absolute',
49+
right: '0.5rem',
50+
top: '0.5rem'
51+
},
52+
content: {
53+
boxSizing: 'border-box',
54+
display: 'flex',
55+
flexDirection: 'row',
56+
'@media (min-width: 600px)': {
57+
maxWidth: '60%',
58+
paddingRight: '1rem'
59+
},
60+
'@media (max-width: 599px)': {
61+
width: '100%'
62+
}
63+
},
64+
descriptionContainer: {
65+
display: 'flex',
66+
flexDirection: 'column'
67+
},
68+
avatar: {
69+
paddingRight: '0.375rem'
70+
},
71+
descriptionEllipsised: {
72+
color: parameters.sapUiContentLabelColor,
73+
overflow: 'hidden',
74+
textAlign: 'left',
75+
textOverflow: 'ellipsis',
76+
display: '-webkit-box',
77+
lineHeight: '15px',
78+
maxHeight: '30px' /* height * number of lines */,
79+
WebkitLineClamp: '2' /* number of lines to show */,
80+
WebkitBoxOrient: 'vertical'
81+
},
82+
descriptionFull: {
83+
color: parameters.sapUiContentLabelColor
84+
},
85+
metadata: {
86+
paddingTop: '0.375rem',
87+
fontFamily: parameters.sapUiFontFamily,
88+
fontSize: parameters.sapMFontMediumSize,
89+
color: parameters.sapUiContentLabelColor,
90+
fontWeight: 'normal',
91+
display: 'flex',
92+
flexWrap: 'wrap',
93+
overflow: 'hidden'
94+
},
95+
separator: {
96+
margin: '0 0.5rem 0 0.5rem'
97+
},
98+
priorityIndicator: {
99+
width: '0.375rem',
100+
minWidth: '0.375rem',
101+
height: 'auto'
102+
},
103+
high: { backgroundColor: parameters.sapUiErrorBorder },
104+
medium: { backgroundColor: parameters.sapUiWarningBorder },
105+
low: { backgroundColor: parameters.sapUiSuccessBorder },
106+
none: { backgroundColor: parameters.sapUiNeutralBorder },
107+
semanticIcon: {
108+
paddingRight: '0.375rem'
109+
},
110+
error: {
111+
color: parameters.sapUiNegativeElement
112+
},
113+
warning: {
114+
color: parameters.sapUiCriticalElement
115+
},
116+
success: {
117+
color: parameters.sapUiPositiveElement
118+
},
119+
contentAction: {
120+
display: 'flex',
121+
flexDirection: 'row',
122+
flexWrap: 'wrap',
123+
'@media (min-width: 600px)': {
124+
justifyContent: 'space-between'
125+
},
126+
justifyContent: 'flex-end'
127+
},
128+
footer: {
129+
'@media (min-width: 600px)': {
130+
maxWidth: '40%',
131+
alignSelf: 'flex-end'
132+
},
133+
maxWidth: '100%',
134+
padding: '0 0.5rem 0.5rem 0'
135+
},
136+
showGroup: {
137+
paddingLeft: '1rem',
138+
alignSelf: 'flex-start'
139+
}
140+
});
141+
142+
export default style;

packages/main/src/components/Notification/Notification.test.tsx

Lines changed: 82 additions & 0 deletions
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)