Skip to content

Commit da71169

Browse files
committed
Added banner
1 parent fcd8103 commit da71169

File tree

6 files changed

+48
-27
lines changed

6 files changed

+48
-27
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,5 @@ yarn-error.log*
2828
firebase.json
2929

3030
/.firebase
31+
32+
*.psd

src/assets/img/banner.png

292 KB
Loading

src/pages/Profile/index.tsx

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import { APIUser, APIRepo } from '../../@types';
1515
import api from '../../services/api';
1616
import notify from '../../services/toast';
1717
import kFormatter from '../../utils/kFormatter';
18+
import useWindowSize from '../../utils/useWindowSize';
1819

1920
interface Data {
2021
user?: APIUser;
@@ -30,29 +31,6 @@ const Profile: React.FC = () => {
3031
const [organizations, setOrgs] = useState([]);
3132
const [loading, setLoading] = useState(true);
3233

33-
function useWindowSize() {
34-
const [windowSize, setWindowSize] = useState({
35-
width: undefined,
36-
height: undefined,
37-
});
38-
39-
useEffect(() => {
40-
function handleResize() {
41-
setWindowSize({
42-
width: window.innerWidth,
43-
height: window.innerHeight,
44-
});
45-
}
46-
47-
window.addEventListener('resize', handleResize);
48-
49-
handleResize();
50-
51-
return () => window.removeEventListener('resize', handleResize);
52-
}, []);
53-
54-
return windowSize;
55-
}
5634
const size = useWindowSize();
5735

5836
useEffect(() => {

src/pages/Repo/index.tsx

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ import {
5454

5555
import { APIRepo } from '../../@types';
5656
import api from '../../services/api';
57+
import useWindowSize from '../../utils/useWindowSize';
5758

5859
interface Data {
5960
repo?: APIRepo;
@@ -100,6 +101,20 @@ const Repo: React.FC = () => {
100101
return percentage.toFixed(2);
101102
};
102103

104+
const size = useWindowSize();
105+
106+
useEffect(() => {
107+
const element = document.getElementById('main-content');
108+
const elementRepo = document.getElementById('main-repo');
109+
if (size.width <= 561 || size.height <= 768) {
110+
element.style.height = 'calc(100% - 54px)';
111+
if (elementRepo) elementRepo.style.height = 'auto';
112+
} else if (size.width > 561) {
113+
element.style.height = '100%';
114+
elementRepo.style.height = 'calc(100vh - 94px)';
115+
}
116+
}, [size]);
117+
103118
useEffect(() => {
104119
async function loadRepoInfo() {
105120
setLoading(true);
@@ -147,7 +162,7 @@ const Repo: React.FC = () => {
147162
const contributorsResponse = await api.get(`repos/${username}/${reponame}/contributors`);
148163
const contributors = contributorsResponse.data;
149164
const shuffledContributors = contributors.sort(() => 0.5 - Math.random());
150-
const slicedContributors = shuffledContributors.slice(0, 10);
165+
const slicedContributors = shuffledContributors.slice(0, 7);
151166
setContributors(slicedContributors);
152167
} catch (err) {
153168
const error = err?.response?.data?.message ? err.response.data.message : err.message;
@@ -226,7 +241,7 @@ const Repo: React.FC = () => {
226241

227242
if (loading) {
228243
return (
229-
<Container id="main-profile">
244+
<Container id="main-repo">
230245
<Loader>
231246
<ClipLoader size={25} color="#6a737d" />
232247
</Loader>
@@ -243,7 +258,7 @@ const Repo: React.FC = () => {
243258
}
244259

245260
return (
246-
<Container>
261+
<Container id="main-repo">
247262
<Header>
248263
<HeaderInfo>
249264
<Breadcrumb>

src/pages/Repo/styles.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ export const Tabs = styled.div`
5252
::-webkit-scrollbar-thumb {
5353
background: var(--gray-light);
5454
}
55+
5556
::-webkit-scrollbar {
5657
height: 5px !important;
5758
width: 5px !important;
@@ -187,7 +188,7 @@ export const RightSide = styled.div`
187188
188189
@media (max-width: 560px) {
189190
grid-template-columns: repeat(1, 1fr);
190-
padding: 60px 15px 50px 15px;
191+
padding: 60px 15px 90px 15px;
191192
}
192193
`;
193194

src/utils/useWindowSize.tsx

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import { useState, useEffect } from 'react';
2+
3+
export default function useWindowSize() {
4+
const [windowSize, setWindowSize] = useState({
5+
width: undefined,
6+
height: undefined,
7+
});
8+
9+
useEffect(() => {
10+
function handleResize() {
11+
setWindowSize({
12+
width: window.innerWidth,
13+
height: window.innerHeight,
14+
});
15+
}
16+
17+
window.addEventListener('resize', handleResize);
18+
19+
handleResize();
20+
21+
return () => window.removeEventListener('resize', handleResize);
22+
}, []);
23+
24+
return windowSize;
25+
}

0 commit comments

Comments
 (0)