Skip to content

Commit

Permalink
Merge pull request #64 from KERT-core/fix/section-pages
Browse files Browse the repository at this point in the history
fix: Section 재배치 & 반응형 디자인 Apply
  • Loading branch information
Village-GG-Water authored Nov 2, 2024
2 parents c70a3d5 + 0343f17 commit 3167776
Show file tree
Hide file tree
Showing 80 changed files with 1,682 additions and 1,570 deletions.
Binary file removed src/assets/Computer.png
Binary file not shown.
9 changes: 9 additions & 0 deletions src/assets/GroupCard.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/assets/GroupCardMask.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed src/assets/Section4_bg_img.png
Binary file not shown.
Binary file removed src/assets/Section5_bg_img.png
Binary file not shown.
File renamed without changes
File renamed without changes
File renamed without changes
Binary file removed src/assets/background_img.png
Binary file not shown.
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
File renamed without changes
Binary file removed src/assets/icons/Facebook.png
Binary file not shown.
Binary file removed src/assets/icons/Github.png
Binary file not shown.
Binary file removed src/assets/icons/Instagram.png
Binary file not shown.
Binary file removed src/assets/icons/Youtube.png
Binary file not shown.
7 changes: 7 additions & 0 deletions src/assets/icons/sns/facebook.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions src/assets/icons/sns/github.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 11 additions & 0 deletions src/assets/icons/sns/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import Facebook from './facebook.svg';
import Github from './github.svg';
import Instagram from './instagram.svg';
import Youtube from './youtube.svg';

export const SNSIcon = {
Facebook,
Github,
Instagram,
Youtube,
};
7 changes: 7 additions & 0 deletions src/assets/icons/sns/instagram.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions src/assets/icons/sns/youtube.svg
19 changes: 19 additions & 0 deletions src/assets/kert_logos/Vertical.svg

Large diffs are not rendered by default.

Binary file removed src/assets/kert_logos/White_incline_Lock.png
Diff not rendered.
Binary file added src/assets/section_bg/section_1.png
File renamed without changes
File renamed without changes
79 changes: 71 additions & 8 deletions src/components/display/HistoryPreview.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,50 @@ import { useQuery } from 'react-query';
import { refineHistories } from '@/utils/refineHistory';

const PreviewWrapper = styled.div`
width: 500px;
height: 300px;
width: 600px;
height: auto;
padding: 20px;
display: flex;
gap: min(5vw, 80px);
flex-direction: row;
gap: 50px;
// 모바일 대응
@media (max-width: 768px) {
flex-direction: column;
align-items: center;
}
`;

const YearListWrapper = styled.div`
display: flex;
flex-direction: column;
gap: 40px;
flex-direction: row;
gap: 20px;
overflow-x: auto;
@media (min-width: 768px) {
flex-direction: column;
gap: 40px;
overflow-x: visible;
}
// 모바일 대응
@media (max-width: 768px) {
gap: 30px;
}
`;

const HistoryListWrapper = styled.div``;
const HistoryListWrapper = styled.div`
// 모바일 대응
@media (max-width: 768px) {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 10px;
}
`;

const HistoryElementWrapper = styled.div`
width: 100%;
Expand All @@ -41,6 +72,11 @@ const HistoryElementWrapper = styled.div`
& > span {
word-break: keep-all;
}
// 모바일 대응
@media (max-width: 768px) {
width: fit-content;
}
`;

const YearWrapper = styled.button`
Expand All @@ -67,6 +103,17 @@ const YearWrapper = styled.button`
rgba(48, 49, 70, 1) 100%
);
}
// 모바일 대응
@media (max-width: 768px) {
display: flex;
flex-direction: column;
align-items: center;
&:not(.active) > div {
background-color: transparent;
}
}
`;

const Year = styled.span`
Expand All @@ -76,6 +123,11 @@ const Year = styled.span`
font-size: clamp(16px, 2vw, 24px);
text-align: left;
color: white;
// 모바일 대응
@media (max-width: 768px) {
width: fit-content;
}
`;

const Dot = styled.div`
Expand All @@ -98,6 +150,17 @@ const Dot = styled.div`
height: 60px;
background: #303146;
}
// 모바일 대응
@media (max-width: 768px) {
width: 100%;
height: 2px;
border-radius: 0px;
&:after {
display: none;
}
}
`;

