37 lines
937 B
JavaScript
37 lines
937 B
JavaScript
import React, { createContext, useContext, useState } from "react";
|
|
const initialState = {
|
|
selectedLine: undefined,
|
|
setSelectedLine: () => {},
|
|
mapsStationData: undefined,
|
|
setMapsStationData: () => {},
|
|
injectJavaScript: "",
|
|
setInjectJavaScript: () => {},
|
|
};
|
|
|
|
const TrainMenuContext = createContext(initialState);
|
|
|
|
export const useTrainMenu = () => {
|
|
return useContext(TrainMenuContext);
|
|
};
|
|
|
|
export const TrainMenuProvider = ({ children }) => {
|
|
const [selectedLine, setSelectedLine] = useState(undefined);
|
|
const [mapsStationData, setMapsStationData] = useState(undefined);
|
|
const [injectJavaScript, setInjectJavaScript] = useState();
|
|
|
|
return (
|
|
<TrainMenuContext.Provider
|
|
value={{
|
|
selectedLine,
|
|
setSelectedLine,
|
|
mapsStationData,
|
|
setMapsStationData,
|
|
injectJavaScript,
|
|
setInjectJavaScript,
|
|
}}
|
|
>
|
|
{children}
|
|
</TrainMenuContext.Provider>
|
|
);
|
|
};
|