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