mirror of
https://github.com/grafana/grafana.git
synced 2025-02-13 09:05:45 -06:00
136 lines
2.8 KiB
TypeScript
136 lines
2.8 KiB
TypeScript
|
import { reducerFactory } from 'app/core/redux';
|
||
|
import { LdapState, LdapUserState } from 'app/types';
|
||
|
import {
|
||
|
ldapConnectionInfoLoadedAction,
|
||
|
ldapFailedAction,
|
||
|
userMappingInfoLoadedAction,
|
||
|
userMappingInfoFailedAction,
|
||
|
clearUserErrorAction,
|
||
|
userLoadedAction,
|
||
|
userSessionsLoadedAction,
|
||
|
ldapSyncStatusLoadedAction,
|
||
|
clearUserMappingInfoAction,
|
||
|
} from './actions';
|
||
|
|
||
|
const initialLdapState: LdapState = {
|
||
|
connectionInfo: [],
|
||
|
syncInfo: null,
|
||
|
user: null,
|
||
|
connectionError: null,
|
||
|
userError: null,
|
||
|
};
|
||
|
|
||
|
const initialLdapUserState: LdapUserState = {
|
||
|
user: null,
|
||
|
ldapUser: null,
|
||
|
ldapSyncInfo: null,
|
||
|
sessions: [],
|
||
|
};
|
||
|
|
||
|
export const ldapReducer = reducerFactory(initialLdapState)
|
||
|
.addMapper({
|
||
|
filter: ldapConnectionInfoLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
ldapError: null,
|
||
|
connectionInfo: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: ldapFailedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
ldapError: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: ldapSyncStatusLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
syncInfo: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: userMappingInfoLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
user: action.payload,
|
||
|
userError: null,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: userMappingInfoFailedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
user: null,
|
||
|
userError: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: clearUserMappingInfoAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
user: null,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: clearUserErrorAction,
|
||
|
mapper: state => ({
|
||
|
...state,
|
||
|
userError: null,
|
||
|
}),
|
||
|
})
|
||
|
.create();
|
||
|
|
||
|
export const ldapUserReducer = reducerFactory(initialLdapUserState)
|
||
|
.addMapper({
|
||
|
filter: userMappingInfoLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
ldapUser: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: userMappingInfoFailedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
ldapUser: null,
|
||
|
userError: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: clearUserErrorAction,
|
||
|
mapper: state => ({
|
||
|
...state,
|
||
|
userError: null,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: ldapSyncStatusLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
ldapSyncInfo: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: userLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
user: action.payload,
|
||
|
userError: null,
|
||
|
}),
|
||
|
})
|
||
|
.addMapper({
|
||
|
filter: userSessionsLoadedAction,
|
||
|
mapper: (state, action) => ({
|
||
|
...state,
|
||
|
sessions: action.payload,
|
||
|
}),
|
||
|
})
|
||
|
.create();
|
||
|
|
||
|
export default {
|
||
|
ldap: ldapReducer,
|
||
|
ldapUser: ldapUserReducer,
|
||
|
};
|