signal-desktop/ts/shims/dispatchItemsMiddleware.ts

26 lines
737 B
TypeScript
Raw Normal View History

2021-08-18 20:08:14 +00:00
// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import { ipcRenderer } from 'electron';
import { Middleware } from 'redux';
import { COLORS_CHANGED, COLOR_SELECTED } from '../state/ducks/conversations';
export const dispatchItemsMiddleware: Middleware = ({
getState,
}) => next => action => {
const result = next(action);
2021-08-18 20:08:14 +00:00
if (
action.type === 'items/PUT' ||
action.type === 'items/PUT_EXTERNAL' ||
action.type === 'items/REMOVE' ||
action.type === 'items/REMOVE_EXTERNAL' ||
action.type === 'items/RESET' ||
action.type === COLOR_SELECTED ||
action.type === COLORS_CHANGED
) {
ipcRenderer.send('preferences-changed', getState().items);
}
return result;
2021-08-18 20:08:14 +00:00
};