You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.7 KiB
TypeScript
54 lines
1.7 KiB
TypeScript
import { combineReducers } from '@reduxjs/toolkit';
|
|
|
|
import { reducer as search, SearchStateType } from './ducks/search';
|
|
import { ConversationsStateType, reducer as conversations } from './ducks/conversations';
|
|
import { reducer as user, UserStateType } from './ducks/user';
|
|
import { reducer as theme, ThemeStateType } from './ducks/theme';
|
|
import { reducer as section, SectionStateType } from './ducks/section';
|
|
import { defaultRoomReducer as defaultRooms, DefaultRoomsState } from './ducks/defaultRooms';
|
|
import { callReducer as call, CallStateType } from './ducks/call';
|
|
|
|
import { defaultOnionReducer as onionPaths, OnionState } from './ducks/onion';
|
|
import { modalReducer as modals, ModalState } from './ducks/modalDialog';
|
|
import { userConfigReducer as userConfig, UserConfigState } from './ducks/userConfig';
|
|
import { timerOptionReducer as timerOptions, TimerOptionsState } from './ducks/timerOptions';
|
|
import {
|
|
reducer as stagedAttachments,
|
|
StagedAttachmentsStateType,
|
|
} from './ducks/stagedAttachments';
|
|
|
|
export type StateType = {
|
|
search: SearchStateType;
|
|
user: UserStateType;
|
|
conversations: ConversationsStateType;
|
|
theme: ThemeStateType;
|
|
section: SectionStateType;
|
|
defaultRooms: DefaultRoomsState;
|
|
onionPaths: OnionState;
|
|
modals: ModalState;
|
|
userConfig: UserConfigState;
|
|
timerOptions: TimerOptionsState;
|
|
stagedAttachments: StagedAttachmentsStateType;
|
|
call: CallStateType;
|
|
};
|
|
|
|
export const reducers = {
|
|
search,
|
|
conversations,
|
|
user,
|
|
theme,
|
|
section,
|
|
defaultRooms,
|
|
onionPaths,
|
|
modals,
|
|
userConfig,
|
|
timerOptions,
|
|
stagedAttachments,
|
|
call,
|
|
};
|
|
|
|
// Making this work would require that our reducer signature supported AnyAction, not
|
|
// our restricted actions
|
|
// @ts-ignore
|
|
export const rootReducer = combineReducers(reducers);
|