UNPKG

@wordpress/components

Version:
73 lines (63 loc) 1.54 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import { createElement } from "@wordpress/element"; /** * External dependencies */ import { View } from 'react-native'; /** * WordPress dependencies */ import { Component } from '@wordpress/element'; import { withDispatch, withSelect } from '@wordpress/data'; import { compose } from '@wordpress/compose'; /** * Internal dependencies */ import Notice from './'; import styles from './style.scss'; class NoticeList extends Component { constructor() { super(...arguments); this.removeNotice = this.removeNotice.bind(this); } removeNotice(id) { const { removeNotice } = this.props; removeNotice(id); } render() { const { notices, shouldStack } = this.props; if (!notices.length) { return null; } return createElement(View, { style: styles.list, key: notices.length }, shouldStack ? notices.reverse().map(notice => createElement(Notice, _extends({}, notice, { key: notice.id, onNoticeHidden: this.removeNotice }))) : createElement(Notice, _extends({}, notices[notices.length - 1], { onNoticeHidden: this.removeNotice }))); } } export default compose([withSelect(select => { const { getNotices } = select('core/notices'); return { notices: getNotices() }; }), withDispatch(dispatch => { const { removeNotice } = dispatch('core/notices'); return { removeNotice }; })])(NoticeList); //# sourceMappingURL=list.native.js.map