mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2025-11-18 10:41:56 +10:00
- implement i18n
- translation dynamic for sections - added articles for SEO
This commit is contained in:
@ -1,5 +1,14 @@
|
||||
import arrayMove from 'array-move';
|
||||
import { clone, findIndex, get, isUndefined, merge, setWith } from 'lodash';
|
||||
import {
|
||||
clone,
|
||||
findIndex,
|
||||
get,
|
||||
isUndefined,
|
||||
merge,
|
||||
setWith,
|
||||
set,
|
||||
has,
|
||||
} from 'lodash';
|
||||
import React, {
|
||||
createContext,
|
||||
memo,
|
||||
@ -7,6 +16,7 @@ import React, {
|
||||
useContext,
|
||||
useReducer,
|
||||
} from 'react';
|
||||
import i18next from 'i18next';
|
||||
import demoState from '../data/demoState.json';
|
||||
import initialState from '../data/initialState.json';
|
||||
import DatabaseContext from './DatabaseContext';
|
||||
@ -73,6 +83,18 @@ const ResumeProvider = ({ children }) => {
|
||||
debouncedUpdateResume(newState);
|
||||
return newState;
|
||||
|
||||
case 'change_language':
|
||||
newState = clone(state);
|
||||
items = get(
|
||||
i18next.getDataByLanguage(payload),
|
||||
'translation.builder.sections',
|
||||
);
|
||||
Object.keys(items).forEach((key) => {
|
||||
has(newState, `${key}.heading`) &&
|
||||
set(newState, `${key}.heading`, items[key]);
|
||||
});
|
||||
return newState;
|
||||
|
||||
case 'reset_layout':
|
||||
temp = get(state, 'metadata.template');
|
||||
items = get(initialState, `metadata.layout.${temp}`);
|
||||
|
||||
Reference in New Issue
Block a user