2017-09-13 03:24:33 -05:00
|
|
|
import { Map as ImmutableMap } from 'immutable';
|
2023-05-28 09:38:10 -05:00
|
|
|
|
2017-12-04 01:26:40 -06:00
|
|
|
import { HEIGHT_CACHE_SET, HEIGHT_CACHE_CLEAR } from 'flavours/glitch/actions/height_cache';
|
2017-09-13 03:24:33 -05:00
|
|
|
|
|
|
|
const initialState = ImmutableMap();
|
|
|
|
|
|
|
|
const setHeight = (state, key, id, height) => {
|
|
|
|
return state.update(key, ImmutableMap(), map => map.set(id, height));
|
|
|
|
};
|
|
|
|
|
|
|
|
const clearHeights = () => {
|
|
|
|
return ImmutableMap();
|
|
|
|
};
|
|
|
|
|
|
|
|
export default function statuses(state = initialState, action) {
|
|
|
|
switch(action.type) {
|
|
|
|
case HEIGHT_CACHE_SET:
|
|
|
|
return setHeight(state, action.key, action.id, action.height);
|
|
|
|
case HEIGHT_CACHE_CLEAR:
|
|
|
|
return clearHeights();
|
|
|
|
default:
|
|
|
|
return state;
|
|
|
|
}
|
2023-02-03 13:52:07 -06:00
|
|
|
}
|