PLT-1384 Synced preferences over the websocket (#6108)
Этот коммит содержится в:
коммит произвёл
George Goldberg
родитель
ff8b91027f
Коммит
4a49dec7ad
@@ -403,11 +403,33 @@ export function emitPreferenceChangedEvent(preference) {
|
||||
preference
|
||||
});
|
||||
|
||||
if (preference.category === Constants.Preferences.CATEGORY_DIRECT_CHANNEL_SHOW) {
|
||||
if (addedNewDmUser(preference)) {
|
||||
loadProfilesForSidebar();
|
||||
}
|
||||
}
|
||||
|
||||
export function emitPreferencesChangedEvent(preferences) {
|
||||
AppDispatcher.handleServerAction({
|
||||
type: Constants.ActionTypes.RECEIVED_PREFERENCES,
|
||||
preferences
|
||||
});
|
||||
|
||||
if (preferences.findIndex(addedNewDmUser) !== -1) {
|
||||
loadProfilesForSidebar();
|
||||
}
|
||||
}
|
||||
|
||||
function addedNewDmUser(preference) {
|
||||
return preference.category === Constants.Preferences.CATEGORY_DIRECT_CHANNEL_SHOW && preference.value === 'true';
|
||||
}
|
||||
|
||||
export function emitPreferencesDeletedEvent(preferences) {
|
||||
AppDispatcher.handleServerAction({
|
||||
type: Constants.ActionTypes.DELETED_PREFERENCES,
|
||||
preferences
|
||||
});
|
||||
}
|
||||
|
||||
export function emitRemovePost(post) {
|
||||
AppDispatcher.handleViewAction({
|
||||
type: Constants.ActionTypes.REMOVE_POST,
|
||||
|
||||
@@ -185,6 +185,14 @@ function handleEvent(msg) {
|
||||
handlePreferenceChangedEvent(msg);
|
||||
break;
|
||||
|
||||
case SocketEvents.PREFERENCES_CHANGED:
|
||||
handlePreferencesChangedEvent(msg);
|
||||
break;
|
||||
|
||||
case SocketEvents.PREFERENCES_DELETED:
|
||||
handlePreferencesDeletedEvent(msg);
|
||||
break;
|
||||
|
||||
case SocketEvents.TYPING:
|
||||
handleUserTypingEvent(msg);
|
||||
break;
|
||||
@@ -356,6 +364,16 @@ function handlePreferenceChangedEvent(msg) {
|
||||
GlobalActions.emitPreferenceChangedEvent(preference);
|
||||
}
|
||||
|
||||
function handlePreferencesChangedEvent(msg) {
|
||||
const preferences = JSON.parse(msg.data.preferences);
|
||||
GlobalActions.emitPreferencesChangedEvent(preferences);
|
||||
}
|
||||
|
||||
function handlePreferencesDeletedEvent(msg) {
|
||||
const preferences = JSON.parse(msg.data.preferences);
|
||||
GlobalActions.emitPreferencesDeletedEvent(preferences);
|
||||
}
|
||||
|
||||
function handleUserTypingEvent(msg) {
|
||||
GlobalActions.emitRemoteUserTypingEvent(msg.broadcast.channel_id, msg.data.user_id, msg.data.parent_id);
|
||||
|
||||
|
||||
@@ -229,6 +229,8 @@ export const SocketEvents = {
|
||||
USER_UPDATED: 'user_updated',
|
||||
TYPING: 'typing',
|
||||
PREFERENCE_CHANGED: 'preference_changed',
|
||||
PREFERENCES_CHANGED: 'preferences_changed',
|
||||
PREFERENCES_DELETED: 'preferences_deleted',
|
||||
EPHEMERAL_MESSAGE: 'ephemeral_message',
|
||||
STATUS_CHANGED: 'status_change',
|
||||
HELLO: 'hello',
|
||||
|
||||
Ссылка в новой задаче
Block a user