1
1
import { useCallback , useState } from 'react' ;
2
- import styled from 'styled-components' ;
3
2
4
3
import { messages } from '../../shared/gettext' ;
5
4
import log from '../../shared/logging' ;
@@ -17,9 +16,7 @@ import {
17
16
} from '../../shared/notifications' ;
18
17
import { useAppContext } from '../context' ;
19
18
import useActions from '../lib/actionsHook' ;
20
- import { Icon } from '../lib/components' ;
21
19
import { transitions , useHistory } from '../lib/history' ;
22
- import { formatHtml } from '../lib/html-formatter' ;
23
20
import {
24
21
NewDeviceNotificationProvider ,
25
22
NewVersionNotificationProvider ,
@@ -31,8 +28,6 @@ import { RoutePath } from '../lib/routes';
31
28
import accountActions from '../redux/account/actions' ;
32
29
import { IReduxState , useSelector } from '../redux/store' ;
33
30
import * as AppButton from './AppButton' ;
34
- import { ExternalLink } from './ExternalLink' ;
35
- import { InternalLink } from './InternalLink' ;
36
31
import { ModalAlert , ModalAlertType , ModalMessage , ModalMessageList } from './Modal' ;
37
32
import {
38
33
NotificationActions ,
@@ -41,20 +36,15 @@ import {
41
36
NotificationContent ,
42
37
NotificationIndicator ,
43
38
NotificationOpenLinkAction ,
44
- NotificationSubtitle ,
45
39
NotificationTitle ,
46
40
NotificationTroubleshootDialogAction ,
47
41
} from './NotificationBanner' ;
42
+ import { NotificationSubtitle } from './NotificationSubtitle' ;
48
43
49
44
interface IProps {
50
45
className ?: string ;
51
46
}
52
47
53
- const StyledIcon = styled ( Icon ) `
54
- display: inline-flex;
55
- vertical-align: middle;
56
- ` ;
57
-
58
48
export default function NotificationArea ( props : IProps ) {
59
49
const { showFullDiskAccessSettings } = useAppContext ( ) ;
60
50
@@ -159,35 +149,10 @@ export default function NotificationArea(props: IProps) {
159
149
< NotificationTitle data-testid = "notificationTitle" >
160
150
{ notification . title }
161
151
</ NotificationTitle >
162
- < NotificationSubtitle data-testid = "notificationSubTitle" >
163
- { Array . isArray ( notification . subtitle )
164
- ? notification . subtitle . map ( ( subtitle , index , arr ) => {
165
- const content = subtitle . action ? (
166
- subtitle . action . type === 'navigate-internal' ? (
167
- < InternalLink variant = "labelTiny" { ...subtitle . action . link } >
168
- { formatHtml ( subtitle . content ) }
169
- </ InternalLink >
170
- ) : subtitle . action . type === 'navigate-external' ? (
171
- < ExternalLink variant = "labelTiny" { ...subtitle . action . link } >
172
- { formatHtml ( subtitle . content ) }
173
- < StyledIcon icon = "external" size = "small" />
174
- </ ExternalLink >
175
- ) : (
176
- formatHtml ( subtitle . content )
177
- )
178
- ) : (
179
- formatHtml ( subtitle . content )
180
- ) ;
181
-
182
- return (
183
- < >
184
- { content }
185
- { index !== arr . length - 1 && ' ' }
186
- </ >
187
- ) ;
188
- } )
189
- : formatHtml ( notification . subtitle ?? '' ) }
190
- </ NotificationSubtitle >
152
+ < NotificationSubtitle
153
+ data-testid = "notificationSubTitle"
154
+ subtitle = { notification . subtitle }
155
+ />
191
156
</ NotificationContent >
192
157
{ notification . action && (
193
158
< NotificationActionWrapper
0 commit comments