14 lines
457 B
TypeScript
14 lines
457 B
TypeScript
import { useContext } from "react";
|
|
import { SettingsProviderContext } from "./SettingsProvider";
|
|
|
|
export function useSetting<T>(key: string, def?: any): [T, (value: T) => void] {
|
|
const context = useContext(SettingsProviderContext);
|
|
if(!context){
|
|
throw new Error("useSetting must be used within a SettingsProvider");
|
|
}
|
|
|
|
return [
|
|
context.getSetting(key, def),
|
|
(value: any) => context.setSetting(key, value)
|
|
]
|
|
} |