2
0
mirror of https://github.com/hibiken/asynqmon.git synced 2025-10-26 16:26:12 +08:00
Files
asynqmon/ui/src/reducers/redisInfoReducer.ts
2021-01-04 13:11:04 -08:00

52 lines
986 B
TypeScript

import {
GET_REDIS_INFO_BEGIN,
GET_REDIS_INFO_ERROR,
GET_REDIS_INFO_SUCCESS,
RedisInfoActionTypes,
} from "../actions/redisInfoActions";
import { RedisInfo } from "../api";
interface RedisInfoState {
loading: boolean;
address: string;
data: RedisInfo | null;
rawData: string | null;
}
const initialState: RedisInfoState = {
loading: false,
address: "",
data: null,
rawData: null,
};
export default function redisInfoReducer(
state = initialState,
action: RedisInfoActionTypes
): RedisInfoState {
switch (action.type) {
case GET_REDIS_INFO_BEGIN:
return {
...state,
loading: true,
};
case GET_REDIS_INFO_ERROR:
return {
...state,
loading: false,
};
case GET_REDIS_INFO_SUCCESS:
return {
loading: false,
address: action.payload.address,
data: action.payload.info,
rawData: action.payload.raw_info,
};
default:
return state;
}
}