From 6008982221cd0d98cd7aade931c6e2a1a6f57562 Mon Sep 17 00:00:00 2001 From: Klove Adams Date: Wed, 4 Aug 2021 15:59:58 -0400 Subject: [PATCH 1/5] added useLocalStorage.js --- src/hooks/useLocalStorage.js | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/hooks/useLocalStorage.js diff --git a/src/hooks/useLocalStorage.js b/src/hooks/useLocalStorage.js new file mode 100644 index 00000000..f6664ec6 --- /dev/null +++ b/src/hooks/useLocalStorage.js @@ -0,0 +1 @@ +import { useState } from "react"; \ No newline at end of file From b38e2c5bff1d5467ebdb690590e497730abbd616 Mon Sep 17 00:00:00 2001 From: Klove Adams Date: Wed, 4 Aug 2021 16:16:12 -0400 Subject: [PATCH 2/5] useLocalStorage setup --- src/hooks/useLocalStorage.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/hooks/useLocalStorage.js b/src/hooks/useLocalStorage.js index f6664ec6..dd6384a9 100644 --- a/src/hooks/useLocalStorage.js +++ b/src/hooks/useLocalStorage.js @@ -1 +1,14 @@ -import { useState } from "react"; \ No newline at end of file +import { useState } from "react"; + +export const useLocalStorage = (key, initialValue) => { + const [storedValue, setStoredValue] = useState(() => { + const item = window.localStorage.getItem(key); + return item ? JSON.parse(item) : initialValue; + }); + const setValue = value => { + setStoredValue(value); + window.localStorage.setItem(key, JSON.stringify(value)); + }; + + return [storedValue, setValue]; +}; \ No newline at end of file From c0260b9df3083abefd8a68e09ab53dbac0b7518c Mon Sep 17 00:00:00 2001 From: Klove Adams Date: Wed, 4 Aug 2021 16:21:32 -0400 Subject: [PATCH 3/5] added useDarkMode.js --- src/hooks/useDarkMode.js | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 src/hooks/useDarkMode.js diff --git a/src/hooks/useDarkMode.js b/src/hooks/useDarkMode.js new file mode 100644 index 00000000..90747dcd --- /dev/null +++ b/src/hooks/useDarkMode.js @@ -0,0 +1,6 @@ +import { useState } from "react"; +import { useLocalStorage } from "./useLocalStorage"; + +const useDarkMode = () => { + +}; \ No newline at end of file From fd7e123752327f08b731bd09aa14bfd5d95e3c36 Mon Sep 17 00:00:00 2001 From: Klove Adams Date: Wed, 4 Aug 2021 16:30:02 -0400 Subject: [PATCH 4/5] useDarkMode setup --- src/hooks/useDarkMode.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/hooks/useDarkMode.js b/src/hooks/useDarkMode.js index 90747dcd..1864d294 100644 --- a/src/hooks/useDarkMode.js +++ b/src/hooks/useDarkMode.js @@ -1,6 +1,7 @@ -import { useState } from "react"; import { useLocalStorage } from "./useLocalStorage"; -const useDarkMode = () => { - +export const useDarkMode = () => { + const [darkValue, setDarkValue] = useLocalStorage("dark", initialValue); + + return [darkValue, setDarkValue]; }; \ No newline at end of file From 863d784b65c6a5e9d584e7df0ad308d385e89ce4 Mon Sep 17 00:00:00 2001 From: Klove Adams Date: Wed, 4 Aug 2021 16:38:48 -0400 Subject: [PATCH 5/5] MVP done --- src/hooks/useDarkMode.js | 2 +- src/index.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/hooks/useDarkMode.js b/src/hooks/useDarkMode.js index 1864d294..5bed9ae9 100644 --- a/src/hooks/useDarkMode.js +++ b/src/hooks/useDarkMode.js @@ -1,7 +1,7 @@ import { useLocalStorage } from "./useLocalStorage"; export const useDarkMode = () => { - const [darkValue, setDarkValue] = useLocalStorage("dark", initialValue); + const [darkValue, setDarkValue] = useLocalStorage("dark", false); return [darkValue, setDarkValue]; }; \ No newline at end of file diff --git a/src/index.js b/src/index.js index 956fe3a7..114e7eda 100755 --- a/src/index.js +++ b/src/index.js @@ -4,13 +4,14 @@ import axios from "axios"; import Charts from "./components/Charts"; import Navbar from "./components/Navbar"; +import { useDarkMode } from "./hooks/useDarkMode" import "./styles.scss"; const App = () => { const [coinData, setCoinData] = useState([]); - const [darkMode, setDarkMode] = useState(false); + const [darkMode, setDarkMode] = useDarkMode(false); useEffect(() => { axios