UNPKG

@wordpress/editor

Version:
53 lines (50 loc) 1.56 kB
import { createElement, Fragment } from "@wordpress/element"; /** * External dependencies */ import { filter } from 'lodash'; /** * WordPress dependencies */ import { NoticeList, SnackbarList } from '@wordpress/components'; import { withSelect, withDispatch } from '@wordpress/data'; import { compose } from '@wordpress/compose'; import { store as noticesStore } from '@wordpress/notices'; /** * Internal dependencies */ import TemplateValidationNotice from '../template-validation-notice'; export function EditorNotices({ notices, onRemove }) { const dismissibleNotices = filter(notices, { isDismissible: true, type: 'default' }); const nonDismissibleNotices = filter(notices, { isDismissible: false, type: 'default' }); const snackbarNotices = filter(notices, { type: 'snackbar' }); return createElement(Fragment, null, createElement(NoticeList, { notices: nonDismissibleNotices, className: "components-editor-notices__pinned" }), createElement(NoticeList, { notices: dismissibleNotices, className: "components-editor-notices__dismissible", onRemove: onRemove }, createElement(TemplateValidationNotice, null)), createElement(SnackbarList, { notices: snackbarNotices, className: "components-editor-notices__snackbar", onRemove: onRemove })); } export default compose([withSelect(select => ({ notices: select(noticesStore).getNotices() })), withDispatch(dispatch => ({ onRemove: dispatch(noticesStore).removeNotice }))])(EditorNotices); //# sourceMappingURL=index.js.map