const HistoryElement = ({ history }) => {
Expand Down Expand Up @@ -176,13 +239,13 @@ export const HistoryPreview = () => {
</YearWrapper>
))}
</YearListWrapper>
<TransitionGroup>
<TransitionGroup style={{ position: 'relative', width: '100%' }}>
<CSSTransition
nodeRef={nodeRef}
key={display_year}
timeout={500}
classNames="fade-slide"
style={{ position: 'absolute' }}
style={{ position: 'absolute', left: '0' }}
>
<HistoryListWrapper ref={nodeRef}>
{isError
Expand Down
6 changes: 3 additions & 3 deletions src/components/display/dashboard/admin/AdminElement.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ import { ErrorModal } from '@components/display/dashboard/ErrorModal';

import { GENERATION_REGEX } from '@/utils/regex';
import { API } from '@/utils/api';
import useAlert from '@/stores/useAlert';
import useConfirm from '@/stores/useConfirm';
import useLoading from '@/stores/useLoading';
import useAlert from '@/hooks/modal/useAlert';
import useConfirm from '@/hooks/modal/useConfirm';
import useLoading from '@/hooks/modal/useLoading';

const CardWrapper = styled.div`
transition: background-color 0.1s ease-in-out;
Expand Down
6 changes: 3 additions & 3 deletions src/components/display/dashboard/admin/EditAdmin.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ import { ErrorModal } from '@components/display/dashboard/ErrorModal';

import { API } from '@/utils/api';
import { GenerateColorByString } from '@/utils/generateColor';
import useConfirm from '@/stores/useConfirm';
import useAlert from '@/stores/useAlert';
import useLoading from '@/stores/useLoading';
import useConfirm from '@/hooks/modal/useConfirm';
import useAlert from '@/hooks/modal/useAlert';
import useLoading from '@/hooks/modal/useLoading';

const Wrapper = styled.div`
margin: 40px 0;
Expand Down
6 changes: 3 additions & 3 deletions src/components/display/dashboard/history/HistoryElement.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ import { UpdatedHistory } from '@components/display/dashboard/history/UpdatedHis
import { ErrorModal } from '@components/display/dashboard/ErrorModal';

import { API } from '@/utils/api';
import useConfirm from '@/stores/useConfirm';
import useAlert from '@/stores/useAlert';
import useLoading from '@/stores/useLoading';
import useConfirm from '@/hooks/modal/useConfirm';
import useAlert from '@/hooks/modal/useAlert';
import useLoading from '@/hooks/modal/useLoading';

const CardWrapper = styled.div.attrs({
id: 'dashboard-history-card',
Expand Down
6 changes: 3 additions & 3 deletions src/components/display/dashboard/user/DetailUser.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ import { ErrorModal } from '@components/display/dashboard/ErrorModal';

import { API } from '@/utils/api';
import { GenerateColorByString } from '@/utils/generateColor';
import useConfirm from '@/stores/useConfirm';
import useAlert from '@/stores/useAlert';
import useLoading from '@/stores/useLoading';
import useConfirm from '@/hooks/modal/useConfirm';
import useAlert from '@/hooks/modal/useAlert';
import useLoading from '@/hooks/modal/useLoading';

const Wrapper = styled.div`
margin: 40px 0;
Expand Down
2 changes: 1 addition & 1 deletion src/components/display/dashboard/user/UserElement.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import { Text } from '@components/typograph/Text';
import { GenerateColorByString } from '@/utils/generateColor';
import { ColorProfile } from '@components/display/ColorProfile';

import useAlert from '@/stores/useAlert';
import useAlert from '@/hooks/modal/useAlert';
import { DetailUser } from './DetailUser';

const CardWrapper = styled.div`
Expand Down
84 changes: 84 additions & 0 deletions src/components/display/section/ContentCard.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
import styled from 'styled-components';
import PropTypes from 'prop-types';

import { Span, Text } from '@components/typograph/Text';

const ContentCardWrapper = styled.div`
width: 320px;
height: 250px;
padding: 30px;
box-sizing: border-box;
border-radius: 20px;
display: flex;
flex-direction: column;
justify-content: space-between;
gap: 30px;
position: relative;
background: rgba(255, 255, 255, 0.1);
backdrop-filter: blur(10px);
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.25);
// 그라데이션 테두리 적용
&::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
border-radius: 20px;
// padding 값이 클수록 테두리가 두꺼워짐
padding: 1px;
background: linear-gradient(135deg, #ffffff30, #ffffff16);
-webkit-mask:
linear-gradient(#fff 0 0) content-box,
linear-gradient(#fff 0 0);
-webkit-mask-composite: destination-out;
mask-composite: exclude;
}
`;

const Icon = styled.img`
width: 50px;
height: 50px;
`;

const TitleWrapper = styled.div`
display: flex;
flex-direction: column;
gap: 20px;
`;

const Title = styled(Span).attrs({
$size: '22px',
$weight: 'extrabold',
})`
color: #ffffff;
`;

const Description = styled(Span).attrs({
$size: 's',
$weight: 'regular',
$color: 'rgba(255, 255, 255, 0.5)',
})``;

export const ContentCard = ({ title, description, image_url }) => {
return (
<ContentCardWrapper>
<Icon src={image_url} alt={title} />
<TitleWrapper>
<Title>{title}</Title>
<Description>{description}</Description>
</TitleWrapper>
</ContentCardWrapper>
);
};

ContentCard.propTypes = {
title: PropTypes.string.isRequired,
description: PropTypes.string.isRequired,
image_url: PropTypes.string.isRequired,
};
Loading

0 comments on commit 3167776

Please sign in to comment.