forked from Ivasoft/mattermost-mobile
* Add recently used section and section icons * Improve section scrolling indication * Modify Makefile and use onMomentumScrollEnd * Make sure top section maintains highlight when scrolled to top * Sort emojis by startsWith then includes when filtering
35 lines
1.1 KiB
JavaScript
35 lines
1.1 KiB
JavaScript
// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
|
|
// See License.txt for license information.
|
|
|
|
import {addReaction as serviceAddReaction} from 'mattermost-redux/actions/posts';
|
|
import {getPostIdsInCurrentChannel, makeGetPostIdsForThread} from 'mattermost-redux/selectors/entities/posts';
|
|
|
|
import {ViewTypes} from 'app/constants';
|
|
|
|
const getPostIdsForThread = makeGetPostIdsForThread();
|
|
|
|
export function addReaction(postId, emoji) {
|
|
return (dispatch) => {
|
|
dispatch(serviceAddReaction(postId, emoji));
|
|
dispatch(addRecentEmoji(emoji));
|
|
};
|
|
}
|
|
|
|
export function addReactionToLatestPost(emoji, rootId) {
|
|
return async (dispatch, getState) => {
|
|
const state = getState();
|
|
const postIds = rootId ? getPostIdsForThread(state, rootId) : getPostIdsInCurrentChannel(state);
|
|
const lastPostId = postIds[0];
|
|
|
|
dispatch(serviceAddReaction(lastPostId, emoji));
|
|
dispatch(addRecentEmoji(emoji));
|
|
};
|
|
}
|
|
|
|
export function addRecentEmoji(emoji) {
|
|
return {
|
|
type: ViewTypes.ADD_RECENT_EMOJI,
|
|
emoji
|
|
};
|
|
}
|