Info alert:Beta feature
This Beta component is currently under review and is still open for further evolution. It is available for use in product. Beta components are considered for promotion on a quarterly basis. Please join in and give us your feedback or submit any questions on the PatternFly forum or via Slack. To learn more go to our Beta components page on GitHub.
Examples
Basic
Notifications
3 unreadInfo notification:Unread info notification title
This is an info notification description.Danger notification:Unread danger notification title. This is a long title to show how the title will wrap if it is long and wraps to multiple lines.
This is a danger notification description. This is a long description to show how the title will wrap if it is long and wraps to multiple lines.Danger notification:Unread danger notification title. This is a long title to show how the title will be truncated if it is long and will be shown in a single line.
This is a danger notification description. This is a long description to show how the title will wrap if it is long and wraps to multiple lines.Warning notification:Read warning notification title
This is a warning notification description.Success notification:Read success notification title
This is a success notification description.notification:Read (default) notification title
This is a default notification description.
Groups
Notifications
4 unreadInfo notification:Unread info notification title
This is an info notification description.Danger notification:Unread danger notification title. This is a long title to show how the title will wrap if it is long and wraps to multiple lines.
This is a danger notification description. This is a long description to show how the title will wrap if it is long and wraps to multiple lines.Warning notification:Read warning notification title
This is a warning notification description.Success notification:Read success notification title
This is a success notification description.
No alerts found
There are currently no critical alerts firing. There may be firing alerts of other severities or silenced critical alerts however.
Lightweight
Notifications
Info notification:Info notification title
This is an info notification description.Danger notification:Danger notification title. This is a long title to show how the title will wrap if it is long and wraps to multiple lines.
This is a danger notification description. This is a long description to show how the title will wrap if it is long and wraps to multiple lines.Warning notification:Warning notification title
This is a warning notification description.Success notification:Success notification title
This is a success notification description.
No alerts found
There are currently no critical alerts firing. There may be firing alerts of other severities or silenced critical alerts however.
Props
NotificationDrawer
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | Content rendered inside the notification drawer | |
className | string | Additional classes added to the notification drawer |
NotificationDrawerBody
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | Content rendered inside the body of the notification drawer | |
className | string | '' | Additional classes added to the notification drawer body |
NotificationDrawerHeader
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | Content rendered inside the drawer | |
className | string | '' | Additional classes for notification drawer header. |
closeButtonAriaLabel | string | 'Close' | Adds custom accessible text to the notification drawer close button. |
count | number | Notification drawer heading count | |
customText | string | Notification drawer heading custom text which can be used instead of providing count/unreadText | |
onClose | () => void | Callback for when close button is clicked | |
title | string | 'Notifications' | Notification drawer heading title |
unreadText | string | 'unread' | Notification drawer heading unread text used in combination with a count |
NotificationDrawerGroup
Name | Type | Default | Description |
---|---|---|---|
countrequired | number | Notification drawer group count | |
isExpandedrequired | boolean | Adds styling to the group to indicate expanded state | |
titlerequired | string | React.ReactNode | Notification drawer group title | |
children | React.ReactNode | Content rendered inside the group | |
className | string | '' | Additional classes added to the group |
headingLevel | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'h1' | Sets the heading level to use for the group title. Default is h1. |
isRead | boolean | false | Adds styling to the group to indicate whether it has been read |
onExpand | (event: any, value: boolean) => void | (event: any, expanded: boolean) => undefined as any | Callback for when group button is clicked to expand |
tooltipPosition | TooltipPosition | 'auto' | 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-start' | 'left-end' | 'right-start' | 'right-end' | Position of the tooltip which is displayed if text is truncated | |
truncateTitle | number | 0 | Truncate title to number of lines |
NotificationDrawerGroupList
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | Content rendered inside the notification drawer list body | |
className | string | '' | Additional classes added to the notification drawer list body |
NotificationDrawerList
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | Content rendered inside the notification drawer list body | |
className | string | '' | Additional classes added to the notification drawer list body |
isHidden | boolean | false | Adds styling to the notification drawer list to indicate expand/hide state |
NotificationDrawerListItem
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | null | Content rendered inside the list item |
className | string | '' | Additional classes added to the list item |
isHoverable | boolean | true | Modifies the list item to include hover styles on :hover |
isRead | boolean | false | Adds styling to the list item to indicate it has been read |
onClick | (event: any) => void | (event: React.MouseEvent) => undefined as any | Callback for when a list item is clicked |
tabIndex | number | 0 | Tab index for the list item |
variant | 'default' | 'success' | 'danger' | 'warning' | 'info' | 'default' | Variant indicates the severity level |
NotificationDrawerListItemBody
Name | Type | Default | Description |
---|---|---|---|
children | React.ReactNode | Content rendered inside the list item body | |
className | string | '' | Additional classes added to the list item body |
timestamp | React.ReactNode | List item timestamp |
NotificationDrawerListItemHeader
Name | Type | Default | Description |
---|---|---|---|
titlerequired | string | Notification drawer list item title | |
children | React.ReactNode | Actions rendered inside the notification drawer list item header | |
className | string | '' | Additional classes for notification drawer list item header. |
headingLevel | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'h2' | Sets the heading level to use for the list item header title. Default is h2. |
icon | React.ReactNode | null | Add custom icon for notification drawer list item header |
srTitle | string | Notification drawer list item header screen reader title | |
tooltipPosition | TooltipPosition | 'auto' | 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-start' | 'left-end' | 'right-start' | 'right-end' | Position of the tooltip which is displayed if text is truncated | |
truncateTitle | number | 0 | Truncate title to number of lines |
variant | 'success' | 'danger' | 'warning' | 'info' | 'default' | 'default' | Variant indicates the severity level |
CSS variables
.pf-c-notification-drawer | --pf-c-notification-drawer--BackgroundColor | #f0f0f0 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--PaddingTop | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--PaddingRight | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--PaddingBottom | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--PaddingLeft | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--BackgroundColor | #fff | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--BoxShadow | 0 0.125rem 0.25rem -0.0625rem rgba(3, 3, 3, 0.16) | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header--ZIndex | 200 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header-title--FontSize | 1.25rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__header-status--MarginLeft | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__body--ZIndex | 100 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--PaddingTop | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--PaddingRight | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--PaddingBottom | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--PaddingLeft | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--BackgroundColor | #fff | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--BoxShadow | inset 0 0.125rem 0.25rem -0.0625rem rgba(3, 3, 3, 0.16) | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--BorderBottomWidth | 1px | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--BorderBottomColor | transparent | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--OutlineOffset | -0.25rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--before--Width | 3px | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--before--Top | 0 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--before--Bottom | calc(1px * -1) | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-info__list-item-header-icon--Color | #2b9af3 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-info__list-item--before--BackgroundColor | #2b9af3 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-warning__list-item-header-icon--Color | #f0ab00 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-warning__list-item--before--BackgroundColor | #f0ab00 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-danger__list-item-header-icon--Color | #c9190b | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-danger__list-item--before--BackgroundColor | #c9190b | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-success__list-item-header-icon--Color | #3e8635 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-success__list-item--before--BackgroundColor | #3e8635 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-default__list-item-header-icon--Color | #009596 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-default__list-item--before--BackgroundColor | #009596 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-read--BackgroundColor | #f0f0f0 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-read--BorderBottomColor | #d2d2d2 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-read--before--Top | calc(1px * -1) | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-read--before--Bottom | 0 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-read--before--BackgroundColor | transparent | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--list-item--m-read--before--Top | 0 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--list-item--m-read--BoxShadow | inset 0 0.125rem 0.25rem -0.0625rem rgba(3, 3, 3, 0.16) | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-hoverable--hover--ZIndex | 100 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-hoverable--hover--BoxShadow | 0 -0.5rem 0.5rem -0.375rem rgba(3, 3, 3, 0.18), 0 0.5rem 0.5rem -0.375rem rgba(3, 3, 3, 0.18) | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-header--MarginBottom | 0.25rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-header-icon--Color | inherit | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-header-icon--MarginRight | 0.5rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-header-title--FontWeight | 700 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-header-title--max-lines | 1 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item--m-read__list-item-header-title--FontWeight | 400 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-description--MarginBottom | 0.5rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-timestamp--Color | #6a6e73 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__list-item-timestamp--FontSize | 0.875rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group--m-expanded--group--BorderTopWidth | 1px | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group--m-expanded--group--BorderTopColor | #d2d2d2 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group--m-expanded--MinHeight | 0 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--PaddingTop | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--PaddingRight | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--PaddingBottom | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--PaddingLeft | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--BackgroundColor | #fff | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--BorderColor | #d2d2d2 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--BorderBottomWidth | 1px | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle--OutlineOffset | -0.25rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle-title--MarginRight | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle-title--max-lines | 1 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle-count--MarginRight | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle-icon--MarginRight | 1rem | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle-icon--Color | #6a6e73 | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group-toggle-icon--Transition | .2s ease-in 0s | ||
.pf-c-notification-drawer | --pf-c-notification-drawer__group--m-expanded__group-toggle-icon--Rotate | 90deg | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--BoxShadow | none | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--BorderBottomColor | #d2d2d2 | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--BackgroundColor | #f0f0f0 | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--before--Top | calc(1px * -1) | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--before--Bottom | 0 | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--before--BackgroundColor | transparent | ||
.pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item-header-title--FontWeight | 400 | ||
.pf-c-notification-drawer__list-item:not(.pf-m-read) + .pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--BoxShadow | inset 0 0.125rem 0.25rem -0.0625rem rgba(3, 3, 3, 0.16) | ||
.pf-c-notification-drawer__list-item:not(.pf-m-read) + .pf-c-notification-drawer__list-item.pf-m-read | --pf-c-notification-drawer__list-item--before--Top | 0 | ||
.pf-c-notification-drawer__list-item.pf-m-info | --pf-c-notification-drawer__list-item--before--BackgroundColor | #2b9af3 | ||
.pf-c-notification-drawer__list-item.pf-m-info | --pf-c-notification-drawer__list-item-header-icon--Color | #2b9af3 | ||
.pf-c-notification-drawer__list-item.pf-m-warning | --pf-c-notification-drawer__list-item--before--BackgroundColor | #f0ab00 | ||
.pf-c-notification-drawer__list-item.pf-m-warning | --pf-c-notification-drawer__list-item-header-icon--Color | #f0ab00 | ||
.pf-c-notification-drawer__list-item.pf-m-danger | --pf-c-notification-drawer__list-item--before--BackgroundColor | #c9190b | ||
.pf-c-notification-drawer__list-item.pf-m-danger | --pf-c-notification-drawer__list-item-header-icon--Color | #c9190b | ||
.pf-c-notification-drawer__list-item.pf-m-success | --pf-c-notification-drawer__list-item--before--BackgroundColor | #3e8635 | ||
.pf-c-notification-drawer__list-item.pf-m-success | --pf-c-notification-drawer__list-item-header-icon--Color | #3e8635 | ||
.pf-c-notification-drawer__list-item.pf-m-default | --pf-c-notification-drawer__list-item--before--BackgroundColor | #009596 | ||
.pf-c-notification-drawer__list-item.pf-m-default | --pf-c-notification-drawer__list-item-header-icon--Color | #009596 | ||
.pf-c-notification-drawer__group .pf-c-notification-drawer__list-item:last-child | --pf-c-notification-drawer__list-item--BorderBottomWidth | 0 | ||
.pf-c-notification-drawer__group .pf-c-notification-drawer__list-item:last-child | --pf-c-notification-drawer__list-item--before--Bottom | 0 |
View source on GitHub