| 123456789101112131415161718192021222324252627282930313233 |
- import { Invitee, OrgUser, UsersState } from 'app/types';
- import { Action, ActionTypes } from './actions';
- import config from 'app/core/config';
- export const initialState: UsersState = {
- invitees: [] as Invitee[],
- users: [] as OrgUser[],
- searchQuery: '',
- canInvite: !config.disableLoginForm && !config.externalUserMngLinkName,
- externalUserMngInfo: config.externalUserMngInfo,
- externalUserMngLinkName: config.externalUserMngLinkName,
- externalUserMngLinkUrl: config.externalUserMngLinkUrl,
- hasFetched: false,
- };
- export const usersReducer = (state = initialState, action: Action): UsersState => {
- switch (action.type) {
- case ActionTypes.LoadUsers:
- return { ...state, hasFetched: true, users: action.payload };
- case ActionTypes.LoadInvitees:
- return { ...state, hasFetched: true, invitees: action.payload };
- case ActionTypes.SetUsersSearchQuery:
- return { ...state, searchQuery: action.payload };
- }
- return state;
- };
- export default {
- users: usersReducer,
- };
|