From 451c1c8ba5da0b8e9a0741724d3505665d3be9a7 Mon Sep 17 00:00:00 2001 From: Lucas Vieira Date: Mon, 9 Jan 2023 18:29:59 -0300 Subject: [PATCH 1/5] =?UTF-8?q?feat:=20Persistindo=20dados=20ap=C3=B3s=20a?= =?UTF-8?q?tualizar=20p=C3=A1gina?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/Dashboard/index.tsx | 27 +++++++++++++++++++++++++-- src/pages/Dashboard/styles.ts | 9 +++++++++ 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/src/pages/Dashboard/index.tsx b/src/pages/Dashboard/index.tsx index b1ca351..74d962a 100644 --- a/src/pages/Dashboard/index.tsx +++ b/src/pages/Dashboard/index.tsx @@ -8,7 +8,15 @@ import api from '../../services/api'; import logoImage from '../../assets/logo.svg'; import loadingImage from '../../assets/loading.svg'; -import { Title, Form, Badges, Error, LoadingIcon, Center } from './styles'; +import { + Title, + RepositoryName, + Form, + Badges, + Error, + LoadingIcon, + Center, +} from './styles'; interface Badge { name: string; @@ -18,7 +26,17 @@ interface Badge { const Dashboard: React.FC = () => { const [text, setText] = useState(''); - const [badges, setBadges] = useState([]); + const [prevRepoName, setPrevRepoName] = useState( + localStorage.getItem('@repo'), + ); + const [badges, setBadges] = useState(() => { + const hasBadges = JSON.parse(localStorage.getItem('@badges')!); + + if (hasBadges && hasBadges.length > 0) { + return hasBadges; + } + return []; + }); const [inputError, setInputError] = useState(''); const [loading, setLoading] = useState(false); @@ -44,6 +62,9 @@ const Dashboard: React.FC = () => { const response = generateBadges(`${username}/${repository}`); setBadges(response); + localStorage.setItem('@badges', JSON.stringify(response)); + localStorage.setItem('@repo', `${username}/${repository}`); + setPrevRepoName(`${username}/${repository}`); setText(''); setInputError(''); } catch (err) { @@ -76,6 +97,8 @@ const Dashboard: React.FC = () => { {inputError && {inputError}} + {prevRepoName} +
diff --git a/src/pages/Dashboard/styles.ts b/src/pages/Dashboard/styles.ts index ab38c85..3a38c32 100644 --- a/src/pages/Dashboard/styles.ts +++ b/src/pages/Dashboard/styles.ts @@ -14,6 +14,15 @@ export const Title = styled.h1` margin-top: 80px; `; +export const RepositoryName = styled.h1` + font-size: 32px; + color: #3a3a3a; + max-width: 735px; + line-height: 56px; + + margin-top: 40px; +`; + export const Form = styled.form` margin-top: 40px; max-width: 700px; From 56e1d02d0264b3e5e4399e8bec1e962447f44f1f Mon Sep 17 00:00:00 2001 From: Lucas Vieira Date: Mon, 9 Jan 2023 23:55:19 -0300 Subject: [PATCH 2/5] Update src/pages/Dashboard/index.tsx Co-authored-by: Gustavo Souza --- src/pages/Dashboard/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/index.tsx b/src/pages/Dashboard/index.tsx index 74d962a..a12ea68 100644 --- a/src/pages/Dashboard/index.tsx +++ b/src/pages/Dashboard/index.tsx @@ -27,7 +27,7 @@ interface Badge { const Dashboard: React.FC = () => { const [text, setText] = useState(''); const [prevRepoName, setPrevRepoName] = useState( - localStorage.getItem('@repo'), + localStorage.getItem('@GithubBadges:Repo'), ); const [badges, setBadges] = useState(() => { const hasBadges = JSON.parse(localStorage.getItem('@badges')!); From 932256f98e12972ef46ddd60b587a839fdbad738 Mon Sep 17 00:00:00 2001 From: Lucas Vieira Date: Mon, 9 Jan 2023 23:55:33 -0300 Subject: [PATCH 3/5] Update src/pages/Dashboard/index.tsx Co-authored-by: Gustavo Souza --- src/pages/Dashboard/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/index.tsx b/src/pages/Dashboard/index.tsx index a12ea68..a3476a3 100644 --- a/src/pages/Dashboard/index.tsx +++ b/src/pages/Dashboard/index.tsx @@ -30,7 +30,7 @@ const Dashboard: React.FC = () => { localStorage.getItem('@GithubBadges:Repo'), ); const [badges, setBadges] = useState(() => { - const hasBadges = JSON.parse(localStorage.getItem('@badges')!); + const hasBadges = JSON.parse(localStorage.getItem('@GithubBadges:Badges')!); if (hasBadges && hasBadges.length > 0) { return hasBadges; From e0266bc6721b438e2a92d8aa6210f778d154fb59 Mon Sep 17 00:00:00 2001 From: Lucas Vieira Date: Mon, 9 Jan 2023 23:55:53 -0300 Subject: [PATCH 4/5] Update src/pages/Dashboard/index.tsx Co-authored-by: Gustavo Souza --- src/pages/Dashboard/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/index.tsx b/src/pages/Dashboard/index.tsx index a3476a3..8c362da 100644 --- a/src/pages/Dashboard/index.tsx +++ b/src/pages/Dashboard/index.tsx @@ -62,7 +62,7 @@ const Dashboard: React.FC = () => { const response = generateBadges(`${username}/${repository}`); setBadges(response); - localStorage.setItem('@badges', JSON.stringify(response)); + localStorage.setItem('@GithubBadges:Badges', JSON.stringify(response)); localStorage.setItem('@repo', `${username}/${repository}`); setPrevRepoName(`${username}/${repository}`); setText(''); From ef17c4a6d87f235fe06dd3e36a1a71b7c28513ac Mon Sep 17 00:00:00 2001 From: Lucas Vieira Date: Mon, 9 Jan 2023 23:56:11 -0300 Subject: [PATCH 5/5] Update src/pages/Dashboard/index.tsx Co-authored-by: Gustavo Souza --- src/pages/Dashboard/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Dashboard/index.tsx b/src/pages/Dashboard/index.tsx index 8c362da..5434079 100644 --- a/src/pages/Dashboard/index.tsx +++ b/src/pages/Dashboard/index.tsx @@ -63,7 +63,7 @@ const Dashboard: React.FC = () => { setBadges(response); localStorage.setItem('@GithubBadges:Badges', JSON.stringify(response)); - localStorage.setItem('@repo', `${username}/${repository}`); + localStorage.setItem('@GithubBadges:Repo', `${username}/${repository}`); setPrevRepoName(`${username}/${repository}`); setText(''); setInputError('');