mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-04-23 14:40:03 +08:00

### What problem does this PR solve? Related source file is in Windows/DOS format, they are format to Unix format. ### Type of change - [x] Refactoring Signed-off-by: Jin Hai <haijin.chn@gmail.com>
27 lines
599 B
JavaScript
27 lines
599 B
JavaScript
import React, { useReducer } from 'react';
|
|
const CHANGE_LOCALE = 'CHANGE_LOCALE';
|
|
|
|
const mainContext = React.createContext();
|
|
|
|
const reducer = (state, action) => {
|
|
switch (action.type) {
|
|
case CHANGE_LOCALE:
|
|
return { ...state, locale: action.locale || 'zh' };
|
|
default:
|
|
return state;
|
|
}
|
|
};
|
|
|
|
const ContextProvider = (props) => {
|
|
const [state, dispatch] = useReducer(reducer, {
|
|
locale: 'zh',
|
|
});
|
|
return (
|
|
<mainContext.Provider value={{ state, dispatch }}>
|
|
{props.children}
|
|
</mainContext.Provider>
|
|
);
|
|
};
|
|
|
|
export { ContextProvider, mainContext, reducer };
|