mirror of
https://github.com/qwertyforce/scenery.git
synced 2025-05-07 16:11:21 +00:00
34 lines
930 B
TypeScript
34 lines
930 B
TypeScript
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
/* eslint-disable react/prop-types */
|
|
import { createContext,useEffect,useState } from "react";
|
|
|
|
interface DataContextProps{
|
|
useIPFS:boolean,
|
|
_handleSwitchUseIPFS:()=>void
|
|
}
|
|
|
|
export const DataContext = createContext<DataContextProps | null>(null);
|
|
|
|
|
|
//{ useIPFS,_handleSwitchUseIPFS}
|
|
const DataContextProvider = ({ children }: any) => {
|
|
const [useIPFS, setUseIPFS] = useState(false)
|
|
useEffect(()=>{
|
|
if (typeof window !== "undefined" && localStorage.getItem("useIPFS") === "true") {
|
|
setUseIPFS(true)
|
|
}
|
|
},[])
|
|
// console.log(useIPFS)
|
|
const _handleSwitchUseIPFS = () => {
|
|
localStorage.setItem('useIPFS', (!useIPFS).toString())
|
|
setUseIPFS(!useIPFS)
|
|
}
|
|
const data_obj={ useIPFS, _handleSwitchUseIPFS }
|
|
return (
|
|
<DataContext.Provider value={data_obj}>
|
|
{children}
|
|
</DataContext.Provider>
|
|
);
|
|
};
|
|
|
|
export {DataContextProvider }; |