in src/amo/reducers/api.js [144:177]
export default function api(
// eslint-disable-next-line default-param-last
state: Exact<ApiState> = initialApiState,
action: Action,
): Exact<ApiState> {
switch (action.type) {
case SET_AUTH_TOKEN:
return {
...state,
token: action.payload.token,
};
case SET_LANG:
return { ...state, lang: action.payload.lang };
case SET_CLIENT_APP:
return { ...state, clientApp: action.payload.clientApp };
case SET_REGION_CODE:
return { ...state, regionCode: action.payload.regionCode };
case SET_REQUEST_ID:
return { ...state, requestId: action.payload.requestId };
case SET_USER_AGENT: {
const { browser, device, os } = UAParser(action.payload.userAgent);
return {
...state,
userAgent: action.payload.userAgent,
userAgentInfo: { browser, device, os },
};
}
case LOG_OUT_USER:
return { ...state, token: null };
default:
return state;
}
}