This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
mastodon/app/javascript/glitch/components/notification/container.js

57 lines
1.2 KiB
JavaScript
Raw Normal View History

2017-07-14 11:13:02 -07:00
/*
`<NotificationContainer>`
=========================
This container connects `<Notification>`s to the Redux store.
*/
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
/*
Imports:
--------
*/
// Package imports //
2016-11-20 10:39:18 -08:00
import { connect } from 'react-redux';
// Mastodon imports //
import { makeGetNotification } from '../../../mastodon/selectors';
// Our imports //
import Notification from '.';
2016-11-20 10:39:18 -08:00
2017-07-14 11:13:02 -07:00
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
/*
State mapping:
--------------
The `mapStateToProps()` function maps various state properties to the
props of our component. We wrap this in `makeMapStateToProps()` so that
we only have to call `makeGetNotification()` once instead of every
time.
*/
2016-11-20 10:39:18 -08:00
const makeMapStateToProps = () => {
const getNotification = makeGetNotification();
const mapStateToProps = (state, props) => ({
notification: getNotification(state, props.notification, props.accountId),
2017-06-28 22:00:54 -07:00
settings: state.get('local_settings'),
notifCleaning: state.getIn(['notifications', 'cleaningMode']),
2016-11-20 10:39:18 -08:00
});
return mapStateToProps;
};
2017-07-14 11:13:02 -07:00
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
export default connect(makeMapStateToProps)(Notification);