Rev 459 | Rev 585 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import { axios } from "../../utils";
import { intlTypes } from "./intl.types";
export const getLanguage = () => {
return async (dispatch) => {
try {
const response = await axios.get('/language');
const { data, success, fatal } = response.data;
if (fatal) {
dispatch(getLanguage())
return
}
if (!success) {
throw new Error(data.message);
}
dispatch(setIntlLabels(labelsAdapter(data)));
} catch (error) {
throw new Error(error);
}
};
};
const labelsAdapter = (labels) => {
const newKeys = Object.entries(labels).map(([key, value]) => [
key.replace("LANG_", "").toLowerCase(),
value,
]);
return Object.fromEntries(newKeys);
};
export const setIntlLabels = (labels) => ({
type: intlTypes.SET_LABELS,
payload: labels,
});