summaryrefslogtreecommitdiffhomepage
path: root/desktop/packages/mullvad-vpn/src/renderer/lib/actionsHook.ts
blob: fc046d0a6694b825517319e25a3c65dfd5bee72b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
import { useMemo } from 'react';
import { useDispatch } from 'react-redux';
import { ActionCreatorsMapObject, bindActionCreators } from 'redux';

export default function useActions<A, M extends ActionCreatorsMapObject<A>>(actionCreator: M) {
  const dispatch = useDispatch();
  const actions = useMemo(
    () => bindActionCreators(actionCreator, dispatch),
    [actionCreator, dispatch],
  );
  return actions;
}