@spartacus/core
Version:
Spartacus - the core framework
22 lines • 3.57 kB
JavaScript
import { SiteContextActions } from '../actions/index';
export const initialState = {
entities: null,
activeCurrency: null,
};
export function reducer(state = initialState, action) {
switch (action.type) {
case SiteContextActions.LOAD_CURRENCIES_SUCCESS: {
const currencies = action.payload;
const entities = currencies.reduce((currEntities, currency) => {
return Object.assign(Object.assign({}, currEntities), { [currency.isocode]: currency });
}, Object.assign({}, state.entities));
return Object.assign(Object.assign({}, state), { entities });
}
case SiteContextActions.SET_ACTIVE_CURRENCY: {
const isocode = action.payload;
return Object.assign(Object.assign({}, state), { activeCurrency: isocode });
}
}
return state;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VycmVuY2llcy5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9zcmMvc2l0ZS1jb250ZXh0L3N0b3JlL3JlZHVjZXJzL2N1cnJlbmNpZXMucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUd0RCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQW9CO0lBQzNDLFFBQVEsRUFBRSxJQUFJO0lBQ2QsY0FBYyxFQUFFLElBQUk7Q0FDckIsQ0FBQztBQUVGLE1BQU0sVUFBVSxPQUFPLENBQ3JCLEtBQUssR0FBRyxZQUFZLEVBQ3BCLE1BQTJDO0lBRTNDLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtRQUNuQixLQUFLLGtCQUFrQixDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDL0MsTUFBTSxVQUFVLEdBQWUsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUM5QyxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUNoQyxDQUFDLFlBQTZDLEVBQUUsUUFBa0IsRUFBRSxFQUFFO2dCQUNwRSx1Q0FDSyxZQUFZLEtBQ2YsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsUUFBUSxJQUM1QjtZQUNKLENBQUMsb0JBRUksS0FBSyxDQUFDLFFBQVEsRUFFcEIsQ0FBQztZQUVGLHVDQUNLLEtBQUssS0FDUixRQUFRLElBQ1I7U0FDSDtRQUVELEtBQUssa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztZQUMzQyxNQUFNLE9BQU8sR0FBVyxNQUFNLENBQUMsT0FBTyxDQUFDO1lBRXZDLHVDQUNLLEtBQUssS0FDUixjQUFjLEVBQUUsT0FBTyxJQUN2QjtTQUNIO0tBQ0Y7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDdXJyZW5jeSB9IGZyb20gJy4uLy4uLy4uL21vZGVsL21pc2MubW9kZWwnO1xuaW1wb3J0IHsgU2l0ZUNvbnRleHRBY3Rpb25zIH0gZnJvbSAnLi4vYWN0aW9ucy9pbmRleCc7XG5pbXBvcnQgeyBDdXJyZW5jaWVzU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5cbmV4cG9ydCBjb25zdCBpbml0aWFsU3RhdGU6IEN1cnJlbmNpZXNTdGF0ZSA9IHtcbiAgZW50aXRpZXM6IG51bGwsXG4gIGFjdGl2ZUN1cnJlbmN5OiBudWxsLFxufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlZHVjZXIoXG4gIHN0YXRlID0gaW5pdGlhbFN0YXRlLFxuICBhY3Rpb246IFNpdGVDb250ZXh0QWN0aW9ucy5DdXJyZW5jaWVzQWN0aW9uXG4pOiBDdXJyZW5jaWVzU3RhdGUge1xuICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgY2FzZSBTaXRlQ29udGV4dEFjdGlvbnMuTE9BRF9DVVJSRU5DSUVTX1NVQ0NFU1M6IHtcbiAgICAgIGNvbnN0IGN1cnJlbmNpZXM6IEN1cnJlbmN5W10gPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgIGNvbnN0IGVudGl0aWVzID0gY3VycmVuY2llcy5yZWR1Y2UoXG4gICAgICAgIChjdXJyRW50aXRpZXM6IHsgW2lzb2NvZGU6IHN0cmluZ106IEN1cnJlbmN5IH0sIGN1cnJlbmN5OiBDdXJyZW5jeSkgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5jdXJyRW50aXRpZXMsXG4gICAgICAgICAgICBbY3VycmVuY3kuaXNvY29kZV06IGN1cnJlbmN5LFxuICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAuLi5zdGF0ZS5lbnRpdGllcyxcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGVudGl0aWVzLFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBjYXNlIFNpdGVDb250ZXh0QWN0aW9ucy5TRVRfQUNUSVZFX0NVUlJFTkNZOiB7XG4gICAgICBjb25zdCBpc29jb2RlOiBzdHJpbmcgPSBhY3Rpb24ucGF5bG9hZDtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uc3RhdGUsXG4gICAgICAgIGFjdGl2ZUN1cnJlbmN5OiBpc29jb2RlLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gc3RhdGU7XG59XG4iXX0=