{info.map((content, idx) => (
{idx === 1 && headerInfos.length === 4
diff --git a/constants/styles.ts b/constants/styles.ts
index 01610eb96..18d5964ca 100644
--- a/constants/styles.ts
+++ b/constants/styles.ts
@@ -50,8 +50,8 @@ export const ICON_SIZE = {
export const STATUS_TP_COLOR: Record = {
open: "var(--color-mint)",
pending: "var(--color-red)",
- close: "var(--gray-4)",
- end: "var(--gray-4)",
+ close: "var(--gray-500)",
+ end: "var(--gray-500)",
};
export const COLOR_SCHEME_BG = {
diff --git a/design/attendance/AttendanceModal.tsx b/design/attendance/AttendanceModal.tsx
index 5087981a4..e25af4eec 100644
--- a/design/attendance/AttendanceModal.tsx
+++ b/design/attendance/AttendanceModal.tsx
@@ -100,7 +100,7 @@ const Message = styled.div`
padding: var(--gap-2) var(--gap-3);
color: var(--gray-2);
border-radius: var(--rounded);
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
`;
const ProfileWrapper = styled.div`
@@ -122,7 +122,7 @@ const ScoreBarWrapper = styled.div`
flex-direction: column;
> span {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
margin-left: auto;
}
`;
diff --git a/modals/Modals.tsx b/modals/Modals.tsx
index 5a0afee06..9e6419d39 100644
--- a/modals/Modals.tsx
+++ b/modals/Modals.tsx
@@ -80,7 +80,7 @@ export function ModalLayout({
>
{!headerOptions ? (
<>
-
+
{title}
@@ -205,7 +205,7 @@ export function ModalHeader({ text, isCloseBtn = true, isLine = true }: IModalHe
p="var(--gap-4) var(--gap-4)"
fontWeight="700"
fontSize="18px"
- color="var(--gray-1)"
+ color="var(--gray-900)"
borderBottom={isLine && "var(--border)"}
>
{text}
diff --git a/modals/RuleModal.tsx b/modals/RuleModal.tsx
index 46c9e7038..2c565f11a 100644
--- a/modals/RuleModal.tsx
+++ b/modals/RuleModal.tsx
@@ -61,7 +61,7 @@ const ItemContent = styled.ul`
`;
const RuleTitle = styled.span`
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 13px;
font-weight: 600;
`;
diff --git a/modals/aboutHeader/DateCalendarModal.tsx b/modals/aboutHeader/DateCalendarModal.tsx
new file mode 100644
index 000000000..1ae607c13
--- /dev/null
+++ b/modals/aboutHeader/DateCalendarModal.tsx
@@ -0,0 +1,69 @@
+import { Box } from "@chakra-ui/react";
+import { Dayjs } from "dayjs";
+import { useRouter, useSearchParams } from "next/navigation";
+import { useSession } from "next-auth/react";
+import { Dispatch } from "react";
+import { useRecoilValue } from "recoil";
+
+import Calendar from "../../components/molecules/Calendar";
+import DateVoteBlock from "../../components/molecules/DateVoteBlock";
+import { useTypeToast } from "../../hooks/custom/CustomToast";
+import {
+ handleChangeDate,
+ VoteType,
+} from "../../pageTemplates/home/studyController/StudyController";
+import {
+ ACTION_TO_VOTE_TYPE,
+ getStudyVoteButtonProps,
+} from "../../pageTemplates/home/studyController/StudyControllerVoteButton";
+import { myStudyState, studyDateStatusState } from "../../recoils/studyRecoils";
+import { IModal } from "../../types/components/modalTypes";
+import { dayjsToFormat } from "../../utils/dateTimeUtils";
+import { ModalLayout } from "../Modals";
+interface DateCalendarModalProps extends IModal {
+ selectedDate: Dayjs;
+ setModalType: Dispatch;
+}
+
+function DateCalendarModal({ selectedDate, setIsModal, setModalType }: DateCalendarModalProps) {
+ const typeToast = useTypeToast();
+ const { data: session } = useSession();
+ const router = useRouter();
+ const searchParams = useSearchParams();
+ const newSearchParams = new URLSearchParams(searchParams);
+ const isGuest = session?.user.name === "guest";
+
+ const studyDateStatus = useRecoilValue(studyDateStatusState);
+ const myStudy = useRecoilValue(myStudyState);
+ const buttonProps = getStudyVoteButtonProps(studyDateStatus, myStudy, session?.user.uid);
+
+ const onClick = (month: number) => {
+ const newDate = handleChangeDate(selectedDate, "month", month);
+ newSearchParams.set("date", newDate);
+ router.replace(`/home?${newSearchParams.toString()}`, { scroll: false });
+ };
+
+ const handleModalOpen = () => {
+ if (isGuest) {
+ typeToast("guest");
+ return;
+ }
+ const type = buttonProps.text;
+ if (type === "참여 신청" || type === "투표 변경" || type === "당일 참여") {
+ router.push(`/vote?${newSearchParams.toString()}`);
+ return;
+ }
+ setModalType(ACTION_TO_VOTE_TYPE[type]);
+ };
+
+ return (
+
+
+
+
+
+
+ );
+}
+
+export default DateCalendarModal;
diff --git a/modals/aboutHeader/EnthusiasticModal/EnthusiasticModal.tsx b/modals/aboutHeader/EnthusiasticModal/EnthusiasticModal.tsx
index c44e98791..dac3c2d1f 100644
--- a/modals/aboutHeader/EnthusiasticModal/EnthusiasticModal.tsx
+++ b/modals/aboutHeader/EnthusiasticModal/EnthusiasticModal.tsx
@@ -136,7 +136,7 @@ const Condition = styled.ol`
}
> span {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
diff --git a/modals/aboutHeader/dailyCheckModal/DailyCheckModal.tsx b/modals/aboutHeader/dailyCheckModal/DailyCheckModal.tsx
index 0290ad371..f2a10ac2c 100644
--- a/modals/aboutHeader/dailyCheckModal/DailyCheckModal.tsx
+++ b/modals/aboutHeader/dailyCheckModal/DailyCheckModal.tsx
@@ -137,7 +137,7 @@ function PresentListPopOver() {
선물 목록
-
+
선물 목록 (16 종류)
@@ -164,7 +164,7 @@ function PresentPercentPopOver() {
당첨 확률
-
+
당첨 확률(총 7.06%)
@@ -219,7 +219,7 @@ const Detail = styled.div`
`;
const SubTitle = styled.span`
- color: var(--gray-3);
+ color: var(--gray-700);
font-weight: 400;
font-size: 12px;
`;
diff --git a/modals/aboutHeader/promotionModal/PromotionModalDetail.tsx b/modals/aboutHeader/promotionModal/PromotionModalDetail.tsx
index e130eb0ea..9147897ae 100644
--- a/modals/aboutHeader/promotionModal/PromotionModalDetail.tsx
+++ b/modals/aboutHeader/promotionModal/PromotionModalDetail.tsx
@@ -51,7 +51,7 @@ const Layout = styled.div`
`;
const Temp = styled.span`
font-size: 11px;
- color: var(--gray-3);
+ color: var(--gray-700);
`;
const VoteNum = styled.span``;
diff --git a/modals/aboutHeader/regularGatherModal/RegularGatherModal.tsx b/modals/aboutHeader/regularGatherModal/RegularGatherModal.tsx
index 054d5b3fb..97298cbae 100644
--- a/modals/aboutHeader/regularGatherModal/RegularGatherModal.tsx
+++ b/modals/aboutHeader/regularGatherModal/RegularGatherModal.tsx
@@ -118,11 +118,11 @@ function RegularGatherModal({ setIsModal, setIsRabbitRun }: IRegularGatherModal)
}
const Overview = styled.div`
- color: var(--gray-1);
+ color: var(--gray-900);
`;
const Count = styled.div`
- color: var(--gray-1);
+ color: var(--gray-900);
width: max-content;
padding: var(--gap-1) var(--gap-2);
border-radius: var(--rounded-lg);
@@ -137,7 +137,7 @@ const Count = styled.div`
`;
const Rule = styled.div`
- color: var(--gray-3);
+ color: var(--gray-700);
margin-top: var(--gap-2);
font-size: 11px;
@@ -184,7 +184,7 @@ const Content = styled.div`
}
> span:last-child {
font-size: 11px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
diff --git a/modals/aboutHeader/regularGatherModal/RegularGatherResultModal.tsx b/modals/aboutHeader/regularGatherModal/RegularGatherResultModal.tsx
index c526e14d6..73d83fbc4 100644
--- a/modals/aboutHeader/regularGatherModal/RegularGatherResultModal.tsx
+++ b/modals/aboutHeader/regularGatherModal/RegularGatherResultModal.tsx
@@ -52,7 +52,7 @@ const IconWrapper = styled.div`
justify-content: center;
align-items: center;
> * {
- color: var(--gray-5);
+ color: var(--gray-400);
margin-right: var(--gap-1);
}
`;
diff --git a/modals/gather/gatherParticipateModal/GatherParticipateModalPassword.tsx b/modals/gather/gatherParticipateModal/GatherParticipateModalPassword.tsx
index 2a2da118b..a8ccbb6fc 100644
--- a/modals/gather/gatherParticipateModal/GatherParticipateModalPassword.tsx
+++ b/modals/gather/gatherParticipateModal/GatherParticipateModalPassword.tsx
@@ -32,7 +32,7 @@ function GatherParticipateModalPassword({ setPageNum }: IGatherParticipateModalP
<>
전달 받은 암호 네자리를 입력해 주세요.
-
+
span {
font-size: 13px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
diff --git a/modals/home/writeDrawer.tsx b/modals/home/writeDrawer.tsx
index 484aea98a..4788eee33 100644
--- a/modals/home/writeDrawer.tsx
+++ b/modals/home/writeDrawer.tsx
@@ -101,7 +101,7 @@ function SocialButton({ title, subTitle, icon, color, url }: ISocialButton) {
onClickFriendRequest(
@@ -182,7 +182,7 @@ const Item = styled.div`
align-items: center;
padding: var(--gap-3) var(--gap-5);
font-size: 13px;
- border-bottom: 1px solid var(--gray-7);
+ border-bottom: 1px solid var(--gray-200);
`;
const IconWrapper = styled.div`
@@ -212,7 +212,7 @@ const Point = styled.span`
const Date = styled.span`
margin-left: auto;
white-space: nowrap;
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 11px;
`;
@@ -223,7 +223,7 @@ const FriendButtons = styled.div`
const FriendComplete = styled.span`
margin-left: auto;
- color: var(--gray-3);
+ color: var(--gray-700);
font-weight: 500;
font-size: 12px;
`;
diff --git a/pageTemplates/notice/NoticeItem.tsx b/pageTemplates/notice/NoticeItem.tsx
index 8efe73183..d70698a3b 100644
--- a/pageTemplates/notice/NoticeItem.tsx
+++ b/pageTemplates/notice/NoticeItem.tsx
@@ -23,28 +23,28 @@ function NoticeItem() {
<>
{[...NOTICE_ARR].reverse().map((item) => (
-
+
-
+
{item.title}
-
+
{item.date}
-
+
{item.content}
diff --git a/pageTemplates/notice/NoticeNav.tsx b/pageTemplates/notice/NoticeNav.tsx
index a2863dd63..6e5b9fd2f 100644
--- a/pageTemplates/notice/NoticeNav.tsx
+++ b/pageTemplates/notice/NoticeNav.tsx
@@ -56,7 +56,7 @@ const Button = styled.button<{ isSelected: boolean }>`
padding: var(--gap-3) 0;
font-weight: ${(props) => (props.isSelected ? "700" : "500")};
border-bottom: ${(props) => props.isSelected && "3px solid var(--color-mint)"};
- background-color: ${(props) => (props.isSelected ? "white" : "var(--gray-8)")};
+ background-color: ${(props) => (props.isSelected ? "white" : "var(--gray-100)")};
`;
const IconWrapper = styled.div`
position: absolute;
diff --git a/pageTemplates/point/PointIntro.tsx b/pageTemplates/point/PointIntro.tsx
index 562a2d437..1b5ad85c9 100644
--- a/pageTemplates/point/PointIntro.tsx
+++ b/pageTemplates/point/PointIntro.tsx
@@ -16,9 +16,9 @@ const Layout = styled.div`
margin-bottom: var(--gap-5);
margin-left: var(--gap-1);
font-size: 16px;
- color: var(--gray-3);
+ color: var(--gray-700);
> span {
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 18px;
font-weight: 600;
}
diff --git a/pageTemplates/profile/BottomDrawer.tsx b/pageTemplates/profile/BottomDrawer.tsx
index b2ccd202a..d7d83f949 100644
--- a/pageTemplates/profile/BottomDrawer.tsx
+++ b/pageTemplates/profile/BottomDrawer.tsx
@@ -56,7 +56,7 @@ function BottomDrawer({ type, isModal, setIsModal, setDeclareModal, onSubmit }:
size="lg"
borderBottomRadius={0}
borderBottom="var(--border)"
- borderColor="var(--gray-4)"
+ borderColor="var(--gray-500)"
>
거리두기
diff --git a/pageTemplates/profile/DeclareDrawer.tsx b/pageTemplates/profile/DeclareDrawer.tsx
index 50159a4c7..d4df3908e 100644
--- a/pageTemplates/profile/DeclareDrawer.tsx
+++ b/pageTemplates/profile/DeclareDrawer.tsx
@@ -197,7 +197,7 @@ const DeclareText = styled.div`
> label {
margin-bottom: var(--gap-2);
> span {
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 13px !important;
}
}
diff --git a/pageTemplates/profile/DetailInfo.tsx b/pageTemplates/profile/DetailInfo.tsx
index c6ab9f6d3..52db19a07 100644
--- a/pageTemplates/profile/DetailInfo.tsx
+++ b/pageTemplates/profile/DetailInfo.tsx
@@ -73,7 +73,7 @@ const Profile = styled.div`
const Interests = styled.div`
display: flex;
flex-direction: column;
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
> span {
@@ -86,10 +86,10 @@ const ProfileItem = styled.div`
> span:first-child {
display: inline-block;
width: 64px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
> span:last-child {
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
}
`;
diff --git a/pageTemplates/profile/profileOverview/ProfileInfo.tsx b/pageTemplates/profile/profileOverview/ProfileInfo.tsx
index cdca9d7b5..81689f75d 100644
--- a/pageTemplates/profile/profileOverview/ProfileInfo.tsx
+++ b/pageTemplates/profile/profileOverview/ProfileInfo.tsx
@@ -172,7 +172,7 @@ const ProfileName = styled.div`
}
> span:last-child {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
const HeartWrapper = styled.button`
@@ -182,7 +182,7 @@ const HeartWrapper = styled.button`
const Comment = styled.div`
margin-left: var(--gap-1);
margin-top: var(--gap-3);
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 12px;
font-weight: 600;
`;
diff --git a/pageTemplates/profile/skeleton/ProfileOverviewSkeleton.tsx b/pageTemplates/profile/skeleton/ProfileOverviewSkeleton.tsx
index 0c8568699..4faf5816e 100644
--- a/pageTemplates/profile/skeleton/ProfileOverviewSkeleton.tsx
+++ b/pageTemplates/profile/skeleton/ProfileOverviewSkeleton.tsx
@@ -135,14 +135,14 @@ const ProfileInfo = styled.div`
}
> span:last-child {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
const Comment = styled.div`
margin-left: var(--gap-1);
margin-top: var(--gap-3);
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 12px;
font-weight: 600;
width: 140px;
diff --git a/pageTemplates/promotion/PromotionApply.tsx b/pageTemplates/promotion/PromotionApply.tsx
index e0833f5cc..06085e8f4 100644
--- a/pageTemplates/promotion/PromotionApply.tsx
+++ b/pageTemplates/promotion/PromotionApply.tsx
@@ -88,12 +88,12 @@ function PromotionApply() {
border="var(--border)"
onChange={(e) => setValue(e.target.value)}
_focus={{
- borderColor: "var(--gray-1)",
+ borderColor: "var(--gray-900)",
borderBottomRadius: value !== "" && filterData?.length > 0 && "none",
}}
_placeholder={{
fontWeight: "600",
- color: "var(--gray-4)",
+ color: "var(--gray-500)",
}}
/>
{filterData?.length !== 0 && (
@@ -149,7 +149,7 @@ const AutoItem = styled.div`
padding-left: 14px;
border-bottom: var(--border);
border-color: black;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
`;
diff --git a/pageTemplates/promotion/PromotionContent.tsx b/pageTemplates/promotion/PromotionContent.tsx
index c75181abd..fb815d0c7 100644
--- a/pageTemplates/promotion/PromotionContent.tsx
+++ b/pageTemplates/promotion/PromotionContent.tsx
@@ -77,7 +77,7 @@ const Guide = styled.div`
const Container = styled.div`
padding-top: var(--gap-5);
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
padding: var(--gap-5) var(--gap-4);
`;
@@ -102,7 +102,7 @@ const ImageWrapper = styled.div`
margin-top: var(--gap-3);
font-size: 12px;
font-weight: 600;
- color: var(--gray-1);
+ color: var(--gray-900);
display: flex;
flex-direction: column;
align-items: center;
@@ -110,7 +110,7 @@ const ImageWrapper = styled.div`
`;
const Nav = styled.nav`
- border: 1px solid var(--gray-5);
+ border: 1px solid var(--gray-400);
border-radius: var(--rounded-lg);
`;
diff --git a/pageTemplates/promotion/PromotionDetail.tsx b/pageTemplates/promotion/PromotionDetail.tsx
index 5bf9152a1..2dbe3829d 100644
--- a/pageTemplates/promotion/PromotionDetail.tsx
+++ b/pageTemplates/promotion/PromotionDetail.tsx
@@ -23,9 +23,9 @@ function PromotionDetail() {
w="50%"
mr="var(--gap-2)"
onClick={() => setIsAllModal(true)}
- color="var(--gray-2)"
+ color="var(--gray-800)"
borderRadius="var(--rounded-lg)"
- border="1px solid var(--gray-6)"
+ border="1px solid var(--gray-300)"
>
전체 현황
@@ -33,8 +33,8 @@ function PromotionDetail() {
w="50%"
onClick={onClick}
borderRadius="var(--rounded-lg)"
- color="var(--gray-2)"
- border="1px solid var(--gray-6)"
+ color="var(--gray-800)"
+ border="1px solid var(--gray-300)"
>
지난 당첨 기록
diff --git a/pageTemplates/promotion/PromotionOverview.tsx b/pageTemplates/promotion/PromotionOverview.tsx
index 943ed7db6..0c03b2483 100644
--- a/pageTemplates/promotion/PromotionOverview.tsx
+++ b/pageTemplates/promotion/PromotionOverview.tsx
@@ -12,7 +12,7 @@ function PromotionOverview() {
const Layout = styled.div`
margin-top: var(--gap-4);
font-size: 12px;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
export default PromotionOverview;
diff --git a/pageTemplates/promotion/PromotionTitle.tsx b/pageTemplates/promotion/PromotionTitle.tsx
index fb0051151..c88f0cd92 100644
--- a/pageTemplates/promotion/PromotionTitle.tsx
+++ b/pageTemplates/promotion/PromotionTitle.tsx
@@ -30,7 +30,7 @@ const Detail = styled.div`
margin-top: var(--gap-5);
font-weight: 600;
font-size: 13px;
- color: var(--gray-2);
+ color: var(--gray-800);
> div:first-child {
margin-bottom: var(--gap-2);
> b {
@@ -39,7 +39,7 @@ const Detail = styled.div`
}
}
> div:last-child {
- color: var(--gray-1);
+ color: var(--gray-900);
}
`;
diff --git a/pageTemplates/ranking/RankingCategory.tsx b/pageTemplates/ranking/RankingCategory.tsx
index da9f0c8c2..cfb66613d 100644
--- a/pageTemplates/ranking/RankingCategory.tsx
+++ b/pageTemplates/ranking/RankingCategory.tsx
@@ -34,7 +34,7 @@ function RankingCategoryBar({
_focus={{ border: "none" }}
value={category}
onChange={onChange}
- color="var(--gray-1)"
+ color="var(--gray-900)"
>
@@ -79,7 +79,7 @@ const SwitchWrapper = styled.div`
const SwitchLabel = styled.span<{ isSelected: boolean }>`
font-size: 11px;
- color: ${(props) => (props.isSelected ? "var(--gray-1)" : "var(--gray-3)")};
+ color: ${(props) => (props.isSelected ? "var(--gray-900)" : "var(--gray-700)")};
`;
export default RankingCategoryBar;
diff --git a/pageTemplates/ranking/RankingOverview.tsx b/pageTemplates/ranking/RankingOverview.tsx
index 9f4e13d7c..c91d7b545 100644
--- a/pageTemplates/ranking/RankingOverview.tsx
+++ b/pageTemplates/ranking/RankingOverview.tsx
@@ -47,7 +47,7 @@ function RankingOverview({ myRankInfo, isScore = false }: IRankingOverview) {
)}
-
+
{isScore ? "내 점수" : `${dayjs().month() + 1}월 참여`}:{" "}
{myRankInfo.value ? `${myRankInfo.value}${isScore ? "점" : "회"}` : "기록없음"}
@@ -78,7 +78,7 @@ function RankingOverview({ myRankInfo, isScore = false }: IRankingOverview) {
{userBadge}
@@ -158,7 +158,7 @@ const RankBadge = styled.div`
`;
const ScoreText = styled.span`
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
margin-right: var(--gap-1);
diff --git a/pageTemplates/ranking/StatisticsFilterBar.tsx b/pageTemplates/ranking/StatisticsFilterBar.tsx
index 749fc4a7a..11aeb9628 100644
--- a/pageTemplates/ranking/StatisticsFilterBar.tsx
+++ b/pageTemplates/ranking/StatisticsFilterBar.tsx
@@ -40,14 +40,16 @@ export default function StatisticsFilterBar({ setFilterOptions }: IStatisticsFil
isBorder={false}
/>
- {session?.user.location}
+
+ {session?.user.location}
+
setIsSwitchOn((old) => !old)}
isChecked={isSwitchOn}
m="0 8px"
colorScheme="mintTheme"
/>
- 전체
+ 전체
);
diff --git a/pageTemplates/record/RecordCalendar.tsx b/pageTemplates/record/RecordCalendar.tsx
index aac5f14d9..e3a019a45 100644
--- a/pageTemplates/record/RecordCalendar.tsx
+++ b/pageTemplates/record/RecordCalendar.tsx
@@ -3,10 +3,7 @@ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import dayjs, { Dayjs } from "dayjs";
import styled from "styled-components";
-import {
- LOCATION_OPEN_DATE,
- LOCATION_TABLE_COLOR,
-} from "../../constants/location";
+import { LOCATION_OPEN_DATE, LOCATION_TABLE_COLOR } from "../../constants/location";
import { PLACE_TO_LOCATION } from "../../constants/serviceConstants/studyConstants/studyLocationConstants";
import { IArrivedData } from "../../types/models/studyTypes/studyRecords";
import { Location } from "../../types/services/locationTypes";
@@ -96,7 +93,7 @@ const DayItem = styled.div`
display: flex;
flex-direction: column;
align-items: center;
- border: 1px solid var(--gray-7);
+ border: 1px solid var(--gray-200);
`;
const DayItemDate = styled.span<{ isToday: boolean }>`
@@ -124,7 +121,7 @@ const DayLine = styled.div`
margin: var(--gap-2) 24px;
display: flex;
justify-content: space-between;
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
`;
diff --git a/pageTemplates/record/RecordLocationCategory.tsx b/pageTemplates/record/RecordLocationCategory.tsx
index e37f78969..351b26c3c 100644
--- a/pageTemplates/record/RecordLocationCategory.tsx
+++ b/pageTemplates/record/RecordLocationCategory.tsx
@@ -1,11 +1,7 @@
import { useEffect, useState } from "react";
import styled from "styled-components";
-import {
- LOCATION_CONVERT,
- LOCATION_OPEN,
- LOCATION_TABLE_COLOR,
-} from "../../constants/location";
+import { LOCATION_CONVERT, LOCATION_OPEN, LOCATION_TABLE_COLOR } from "../../constants/location";
import { PLACE_TO_LOCATION } from "../../constants/serviceConstants/studyConstants/studyLocationConstants";
import { DispatchType } from "../../types/hooks/reactTypes";
import { IArrivedData } from "../../types/models/studyTypes/studyRecords";
@@ -63,16 +59,16 @@ const Layout = styled.div`
display: flex;
align-items: center;
justify-content: space-between;
- background-color: var(--gray-7);
- border-top: 1px solid var(--gray-6);
- border-bottom: 1px solid var(--gray-6);
+ background-color: var(--gray-200);
+ border-top: 1px solid var(--gray-300);
+ border-bottom: 1px solid var(--gray-300);
> div {
display: flex;
align-items: center;
}
> span:last-child {
font-size: 10px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
diff --git a/pageTemplates/record/RecordOverview.tsx b/pageTemplates/record/RecordOverview.tsx
index 87f175fb0..21673473c 100644
--- a/pageTemplates/record/RecordOverview.tsx
+++ b/pageTemplates/record/RecordOverview.tsx
@@ -116,14 +116,14 @@ const MyRecordItem = styled.div`
const ContentName = styled.span`
margin-right: var(--gap-2);
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 13px;
`;
const ContentValue = styled.span`
font-weight: 700;
font-size: 14px;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
export default RecordOverview;
diff --git a/pageTemplates/record/RecordSkeleton.tsx b/pageTemplates/record/RecordSkeleton.tsx
index 5ed989dce..89c2ab666 100644
--- a/pageTemplates/record/RecordSkeleton.tsx
+++ b/pageTemplates/record/RecordSkeleton.tsx
@@ -166,14 +166,14 @@ const MyRecordItem = styled.div`
`;
const ContentName = styled.span`
margin-right: var(--gap-2);
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 13px;
`;
const ContentValue = styled.span`
font-weight: 700;
font-size: 14px;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
const SpaceBadge = styled.section`
display: flex;
@@ -196,16 +196,16 @@ const Category = styled.div`
display: flex;
align-items: center;
justify-content: space-between;
- background-color: var(--gray-7);
- border-top: 1px solid var(--gray-6);
- border-bottom: 1px solid var(--gray-6);
+ background-color: var(--gray-200);
+ border-top: 1px solid var(--gray-300);
+ border-bottom: 1px solid var(--gray-300);
> div {
display: flex;
align-items: center;
}
> span:last-child {
font-size: 10px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
@@ -225,7 +225,7 @@ const DayItem = styled.div`
display: flex;
flex-direction: column;
align-items: center;
- border: 1px solid var(--gray-7);
+ border: 1px solid var(--gray-200);
`;
const DayItemDate = styled.span<{ isToday: boolean }>`
@@ -242,7 +242,7 @@ const DayLine = styled.div`
margin: var(--gap-2) 24px;
display: flex;
justify-content: space-between;
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
`;
@@ -253,18 +253,18 @@ export const Detail = styled.div`
flex-direction: column;
`;
const Block = styled.div`
- border-top: 4px solid var(--gray-7);
+ border-top: 4px solid var(--gray-200);
padding: var(--gap-3) var(--gap-4);
padding-bottom: 0;
`;
const Date = styled.div`
margin-bottom: var(--gap-3);
font-size: 13px;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
const StudyInfo = styled.div`
font-size: 12px;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
const PlaceInfo = styled.div`
margin-bottom: var(--gap-3);
@@ -273,7 +273,7 @@ const PlaceInfo = styled.div`
const PlaceName = styled.div`
display: flex;
align-items: center;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 14px;
> span:first-child {
font-weight: 600;
@@ -295,6 +295,6 @@ const MemberWrapper = styled.div`
const Member = styled.span`
margin-right: var(--gap-1);
- color: var(--gray-3);
+ color: var(--gray-700);
`;
export default RecordSkeleton;
diff --git a/pageTemplates/record/analysis/RecordAnalysisSummary.tsx b/pageTemplates/record/analysis/RecordAnalysisSummary.tsx
index 24301d89b..dc086735a 100644
--- a/pageTemplates/record/analysis/RecordAnalysisSummary.tsx
+++ b/pageTemplates/record/analysis/RecordAnalysisSummary.tsx
@@ -73,7 +73,7 @@ const SummaryItem = styled.div`
const WeekText = styled.span`
> span:last-child {
margin-left: var(--gap-1);
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
diff --git a/pageTemplates/record/analysis/skeleton/RecordAnalysisSummarySkeleton.tsx b/pageTemplates/record/analysis/skeleton/RecordAnalysisSummarySkeleton.tsx
index d7ece8230..11699935d 100644
--- a/pageTemplates/record/analysis/skeleton/RecordAnalysisSummarySkeleton.tsx
+++ b/pageTemplates/record/analysis/skeleton/RecordAnalysisSummarySkeleton.tsx
@@ -48,7 +48,7 @@ const WeekText = styled.div`
width: 140px;
> span:last-child {
margin-left: var(--gap-1);
- color: var(--gray-4);
+ color: var(--gray-500);
}
`;
diff --git a/pageTemplates/record/detail/RecordDetailStudyBlock.tsx b/pageTemplates/record/detail/RecordDetailStudyBlock.tsx
index 545d1b6ba..7cb1d7489 100644
--- a/pageTemplates/record/detail/RecordDetailStudyBlock.tsx
+++ b/pageTemplates/record/detail/RecordDetailStudyBlock.tsx
@@ -31,7 +31,7 @@ function RecordDetailStudyBlock({ locationStudies }: IRecordDetailStudyBlock) {
{idx2 < 4 && {user.name.slice(-2)}}
{idx2 === 4 && (
-
+
)}
))}
@@ -89,7 +89,7 @@ const MemberWrapper = styled.div`
const Member = styled.span`
margin-right: var(--gap-1);
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 13px;
`;
diff --git a/pageTemplates/record/skeleton/RecordAnalysisSkeleton.tsx b/pageTemplates/record/skeleton/RecordAnalysisSkeleton.tsx
index 4b8f6e1a6..53edbc060 100644
--- a/pageTemplates/record/skeleton/RecordAnalysisSkeleton.tsx
+++ b/pageTemplates/record/skeleton/RecordAnalysisSkeleton.tsx
@@ -43,7 +43,7 @@ const Date = styled.div`
padding: var(--gap-1) var(--gap-4);
font-weight: 600;
font-size: 12px;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
> span {
display: inline-block;
width: 64px;
diff --git a/pageTemplates/record/skeleton/RecordCalendarSkeleton.tsx b/pageTemplates/record/skeleton/RecordCalendarSkeleton.tsx
index bdd8ae0df..b36a38473 100644
--- a/pageTemplates/record/skeleton/RecordCalendarSkeleton.tsx
+++ b/pageTemplates/record/skeleton/RecordCalendarSkeleton.tsx
@@ -59,7 +59,7 @@ const DayLine = styled.div`
margin: 8px 22px;
display: flex;
justify-content: space-between;
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
padding: 2px;
padding-top: var(--gap-3);
diff --git a/pageTemplates/record/skeleton/RecordOverviewSkeleton.tsx b/pageTemplates/record/skeleton/RecordOverviewSkeleton.tsx
index 7df409956..3e2334dd9 100644
--- a/pageTemplates/record/skeleton/RecordOverviewSkeleton.tsx
+++ b/pageTemplates/record/skeleton/RecordOverviewSkeleton.tsx
@@ -75,7 +75,7 @@ const MyRecordItem = styled.div`
`;
const ContentName = styled.span`
margin-right: 6px;
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 13px;
`;
diff --git a/pageTemplates/register/RegisterOverview.tsx b/pageTemplates/register/RegisterOverview.tsx
index 7ceaa483b..16bf51475 100644
--- a/pageTemplates/register/RegisterOverview.tsx
+++ b/pageTemplates/register/RegisterOverview.tsx
@@ -12,12 +12,12 @@ const Layout = styled.div`
margin-bottom: 16px;
> span:last-child {
font-size: 14px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
> span:first-child {
font-size: 16px;
font-weight: 600;
- color: var(--gray-1);
+ color: var(--gray-900);
}
`;
diff --git a/pageTemplates/register/fee/RegisterCost.tsx b/pageTemplates/register/fee/RegisterCost.tsx
index e8f7131b7..8c1612327 100644
--- a/pageTemplates/register/fee/RegisterCost.tsx
+++ b/pageTemplates/register/fee/RegisterCost.tsx
@@ -23,10 +23,10 @@ function RegisterCost({ isSecond }: { isSecond?: boolean }) {
const Layout = styled.div`
display: flex;
flex-direction: column;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
border-radius: var(--rounded-lg);
- border: 1.5px solid var(--gray-6);
+ border: 1.5px solid var(--gray-300);
width: 160px;
height: 140px;
justify-content: space-around;
@@ -42,7 +42,7 @@ const Layout = styled.div`
}
> div:last-child {
padding-top: 14px;
- border-top: 1px solid var(--gray-5);
+ border-top: 1px solid var(--gray-400);
}
`;
diff --git a/pageTemplates/review/ReviewCategory.tsx b/pageTemplates/review/ReviewCategory.tsx
index 3ed7a3711..b6acfde5c 100644
--- a/pageTemplates/review/ReviewCategory.tsx
+++ b/pageTemplates/review/ReviewCategory.tsx
@@ -31,7 +31,7 @@ const Layout = styled.div`
height: 48px;
display: flex;
align-items: center;
- border: 1px solid var(--gray-6);
+ border: 1px solid var(--gray-300);
justify-content: space-between;
padding: 4px 18px;
`;
@@ -40,10 +40,10 @@ const Nav = styled.nav``;
const Button = styled.button<{ isSelected: boolean }>`
padding: 3px 10px;
- border: 1.5px solid var(--gray-6);
+ border: 1.5px solid var(--gray-300);
border-radius: 12px;
margin-right: 12px;
- color: ${(props) => (props.isSelected ? "white" : "var(--gray-2)")};
+ color: ${(props) => (props.isSelected ? "white" : "var(--gray-800)")};
font-size: 13px;
background-color: ${(props) => (props.isSelected ? "var(--color-mint)" : null)};
`;
diff --git a/pageTemplates/review/ReviewGatherConnection.tsx b/pageTemplates/review/ReviewGatherConnection.tsx
index a2d18d407..ff19fc775 100644
--- a/pageTemplates/review/ReviewGatherConnection.tsx
+++ b/pageTemplates/review/ReviewGatherConnection.tsx
@@ -6,7 +6,7 @@ function ReviewGatherConnection() {
const Layout = styled.div`
margin: 14px;
- border: 1.5px solid var(--gray-5);
+ border: 1.5px solid var(--gray-400);
border-radius: var(--rounded-lg);
height: 50px;
`;
diff --git a/pageTemplates/review/ReviewGatherSummary.tsx b/pageTemplates/review/ReviewGatherSummary.tsx
index cb4ab702f..daed87bcc 100644
--- a/pageTemplates/review/ReviewGatherSummary.tsx
+++ b/pageTemplates/review/ReviewGatherSummary.tsx
@@ -83,7 +83,7 @@ const ContentDetail = styled.div`
display: flex;
align-items: center;
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
> span:first-child {
margin-right: var(--gap-1);
}
diff --git a/pageTemplates/review/ReviewItemHeader.tsx b/pageTemplates/review/ReviewItemHeader.tsx
index dc27ea311..39d30e70e 100644
--- a/pageTemplates/review/ReviewItemHeader.tsx
+++ b/pageTemplates/review/ReviewItemHeader.tsx
@@ -54,7 +54,7 @@ const Profile = styled.div`
flex-direction: column;
> span:last-child {
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 10px;
}
}
diff --git a/pageTemplates/store/detail/StoreDetailCover.tsx b/pageTemplates/store/detail/StoreDetailCover.tsx
index 5d9977e74..f155d34a3 100644
--- a/pageTemplates/store/detail/StoreDetailCover.tsx
+++ b/pageTemplates/store/detail/StoreDetailCover.tsx
@@ -41,7 +41,7 @@ const Circle = styled.div`
left: 50%;
transform: translate(-50%, -50%);
z-index: 2;
- border: 2px solid var(--gray-1);
+ border: 2px solid var(--gray-900);
display: flex;
font-size: 14px;
justify-content: center;
diff --git a/pageTemplates/store/detail/StoreDetailDetails.tsx b/pageTemplates/store/detail/StoreDetailDetails.tsx
index 605fa4314..c71c1b09d 100644
--- a/pageTemplates/store/detail/StoreDetailDetails.tsx
+++ b/pageTemplates/store/detail/StoreDetailDetails.tsx
@@ -40,7 +40,7 @@ const DetailItem = styled.div`
color: var(--gray-2);
margin-bottom: var(--gap-1);
> span:first-child {
- color: var(--gray-1);
+ color: var(--gray-900);
display: inline-block;
font-weight: 600;
width: 100px;
diff --git a/pageTemplates/store/detail/StoreDetailNav.tsx b/pageTemplates/store/detail/StoreDetailNav.tsx
index a3bfc84f4..b3798ffff 100644
--- a/pageTemplates/store/detail/StoreDetailNav.tsx
+++ b/pageTemplates/store/detail/StoreDetailNav.tsx
@@ -23,7 +23,7 @@ function StoreDetailNav({
return (
-
+
참여현황
{isCompleted ? (
@@ -37,7 +37,7 @@ function StoreDetailNav({
)}
-
+
{applyUsers?.length === 0 ? (
"참여 인원 없음"
) : (
diff --git a/pageTemplates/store/detail/StoreDetailOverview.tsx b/pageTemplates/store/detail/StoreDetailOverview.tsx
index f6943ea92..078118876 100644
--- a/pageTemplates/store/detail/StoreDetailOverview.tsx
+++ b/pageTemplates/store/detail/StoreDetailOverview.tsx
@@ -35,7 +35,7 @@ const Overview = styled.div`
font-weight: 800;
}
> span:last-child {
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
const Price = styled.div`
@@ -46,9 +46,9 @@ const Price = styled.div`
`;
const ApplyCnt = styled.div`
- color: var(--gray-3);
+ color: var(--gray-700);
> b {
- color: var(--gray-1);
+ color: var(--gray-900);
}
`;
diff --git a/pageTemplates/study/StudyDateBar.tsx b/pageTemplates/study/StudyDateBar.tsx
index eb828f4a3..958291f6a 100644
--- a/pageTemplates/study/StudyDateBar.tsx
+++ b/pageTemplates/study/StudyDateBar.tsx
@@ -28,10 +28,10 @@ function StudyDateBar({ isPrivateStudy, place }: IStudyDateBar) {
}
padding="0 var(--gap-2)"
- borderColor="var(--gray-5)"
+ borderColor="var(--gray-400)"
onClick={() => setIsInviteModal(true)}
>
친구초대
diff --git a/pageTemplates/study/StudyOverView.tsx b/pageTemplates/study/StudyOverView.tsx
index 867c291d3..43eccb514 100644
--- a/pageTemplates/study/StudyOverView.tsx
+++ b/pageTemplates/study/StudyOverView.tsx
@@ -46,10 +46,10 @@ function StudyOverview({
content: ` ${title} 현재 신청 인원: ${participantsNum}명 `,
borderWidth: 1,
disableAnchor: false,
- backgroundColor: "var(--gray-8)",
- borderColor: "var(--gray-3)",
+ backgroundColor: "var(--gray-100)",
+ borderColor: "var(--gray-700)",
anchorSize: new naver.maps.Size(10, 10),
- anchorColor: "var(--gray-8)",
+ anchorColor: "var(--gray-100)",
},
},
];
@@ -129,7 +129,7 @@ const InfoIconText = styled.div`
svg {
width: 14px; /* Adjusted from w-3.5 to actual px */
margin-right: 8px;
- color: var(--gray-3); /* text-gray-3 */
+ color: var(--gray-700); /* text-gray-3 */
}
`;
diff --git a/pageTemplates/study/StudyParticipants.tsx b/pageTemplates/study/StudyParticipants.tsx
index 4b01420ce..8b78829ce 100644
--- a/pageTemplates/study/StudyParticipants.tsx
+++ b/pageTemplates/study/StudyParticipants.tsx
@@ -76,7 +76,7 @@ export default function StudyParticipants({ participants, absences }: IStudyPart
align="center"
justify="center"
h="200"
- color="var(--gray-3)"
+ color="var(--gray-700)"
fontSize="16px"
textAlign="center"
>
diff --git a/pageTemplates/study/VoteSuccessScreen.tsx b/pageTemplates/study/VoteSuccessScreen.tsx
index fa47368ea..940613d64 100644
--- a/pageTemplates/study/VoteSuccessScreen.tsx
+++ b/pageTemplates/study/VoteSuccessScreen.tsx
@@ -50,13 +50,13 @@ const Content = styled.div`
align-items: center;
> span:first-child {
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
font-size: 22px;
}
> span:last-child {
font-size: 17px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
`;
const Button = styled.button`
diff --git a/pageTemplates/study/studySkeleton/StudyCoverSkeleton.tsx b/pageTemplates/study/studySkeleton/StudyCoverSkeleton.tsx
index 73549d9d2..7d7079152 100644
--- a/pageTemplates/study/studySkeleton/StudyCoverSkeleton.tsx
+++ b/pageTemplates/study/studySkeleton/StudyCoverSkeleton.tsx
@@ -32,7 +32,7 @@ const SpaceIcon = styled.div`
height: 70px;
border-radius: 18px;
position: absolute;
- border: 1px solid var(--gray-5);
+ border: 1px solid var(--gray-400);
overflow: hidden;
bottom: -24px;
left: 12px;
diff --git a/pageTemplates/study/studySkeleton/StudyOverviewSkeleton.tsx b/pageTemplates/study/studySkeleton/StudyOverviewSkeleton.tsx
index 20fc1bec0..ea2f90208 100644
--- a/pageTemplates/study/studySkeleton/StudyOverviewSkeleton.tsx
+++ b/pageTemplates/study/studySkeleton/StudyOverviewSkeleton.tsx
@@ -39,7 +39,7 @@ const Layout = styled.div`
`;
const SpaceDetail = styled.div`
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 12px;
font-weight: 600;
margin-top: var(--gap-3);
@@ -56,7 +56,7 @@ const Location = styled.span`
> div:first-child {
width: 240px;
- color: var(--gray-1);
+ color: var(--gray-900);
margin-left: var(--gap-1);
}
`;
diff --git a/pageTemplates/study/studySkeleton/StudyVoteOverview.tsx b/pageTemplates/study/studySkeleton/StudyVoteOverview.tsx
index 2bc6fc47b..504f2f7aa 100644
--- a/pageTemplates/study/studySkeleton/StudyVoteOverview.tsx
+++ b/pageTemplates/study/studySkeleton/StudyVoteOverview.tsx
@@ -51,7 +51,7 @@ const Container = styled.div`
margin: var(--gap-1) 0;
display: flex;
align-items: center;
- color: var(--gray-2);
+ color: var(--gray-800);
> div {
margin-left: var(--gap-1);
display: flex;
diff --git a/pageTemplates/user/userCollection.tsx b/pageTemplates/user/userCollection.tsx
index ed374ebc1..13867e6c4 100644
--- a/pageTemplates/user/userCollection.tsx
+++ b/pageTemplates/user/userCollection.tsx
@@ -83,7 +83,7 @@ const AlphabetQNABtn = styled.button`
display: flex;
align-items: center;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
padding: var(--gap-3) var(--gap-4);
border-radius: var(--rounded-lg);
@@ -100,11 +100,11 @@ const AlphabetQNABtnContents = styled.div`
align-items: flex-start;
> span:first-child {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
> span:last-child {
font-weight: 600;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 14px;
}
`;
diff --git a/pageTemplates/user/userNavigation/UserNavigationBlock.tsx b/pageTemplates/user/userNavigation/UserNavigationBlock.tsx
index 9b8e7ec72..993b842de 100644
--- a/pageTemplates/user/userNavigation/UserNavigationBlock.tsx
+++ b/pageTemplates/user/userNavigation/UserNavigationBlock.tsx
@@ -109,10 +109,10 @@ const Layout = styled.div`
const BlockName = styled.div`
padding: var(--gap-2) var(--gap-4);
font-size: 14px;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
font-weight: 600;
display: flex;
- color: var(--gray-3);
+ color: var(--gray-700);
`;
const NavBlock = styled.div`
diff --git a/pageTemplates/user/userOverview/UserOverView.tsx b/pageTemplates/user/userOverview/UserOverView.tsx
index 117f318be..3f196f6d9 100644
--- a/pageTemplates/user/userOverview/UserOverView.tsx
+++ b/pageTemplates/user/userOverview/UserOverView.tsx
@@ -102,7 +102,7 @@ const IconWrapper = styled.button`
right: 0px;
bottom: 0px;
background-color: white;
- border: 1px solid var(--gray-5);
+ border: 1px solid var(--gray-400);
border-radius: 50%;
`;
diff --git a/pageTemplates/user/userOverview/UserOverviewComment.tsx b/pageTemplates/user/userOverview/UserOverviewComment.tsx
index 2d06572ea..8a515e774 100644
--- a/pageTemplates/user/userOverview/UserOverviewComment.tsx
+++ b/pageTemplates/user/userOverview/UserOverviewComment.tsx
@@ -65,7 +65,7 @@ function UserOverviewComment() {
} = {
"--fa-secondary-color": "white",
"--fa-secondary-opacity": 1,
- border: isFocused ? "1px solid var(--color-mint)" : "1px solid var(--gray-6)",
+ border: isFocused ? "1px solid var(--color-mint)" : "1px solid var(--gray-300)",
borderRadius: "50%",
};
@@ -84,7 +84,7 @@ function UserOverviewComment() {
diff --git a/pageTemplates/user/userProfile.tsx b/pageTemplates/user/userProfile.tsx
index db5eb1900..3ff01a4f9 100644
--- a/pageTemplates/user/userProfile.tsx
+++ b/pageTemplates/user/userProfile.tsx
@@ -89,7 +89,7 @@ const Score = styled.div`
const Detail = styled.ul`
padding: var(--gap-4);
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
font-size: 13px;
`;
diff --git a/pages/_app.tsx b/pages/_app.tsx
index eee37b9bc..e3205af87 100644
--- a/pages/_app.tsx
+++ b/pages/_app.tsx
@@ -7,7 +7,6 @@ import { config } from "@fortawesome/fontawesome-svg-core";
import type { AppProps } from "next/app";
import Head from "next/head";
import { SessionProvider } from "next-auth/react";
-// import "nprogress/nprogress.css";
import { QueryClient, QueryClientProvider } from "react-query";
import { RecoilRoot } from "recoil";
@@ -41,10 +40,6 @@ function App({ Component, pageProps: { session, ...pageProps } }: AppProps) {
- {/* */}
diff --git a/pages/admin/index.tsx b/pages/admin/index.tsx
index 10fd5b36c..6b4a3ee14 100644
--- a/pages/admin/index.tsx
+++ b/pages/admin/index.tsx
@@ -108,7 +108,7 @@ const UserLayout = styled.div`
const Navigation = styled.nav`
display: flex;
flex-direction: column;
- border: 1px solid var(--gray-5);
+ border: 1px solid var(--gray-400);
border-radius: 6px;
overflow: hidden;
padding: 0px 0;
@@ -116,26 +116,26 @@ const Navigation = styled.nav`
const BlockName = styled.div`
padding-bottom: 3px;
- background-color: var(--gray-6);
+ background-color: var(--gray-300);
font-weight: 600;
font-size: 12px;
height: 24px;
display: flex;
align-items: end;
- color: var(--gray-2);
+ color: var(--gray-800);
padding-left: 6px;
`;
const NavBlock = styled.div`
display: flex;
flex-direction: column;
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
padding-left: 6px;
> button {
text-align: start;
height: 42px;
font-size: 13px;
- border-bottom: 1.5px solid var(--gray-6);
+ border-bottom: 1.5px solid var(--gray-300);
}
`;
diff --git a/pages/admin/response/absent.tsx b/pages/admin/response/absent.tsx
index 593fce8bf..aa45a61d5 100644
--- a/pages/admin/response/absent.tsx
+++ b/pages/admin/response/absent.tsx
@@ -71,7 +71,7 @@ const Layout = styled.div``;
const Item = styled.div`
display: flex;
justify-content: space-between;
- border-bottom: 6px solid var(--gray-6);
+ border-bottom: 6px solid var(--gray-300);
padding: var(--gap-4);
`;
@@ -84,11 +84,11 @@ const ItemHeader = styled.header`
> div {
span {
margin-right: var(--gap-2);
- color: var(--gray-1);
+ color: var(--gray-900);
}
> span:last-child {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
}
`;
@@ -107,7 +107,7 @@ const ButtonNav = styled.div`
const Content = styled.div`
padding-top: 8px;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
min-height: 20px;
`;
diff --git a/pages/admin/response/attend.tsx b/pages/admin/response/attend.tsx
index 54a83b971..f3408f2d3 100644
--- a/pages/admin/response/attend.tsx
+++ b/pages/admin/response/attend.tsx
@@ -41,7 +41,7 @@ const Item = styled.div`
display: flex;
flex-direction: column;
- border-bottom: 6px solid var(--gray-6);
+ border-bottom: 6px solid var(--gray-300);
padding: 16px 0;
`;
const Wrapper = styled.div`
@@ -54,18 +54,18 @@ const ItemHeader = styled.header`
flex: 1;
margin-top: var(--gap-2);
- color: var(--gray-2);
+ color: var(--gray-800);
span {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
margin-right: 8px;
}
`;
const Content = styled.div`
padding: var(--gap-2) 0;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
display: flex;
align-items: center;
diff --git a/pages/admin/response/badge.tsx b/pages/admin/response/badge.tsx
index 49bb56ae7..de6bc27c4 100644
--- a/pages/admin/response/badge.tsx
+++ b/pages/admin/response/badge.tsx
@@ -42,19 +42,19 @@ const Item = styled.div`
display: flex;
flex-direction: column;
padding: 12px;
- border-bottom: 1px solid var(--gray-5);
+ border-bottom: 1px solid var(--gray-400);
> div:first-child {
> span:first-child {
margin-right: var(--gap-2);
}
> span:last-child {
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
}
}
> span:nth-child(2) {
font-size: 13px;
- color: var(--gray-2);
+ color: var(--gray-800);
margin-bottom: var(--gap-2);
}
`;
diff --git a/pages/admin/response/groupGather.tsx b/pages/admin/response/groupGather.tsx
index abd127a84..fa2d9c6db 100644
--- a/pages/admin/response/groupGather.tsx
+++ b/pages/admin/response/groupGather.tsx
@@ -71,7 +71,7 @@ const Item = styled.div`
display: flex;
flex-direction: column;
- border-bottom: 6px solid var(--gray-6);
+ border-bottom: 6px solid var(--gray-300);
padding: 16px 0;
`;
const Wrapper = styled.div`
@@ -86,7 +86,7 @@ const ItemHeader = styled.header`
> div {
span {
font-size: 10px;
- color: var(--gray-3);
+ color: var(--gray-700);
margin-left: 8px;
}
}
@@ -100,7 +100,7 @@ const Title = styled.div`
const Content = styled.div`
padding: 8px 0;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
min-height: 48px;
display: flex;
diff --git a/pages/admin/response/promotion.tsx b/pages/admin/response/promotion.tsx
index d9d6ae3c5..e9b3f026c 100644
--- a/pages/admin/response/promotion.tsx
+++ b/pages/admin/response/promotion.tsx
@@ -35,7 +35,7 @@ const Layout = styled.div``;
const Item = styled.div`
display: flex;
padding: 12px;
- border-bottom: 1px solid var(--gray-5);
+ border-bottom: 1px solid var(--gray-400);
> span {
margin-right: 12px;
}
diff --git a/pages/admin/response/register.tsx b/pages/admin/response/register.tsx
index 679548070..7547104ba 100644
--- a/pages/admin/response/register.tsx
+++ b/pages/admin/response/register.tsx
@@ -89,7 +89,7 @@ const Main = styled.main`
flex-direction: column;
margin-top: 14px;
> div:first-child {
- border-top: 1px solid var(--gray-5);
+ border-top: 1px solid var(--gray-400);
}
`;
@@ -100,7 +100,7 @@ const Item = styled.div`
justify-content: space-between;
align-items: center;
- border-bottom: 1px solid var(--gray-5);
+ border-bottom: 1px solid var(--gray-400);
`;
const Summary = styled.div`
@@ -118,14 +118,14 @@ const Summary = styled.div`
}
> span:last-child {
font-size: 11px;
- color: var(--gray-3);
+ color: var(--gray-700);
}
}
> span {
margin-right: 12px;
font-size: 12px;
font-weight: 600;
- color: var(--gray-2);
+ color: var(--gray-800);
}
`;
diff --git a/pages/admin/response/rest.tsx b/pages/admin/response/rest.tsx
index 2064c493c..db23accb5 100644
--- a/pages/admin/response/rest.tsx
+++ b/pages/admin/response/rest.tsx
@@ -80,10 +80,10 @@ const Item = styled.div`
display: flex;
flex-direction: column;
- border-bottom: 8px solid var(--gray-7);
+ border-bottom: 8px solid var(--gray-200);
padding: var(--gap-3) var(--gap-4);
font-size: 13px;
- color: var(--gray-2);
+ color: var(--gray-800);
> div {
> span:first-child {
font-weight: 600;
@@ -102,7 +102,7 @@ const Title = styled.div`
}
> span:last-child {
font-size: 11px;
- color: var(--gray-2);
+ color: var(--gray-800);
}
`;
diff --git a/pages/admin/response/secede.tsx b/pages/admin/response/secede.tsx
index cb1cfea7f..de3b9be39 100644
--- a/pages/admin/response/secede.tsx
+++ b/pages/admin/response/secede.tsx
@@ -63,7 +63,7 @@ const Item = styled.div`
display: flex;
flex-direction: column;
- border-bottom: 6px solid var(--gray-6);
+ border-bottom: 6px solid var(--gray-300);
padding: 16px 0;
`;
const Wrapper = styled.div`
@@ -78,7 +78,7 @@ const ItemHeader = styled.header`
> div {
span {
font-size: 10px;
- color: var(--gray-3);
+ color: var(--gray-700);
margin-left: 8px;
}
}
@@ -92,7 +92,7 @@ const Title = styled.div`
const Content = styled.div`
padding: 8px 0;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
min-height: 48px;
display: flex;
diff --git a/pages/admin/response/suggest.tsx b/pages/admin/response/suggest.tsx
index 32d4cdabb..b0e374534 100644
--- a/pages/admin/response/suggest.tsx
+++ b/pages/admin/response/suggest.tsx
@@ -72,7 +72,7 @@ const Item = styled.div`
display: flex;
flex-direction: column;
- border-bottom: 6px solid var(--gray-6);
+ border-bottom: 6px solid var(--gray-300);
padding: 16px 0;
`;
const Wrapper = styled.div`
@@ -87,7 +87,7 @@ const ItemHeader = styled.header`
> div {
span {
font-size: 10px;
- color: var(--gray-3);
+ color: var(--gray-700);
margin-left: 8px;
}
}
@@ -101,7 +101,7 @@ const Title = styled.div`
const Content = styled.div`
padding: 8px 0;
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
min-height: 48px;
display: flex;
diff --git a/pages/admin/system/studySpace.tsx b/pages/admin/system/studySpace.tsx
index 6c6414cf6..e5373e563 100644
--- a/pages/admin/system/studySpace.tsx
+++ b/pages/admin/system/studySpace.tsx
@@ -216,7 +216,7 @@ const AddForm = styled.form`
width: 80px;
}
input {
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
}
}
`;
@@ -224,7 +224,7 @@ const AddForm = styled.form`
const ImageContainer = styled.div`
width: 77px;
height: 77px;
- border: 1px solid var(--gray-5);
+ border: 1px solid var(--gray-400);
border-radius: 8px;
display: flex;
justify-content: center;
@@ -233,7 +233,7 @@ const ImageContainer = styled.div`
`;
const SpaceInfo = styled.div`
- color: var(--gray-2);
+ color: var(--gray-800);
margin-left: 12px;
display: flex;
flex-direction: column;
@@ -252,11 +252,11 @@ const Status = styled.div`
const Branch = styled.input`
font-weight: 800;
font-size: 16px;
- color: var(--gray-1);
+ color: var(--gray-900);
`;
const Info = styled.input`
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
`;
diff --git a/pages/admin/system/studyStatus.tsx b/pages/admin/system/studyStatus.tsx
index 550f167f2..9ad693830 100644
--- a/pages/admin/system/studyStatus.tsx
+++ b/pages/admin/system/studyStatus.tsx
@@ -37,8 +37,6 @@ function AdminStudyStatus() {
const { data: SUWAN } = useStudyVoteQuery(dayjsToStr(date), "수원");
const { data: YANG } = useStudyVoteQuery(dayjsToStr(date), "양천");
-
-
const handleStatus = (type: StudyStatus) => {};
return (
@@ -48,13 +46,13 @@ function AdminStudyStatus() {
setDate((old) => old.subtract(1, "day"))}
/>
{date.format("M월 DD일")}
setDate((old) => old.add(1, "day"))}
/>
diff --git a/pages/admin/system/userInfo.tsx b/pages/admin/system/userInfo.tsx
index 09f51a708..8c7b314f6 100644
--- a/pages/admin/system/userInfo.tsx
+++ b/pages/admin/system/userInfo.tsx
@@ -80,7 +80,7 @@ const Search = styled.div`
}
`;
const SearchInput = styled.input`
- background-color: var(--gray-6);
+ background-color: var(--gray-300);
margin-right: 6px;
`;
const Layout = styled.div`
@@ -95,7 +95,7 @@ const SectionHeader = styled.header`
justify-content: center;
font-size: 16px;
font-weight: 600;
- background-color: var(--gray-6);
+ background-color: var(--gray-300);
`;
const Section = styled.section`
diff --git a/pages/checkingServer.tsx b/pages/checkingServer.tsx
index 582092a83..818ecaea0 100644
--- a/pages/checkingServer.tsx
+++ b/pages/checkingServer.tsx
@@ -30,7 +30,7 @@ const Layout = styled.div`
left: 50%;
transform: translate(-50%, -50%);
width: 100%;
- background-color: var(--gray-6);
+ background-color: var(--gray-300);
`;
const Title = styled.div`
diff --git a/pages/eventCalendar.tsx b/pages/eventCalendar.tsx
index 5c6b4cba2..e60d2ab6f 100644
--- a/pages/eventCalendar.tsx
+++ b/pages/eventCalendar.tsx
@@ -175,7 +175,7 @@ const WeekTitleHeader = styled.div`
const DayOfWeek = styled.div`
display: flex;
justify-content: space-between;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
padding: var(--gap-1) 0;
font-size: 12px;
> div {
@@ -206,7 +206,7 @@ const DateBlock = styled.div<{ isToday: boolean }>`
text-align: center;
flex: 1;
border-top: var(--border);
- background-color: ${(props) => (props.isToday ? "var(--gray-7)" : null)};
+ background-color: ${(props) => (props.isToday ? "var(--gray-200)" : null)};
`;
const Date = styled.div<{ day: "sun" | "sat"; isToday: boolean }>`
@@ -251,7 +251,7 @@ const TodayCircle = styled.div`
height: 18px;
border-radius: 50%;
transform: translate(-50%, -50%);
- background-color: var(--gray-1);
+ background-color: var(--gray-900);
color: white;
`;
diff --git a/pages/gather/[id]/index.tsx b/pages/gather/[id]/index.tsx
index b19cf8f48..0c0a04e59 100644
--- a/pages/gather/[id]/index.tsx
+++ b/pages/gather/[id]/index.tsx
@@ -67,7 +67,7 @@ function GatherDetail() {
const Layout = styled.div`
display: flex;
flex-direction: column;
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
padding-bottom: 100px;
`;
diff --git a/pages/gather/writing/category.tsx b/pages/gather/writing/category.tsx
index 6e8d71b3a..4b3799d86 100644
--- a/pages/gather/writing/category.tsx
+++ b/pages/gather/writing/category.tsx
@@ -92,7 +92,7 @@ const Info = styled.div`
font-weight: 600;
}
> span:last-child {
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
}
`;
diff --git a/pages/gather/writing/location.tsx b/pages/gather/writing/location.tsx
index 52376dbb3..e1380dc79 100644
--- a/pages/gather/writing/location.tsx
+++ b/pages/gather/writing/location.tsx
@@ -68,7 +68,7 @@ const LocationDetailInput = styled.input`
padding-left: var(--gap-1);
outline: none;
font-size: 13px;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
const Location = styled.div`
diff --git a/pages/group/[id]/index.tsx b/pages/group/[id]/index.tsx
index 7af6b291a..537c695a2 100644
--- a/pages/group/[id]/index.tsx
+++ b/pages/group/[id]/index.tsx
@@ -91,7 +91,7 @@ const Layout = styled.div`
display: flex;
flex-direction: column;
padding-bottom: 100px;
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
`;
export default GroupDetail;
diff --git a/pages/group/[id]/participate.tsx b/pages/group/[id]/participate.tsx
index e0b6b303f..fc875bec7 100644
--- a/pages/group/[id]/participate.tsx
+++ b/pages/group/[id]/participate.tsx
@@ -83,7 +83,7 @@ const AnswerText = styled.textarea`
padding: var(--gap-2);
:focus {
- outline-color: var(--gray-1);
+ outline-color: var(--gray-900);
}
`;
diff --git a/pages/group/index.tsx b/pages/group/index.tsx
index 3a2c81e4b..f7fb90297 100644
--- a/pages/group/index.tsx
+++ b/pages/group/index.tsx
@@ -189,7 +189,7 @@ function Index() {
const Layout = styled.div`
min-height: 100vh;
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
padding-bottom: 20px;
`;
diff --git a/pages/group/writing/category/main.tsx b/pages/group/writing/category/main.tsx
index 460a31277..d3aa247cf 100644
--- a/pages/group/writing/category/main.tsx
+++ b/pages/group/writing/category/main.tsx
@@ -95,7 +95,7 @@ const Info = styled.div`
font-weight: 600;
}
> span:last-child {
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
}
`;
diff --git a/pages/group/writing/category/sub.tsx b/pages/group/writing/category/sub.tsx
index f52c0593e..93cfe0546 100644
--- a/pages/group/writing/category/sub.tsx
+++ b/pages/group/writing/category/sub.tsx
@@ -99,7 +99,7 @@ const Info = styled.div`
font-weight: 600;
}
> span:last-child {
- color: var(--gray-3);
+ color: var(--gray-700);
font-size: 12px;
}
`;
diff --git a/pages/group/writing/condition.tsx b/pages/group/writing/condition.tsx
index 52aa4e1d0..4af1a9c10 100644
--- a/pages/group/writing/condition.tsx
+++ b/pages/group/writing/condition.tsx
@@ -278,7 +278,7 @@ const ChallengeText = styled.textarea`
width: 100%;
padding: 4px 8px;
:focus {
- outline-color: var(--gray-1);
+ outline-color: var(--gray-900);
}
`;
@@ -292,7 +292,7 @@ const Fee = styled.div`
border-radius: var(--rounded);
border: var(--border);
:focus {
- outline-color: var(--gray-1);
+ outline-color: var(--gray-900);
}
}
}
diff --git a/pages/group/writing/content.tsx b/pages/group/writing/content.tsx
index e5e3d495d..6eda03931 100644
--- a/pages/group/writing/content.tsx
+++ b/pages/group/writing/content.tsx
@@ -125,7 +125,7 @@ const RuleItem = styled.li`
padding: 4px 8px;
:focus {
- outline-color: var(--gray-1);
+ outline-color: var(--gray-900);
}
}
`;
diff --git a/pages/group/writing/guide.tsx b/pages/group/writing/guide.tsx
index 933cdc409..ca4c00faf 100644
--- a/pages/group/writing/guide.tsx
+++ b/pages/group/writing/guide.tsx
@@ -76,7 +76,7 @@ const TitleInput = styled.input`
font-size: 15px;
font-weight: 600;
::placeholder {
- color: var(--gray-4);
+ color: var(--gray-500);
}
`;
diff --git a/pages/group/writing/hashTag.tsx b/pages/group/writing/hashTag.tsx
index 74bd4d317..5876a3323 100644
--- a/pages/group/writing/hashTag.tsx
+++ b/pages/group/writing/hashTag.tsx
@@ -68,7 +68,7 @@ const Input = styled.input`
border: var(--border);
border-radius: var(--rounded);
:focus {
- outline-color: var(--gray-1);
+ outline-color: var(--gray-900);
}
`;
diff --git a/pages/home/index.tsx b/pages/home/index.tsx
index 683cc3e0a..10782349d 100644
--- a/pages/home/index.tsx
+++ b/pages/home/index.tsx
@@ -1,15 +1,16 @@
+import { Box } from "@chakra-ui/react";
import { useRouter, useSearchParams } from "next/navigation";
import { useSession } from "next-auth/react";
import { useEffect } from "react";
import Slide from "../../components/layouts/PageSlide";
import { HAS_STUDY_TODAY } from "../../constants/keys/localStorage";
-import EventBanner from "../../pageTemplates/home/EventBanner";
import HomeCategoryNav from "../../pageTemplates/home/HomeCategoryNav";
import HomeGatherSection from "../../pageTemplates/home/HomeGatherSection";
import HomeHeader from "../../pageTemplates/home/homeHeader/HomeHeader";
import HomeInitialSetting from "../../pageTemplates/home/HomeInitialSetting";
import HomeLocationBar from "../../pageTemplates/home/HomeLocationBar";
+import HomeMainBanner from "../../pageTemplates/home/HomeMainBanner";
import HomeReviewSection from "../../pageTemplates/home/HomeReviewSection";
import HomeStudySection from "../../pageTemplates/home/HomeStudySection";
import HomeWinRecordSection from "../../pageTemplates/home/HomeWinRecordSection";
@@ -42,17 +43,17 @@ function Home() {
<>
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
>
);
diff --git a/pages/login.tsx b/pages/login.tsx
index 696e39c0f..05063accf 100644
--- a/pages/login.tsx
+++ b/pages/login.tsx
@@ -121,7 +121,7 @@ const Login: NextPage<{
fontSize="16px"
width="100%"
rounded="md"
- background="var(--gray-7)"
+ background="var(--gray-200)"
onClick={() => setIsModal(true)}
mb="16px"
justifyContent="space-between"
diff --git a/pages/member/[location]/[category].tsx b/pages/member/[location]/[category].tsx
index 3252abaa1..af486b69d 100644
--- a/pages/member/[location]/[category].tsx
+++ b/pages/member/[location]/[category].tsx
@@ -140,10 +140,10 @@ const Detail = styled.div`
width: 50px;
font-size: 12px;
font-weight: 600;
- color: var(--gray-3);
+ color: var(--gray-700);
}
> span:last-child {
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 13px;
}
`;
@@ -151,7 +151,7 @@ const Detail = styled.div`
const Birthday = styled.span`
margin-left: var(--gap-1);
font-weight: 600;
- color: var(--gray-1);
+ color: var(--gray-900);
`;
export default FriendCategory;
diff --git a/pages/member/[location]/detail.tsx b/pages/member/[location]/detail.tsx
index 00fae1be6..b9ef34de8 100644
--- a/pages/member/[location]/detail.tsx
+++ b/pages/member/[location]/detail.tsx
@@ -117,7 +117,7 @@ const Info = styled.div`
justify-content: space-between;
> div:last-child {
font-size: 12px;
- color: var(--gray-3);
+ color: var(--gray-700);
display: flex;
flex-direction: column;
}
diff --git a/pages/member/[location]/index.tsx b/pages/member/[location]/index.tsx
index dd5af330a..1b129263b 100644
--- a/pages/member/[location]/index.tsx
+++ b/pages/member/[location]/index.tsx
@@ -153,6 +153,6 @@ const HrDiv = styled.div`
margin: 0 !important;
padding: 0 !important;
height: 1px;
- background-color: var(--gray-6);
+ background-color: var(--gray-300);
`;
export default Member;
diff --git a/pages/noMember.tsx b/pages/noMember.tsx
index d16b831c2..7d7c38526 100644
--- a/pages/noMember.tsx
+++ b/pages/noMember.tsx
@@ -55,7 +55,7 @@ const Content = styled.div`
justify-content: space-between;
> span:first-child {
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
font-size: 22px;
}
@@ -63,7 +63,7 @@ const Content = styled.div`
display: inline-block;
margin-top: 14px;
font-size: 17px;
- color: var(--gray-2);
+ color: var(--gray-800);
font-weight: 500;
}
`;
diff --git a/pages/notice/index.tsx b/pages/notice/index.tsx
index 7f4dc6d67..42b276f1e 100644
--- a/pages/notice/index.tsx
+++ b/pages/notice/index.tsx
@@ -47,7 +47,7 @@ const Layout = styled.div`
`;
const Container = styled.div`
- color: var(--gray-1);
+ color: var(--gray-900);
display: flex;
flex-direction: column;
margin-top: var(--gap-2);
diff --git a/pages/point/index.tsx b/pages/point/index.tsx
index 857a59852..63bdcb2c4 100644
--- a/pages/point/index.tsx
+++ b/pages/point/index.tsx
@@ -34,7 +34,7 @@ function Point() {
}
const Layout = styled.div`
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
margin: 0 var(--gap-4);
margin-top: var(--gap-3);
`;
diff --git a/pages/point/scoreLog.tsx b/pages/point/scoreLog.tsx
index 5ef16dfba..c522daa55 100644
--- a/pages/point/scoreLog.tsx
+++ b/pages/point/scoreLog.tsx
@@ -70,7 +70,7 @@ const LogHeader = styled.header`
text-align: center;
}
> span:first-child {
- color: var(--gray-1);
+ color: var(--gray-900);
}
> span:last-child {
padding-left: var(--gap-1);
@@ -87,7 +87,7 @@ const MyPoint = styled.div`
height: 40px;
border-radius: var(--rounded-lg);
border: var(--border-mint);
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 14px;
> span:first-child {
flex: 1;
@@ -96,7 +96,7 @@ const MyPoint = styled.div`
flex: 1;
text-align: end;
font-size: 15px;
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 700;
}
`;
@@ -107,7 +107,7 @@ const Container = styled.div`
flex-direction: column;
`;
const Item = styled.div`
- color: var(--gray-1);
+ color: var(--gray-900);
height: 40px;
display: flex;
justify-content: space-between;
@@ -117,7 +117,7 @@ const Item = styled.div`
`;
const Date = styled.span`
- color: var(--gray-3);
+ color: var(--gray-700);
margin-right: var(--gap-4);
width: 54px;
text-align: center;
@@ -130,6 +130,6 @@ const Content = styled.span`
const Point = styled.span<{ isMinus?: boolean }>`
width: 64px;
text-align: center;
- color: ${(props) => (props.isMinus ? "var(--color-red)" : "var(--gray-1)")};
+ color: ${(props) => (props.isMinus ? "var(--color-red)" : "var(--gray-900)")};
`;
export default ScoreLog;
diff --git a/pages/profile/[uid].tsx b/pages/profile/[uid].tsx
index 10110b53a..13bc5bae9 100644
--- a/pages/profile/[uid].tsx
+++ b/pages/profile/[uid].tsx
@@ -65,7 +65,7 @@ const Container = styled.div`
const Layout = styled.div``;
const HrDiv = styled.div`
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
height: 10px;
`;
export default ProfilePage;
diff --git a/pages/register/birthday.tsx b/pages/register/birthday.tsx
index 95f7eed0b..a68e0b3d2 100644
--- a/pages/register/birthday.tsx
+++ b/pages/register/birthday.tsx
@@ -112,7 +112,7 @@ const StyledDatePicker = styled(DatePicker)`
text-align: center;
font-size: 13px;
font-weight: 600;
- color: var(--gray-2);
+ color: var(--gray-800);
outline: none;
`;
diff --git a/pages/register/comment.tsx b/pages/register/comment.tsx
index 6ef45c656..59354e3a8 100644
--- a/pages/register/comment.tsx
+++ b/pages/register/comment.tsx
@@ -99,13 +99,13 @@ function Comment() {
onChange={(e) => setValue(e.target?.value)}
value={value}
h="48px"
- color="var(--gray-4)"
+ color="var(--gray-500)"
focusBorderColor="#00c2b3"
textAlign="center"
fontSize="14px"
borderWidth="1.5px"
_placeholder={{
- color: "var(--gray-4)",
+ color: "var(--gray-500)",
}}
/>
@@ -134,8 +134,8 @@ const Item = styled.div<{ $isSelected: boolean }>`
align-items: center;
height: 48px;
margin-bottom: var(--gap-3);
- color: ${(props) => (props.$isSelected ? "var(--gray-1)" : "var(--gray-4)")};
- border: ${(props) => (props.$isSelected ? "var(--border-thick)" : "1.5px solid var(--gray-6)")};
+ color: ${(props) => (props.$isSelected ? "var(--gray-900)" : "var(--gray-500)")};
+ border: ${(props) => (props.$isSelected ? "var(--border-thick)" : "1.5px solid var(--gray-300)")};
`;
export default Comment;
diff --git a/pages/register/fee.tsx b/pages/register/fee.tsx
index 7d33b816a..3699fa1f8 100644
--- a/pages/register/fee.tsx
+++ b/pages/register/fee.tsx
@@ -69,7 +69,7 @@ function Fee() {
const Cost = styled.div`
margin: var(--gap-5) 0;
> div:first-child {
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 13px;
margin-bottom: var(--gap-3);
}
@@ -84,12 +84,12 @@ const Account = styled.div`
margin-bottom: var(--gap-1);
font-size: 14px;
font-weight: 600;
- color: var(--gray-1);
+ color: var(--gray-900);
`;
const Message = styled.div`
font-size: 13px;
- color: var(--gray-3);
+ color: var(--gray-700);
margin-bottom: 40px;
`;
@@ -98,7 +98,7 @@ const Telephone = styled.div`
font-size: 14px;
display: inline-block;
font-weight: 600;
- color: var(--gray-1);
+ color: var(--gray-900);
margin-bottom: var(--gap-1);
}
`;
diff --git a/pages/register/gender.tsx b/pages/register/gender.tsx
index 929b71a23..5ba6ac301 100644
--- a/pages/register/gender.tsx
+++ b/pages/register/gender.tsx
@@ -58,7 +58,7 @@ const ButtonNav = styled.nav`
`;
const Button = styled.button<{ $isSelected: boolean }>`
- color: ${(props) => (props.$isSelected ? "var(--gray-1)" : "var(--gray-4)")};
+ color: ${(props) => (props.$isSelected ? "var(--gray-900)" : "var(--gray-500)")};
border-radius: var(--rounded-lg);
flex: 0.49;
height: 48px;
diff --git a/pages/register/interest.tsx b/pages/register/interest.tsx
index 965a6aa42..c1d8480ed 100644
--- a/pages/register/interest.tsx
+++ b/pages/register/interest.tsx
@@ -80,7 +80,7 @@ const Container = styled.div`
margin-bottom: var(--gap-5);
> span {
display: inline-block;
- color: var(--gray-1);
+ color: var(--gray-900);
font-size: 14px;
margin-bottom: var(--gap-2);
@@ -92,10 +92,10 @@ const Example = styled.div`
margin-top: var(--gap-4);
> div {
- color: var(--gray-3);
+ color: var(--gray-700);
padding: var(--gap-1);
- background-color: var(--gray-7);
- border: 1px solid var(--gray-6);
+ background-color: var(--gray-200);
+ border: 1px solid var(--gray-300);
border-radius: var(--rounded-lg);
display: flex;
flex-wrap: wrap;
@@ -114,14 +114,14 @@ const Item = styled.div`
// const Input = styled.input`
// padding: var(--gap-3) var(--gap-2);
-// border: 1px solid var(--gray-6);
-// background-color: var(--gray-7);
+// border: 1px solid var(--gray-300);
+// background-color: var(--gray-200);
// border-radius: var(--rounded-lg);
// ::placeholder {
-// color: var(--gray-4);
+// color: var(--gray-500);
// }
// :focus {
-// outline-color: var(--gray-1);
+// outline-color: var(--gray-900);
// }
// `;
diff --git a/pages/register/location.tsx b/pages/register/location.tsx
index d8bf8d3ef..a3149dbb4 100644
--- a/pages/register/location.tsx
+++ b/pages/register/location.tsx
@@ -131,7 +131,7 @@ const Message = styled.div`
bottom: -20px;
font-size: 10px;
left: 50%;
- color: var(--gray-3);
+ color: var(--gray-700);
transform: translate(-50%, 0);
`;
diff --git a/pages/register/major.tsx b/pages/register/major.tsx
index 05b749f6c..e704e49d4 100644
--- a/pages/register/major.tsx
+++ b/pages/register/major.tsx
@@ -113,7 +113,7 @@ const Content = styled.button<{ $isSelected: boolean }>`
padding: var(--gap-1) var(--gap-2);
font-size: 12px;
border-radius: 100px;
- border: 1px solid var(--gray-5);
+ border: 1px solid var(--gray-400);
margin-right: var(--gap-2);
margin-bottom: var(--gap-2);
background-color: ${(props) => props.$isSelected && "var(--color-mint)"};
diff --git a/pages/register/mbti.tsx b/pages/register/mbti.tsx
index cf8ec29e6..7a7795d2e 100644
--- a/pages/register/mbti.tsx
+++ b/pages/register/mbti.tsx
@@ -60,7 +60,7 @@ const ButtonNav = styled.nav`
`;
const Button = styled.button<{ $isSelected: boolean }>`
- color: ${(props) => (props.$isSelected ? "var(--gray-1)" : "var(--gray-4)")};
+ color: ${(props) => (props.$isSelected ? "var(--gray-900)" : "var(--gray-500)")};
border-radius: var(--rounded-lg);
flex: 0.49;
height: 48px;
diff --git a/pages/register/success.tsx b/pages/register/success.tsx
index e7411eea5..080587780 100644
--- a/pages/register/success.tsx
+++ b/pages/register/success.tsx
@@ -43,7 +43,7 @@ function ApplySuccess() {
const Layout = styled.div`
min-height: 100vh;
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
display: flex;
flex-direction: column;
`;
@@ -66,14 +66,14 @@ const Content = styled.div`
align-items: center;
margin-top: var(--gap-4);
> span:first-child {
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
font-size: 22px;
}
> span:last-child {
margin-top: var(--gap-3);
font-size: 17px;
- color: var(--gray-2);
+ color: var(--gray-800);
}
`;
diff --git a/pages/review/index.tsx b/pages/review/index.tsx
index e743db6fd..9145ea2a3 100644
--- a/pages/review/index.tsx
+++ b/pages/review/index.tsx
@@ -210,7 +210,7 @@ function Review() {
m="var(--gap-4)"
colorScheme="gray"
boxShadow="var(--shadow)"
- color="var(--gray-3)"
+ color="var(--gray-700)"
>
더 보기
diff --git a/pages/statistics/index.tsx b/pages/statistics/index.tsx
index 17de833cc..93725e4dc 100644
--- a/pages/statistics/index.tsx
+++ b/pages/statistics/index.tsx
@@ -114,7 +114,7 @@ function Ranking() {
const Layout = styled.div`
height: calc(100vh - 96px);
overflow-y: auto;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
display: flex;
flex-direction: column;
`;
diff --git a/pages/store/index.tsx b/pages/store/index.tsx
index 1215300e6..9a76b8f97 100644
--- a/pages/store/index.tsx
+++ b/pages/store/index.tsx
@@ -201,7 +201,7 @@ const Trophy = styled.div`
`;
const ApplyCnt = styled.div`
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 16px;
`;
@@ -238,7 +238,7 @@ const Circle = styled.div`
left: 50%;
transform: translate(-50%, -50%);
z-index: 10;
- border: 2px solid var(--gray-1);
+ border: 2px solid var(--gray-900);
display: flex;
font-size: 14px;
justify-content: center;
@@ -254,7 +254,7 @@ const CompletedRapple = styled.div`
left: 0;
width: 100%;
height: 100%;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
opacity: 0.5;
`;
diff --git a/pages/user/alphabet.tsx b/pages/user/alphabet.tsx
index 2bb854002..934be80d9 100644
--- a/pages/user/alphabet.tsx
+++ b/pages/user/alphabet.tsx
@@ -274,7 +274,7 @@ const UserAlphabets = styled.div`
const AlphabetCnt = styled.span<{ hasAlphabet: boolean }>`
font-size: 12px;
- color: ${(props) => (props.hasAlphabet ? "var(--gray-2)" : "var(--gray-3)")};
+ color: ${(props) => (props.hasAlphabet ? "var(--gray-800)" : "var(--gray-700)")};
`;
export default CollectionAlphabet;
diff --git a/pages/user/deposit.tsx b/pages/user/deposit.tsx
index 5cbe5cb85..cbeafcf94 100644
--- a/pages/user/deposit.tsx
+++ b/pages/user/deposit.tsx
@@ -63,7 +63,7 @@ const MyPoint = styled.div`
height: 40px;
border-radius: var(--rounded-lg);
border: var(--border-mint);
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 14px;
margin-bottom: 20px;
> span:first-child {
@@ -73,7 +73,7 @@ const MyPoint = styled.div`
flex: 1;
text-align: end;
font-size: 15px;
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 700;
}
`;
diff --git a/pages/user/info/scoreSystem.tsx b/pages/user/info/scoreSystem.tsx
index c00bc1472..7d8ff1cff 100644
--- a/pages/user/info/scoreSystem.tsx
+++ b/pages/user/info/scoreSystem.tsx
@@ -124,7 +124,7 @@ const Title = styled.div`
const Ul = styled.ul`
padding-left: 18px;
line-height: 1.8;
- color: var(--gray-2);
+ color: var(--gray-800);
`;
const Li = styled.li`
diff --git a/pages/user/like.tsx b/pages/user/like.tsx
index d6e2463d4..7f92d5e00 100644
--- a/pages/user/like.tsx
+++ b/pages/user/like.tsx
@@ -55,11 +55,11 @@ const ItemContainer = styled.div`
flex-direction: column;
padding: var(--gap-3) var(--gap-4);
padding-bottom: var(--gap-2);
- border-bottom: 1px solid var(--gray-7);
+ border-bottom: 1px solid var(--gray-200);
font-size: 13px;
> span:first-child {
font-size: 12px;
- color: var(--gray-2);
+ color: var(--gray-800);
margin-bottom: var(--gap-2);
}
`;
diff --git a/pages/user/point.tsx b/pages/user/point.tsx
index 8c96c252b..5300887ad 100644
--- a/pages/user/point.tsx
+++ b/pages/user/point.tsx
@@ -63,7 +63,7 @@ const MyPoint = styled.div`
height: 40px;
border-radius: var(--rounded-lg);
border: var(--border-mint);
- color: var(--gray-2);
+ color: var(--gray-800);
font-size: 14px;
margin-bottom: 20px;
> span:first-child {
@@ -73,7 +73,7 @@ const MyPoint = styled.div`
flex: 1;
text-align: end;
font-size: 15px;
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 700;
}
`;
diff --git a/pages/vote.tsx b/pages/vote.tsx
index 5029fcb66..fe6078b4e 100644
--- a/pages/vote.tsx
+++ b/pages/vote.tsx
@@ -333,10 +333,10 @@ const getInfoWindow = (par: IParticipation) => {
content: `${par.place.brand} 현재 신청 인원: ${par.attendences.length}명 `,
borderWidth: 1,
disableAnchor: false,
- backgroundColor: "var(--gray-8)",
- borderColor: "var(--gray-3)",
+ backgroundColor: "var(--gray-100)",
+ borderColor: "var(--gray-700)",
anchorSize: new naver.maps.Size(10, 10),
- anchorColor: "var(--gray-8)",
+ anchorColor: "var(--gray-100)",
};
};
diff --git a/pages/winRecord.tsx b/pages/winRecord.tsx
index c3279bd39..9ddfec937 100644
--- a/pages/winRecord.tsx
+++ b/pages/winRecord.tsx
@@ -56,7 +56,7 @@ const LogHeader = styled.header`
text-align: center;
}
> span:first-child {
- color: var(--gray-1);
+ color: var(--gray-900);
}
> span:last-child {
padding-left: var(--gap-1);
@@ -70,7 +70,7 @@ const Container = styled.div`
`;
const Item = styled.div`
- color: var(--gray-1);
+ color: var(--gray-900);
height: 40px;
display: flex;
justify-content: space-between;
diff --git a/public/temp.png b/public/temp.png
new file mode 100644
index 000000000..ee17ddd5b
Binary files /dev/null and b/public/temp.png differ
diff --git a/styles/globals.css b/styles/globals.css
index 9bee63840..4a5e4cb53 100644
--- a/styles/globals.css
+++ b/styles/globals.css
@@ -17,13 +17,13 @@
}
html {
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
}
body {
font-family: apple;
font-size: 14px;
- background-color: var(--gray-8);
- color: var(--gray-1);
+ background-color: var(--gray-100);
+ color: var(--gray-900);
}
a {
@@ -41,12 +41,12 @@ a {
#__next {
min-width: 340px;
- max-width: 390px;
+ max-width: 400px;
padding-top: 56px !important;
padding-bottom: 40px;
min-height: calc(100dvh - 96px);
margin: 0 auto;
- background-color: var(--gray-8);
+ background-color: var(--gray-100);
overflow: hidden;
}
diff --git a/styles/layout/input.ts b/styles/layout/input.ts
index 5c548bed7..b0366cf3e 100644
--- a/styles/layout/input.ts
+++ b/styles/layout/input.ts
@@ -2,7 +2,7 @@ import styled from "styled-components";
export const Textarea = styled.textarea`
flex: 1;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
border-radius: var(--rounded-lg);
padding: var(--gap-3);
&:focus {
@@ -13,7 +13,7 @@ export const Textarea = styled.textarea`
export const InputSm = styled.input`
flex: 1;
width: 100%;
- background-color: var(--gray-7);
+ background-color: var(--gray-200);
border-radius: var(--rounded-lg);
padding: var(--gap-3);
text-align: start;
@@ -29,9 +29,9 @@ export const InputLg = styled.input`
border-radius: var(--rounded-lg);
padding: var(--gap-3);
&:focus {
- outline-color: var(--gray-1);
+ outline-color: var(--gray-900);
}
::placeholder {
- color: var(--gray-4);
+ color: var(--gray-500);
}
`;
diff --git a/styles/layout/modal.ts b/styles/layout/modal.ts
index fd9beb7e7..4dc6dc0b3 100644
--- a/styles/layout/modal.ts
+++ b/styles/layout/modal.ts
@@ -12,7 +12,7 @@ export const FullScreen = styled.div<{ opacity?: number }>`
`;
export const ModalHeaderLine = styled.header`
- color: var(--gray-1);
+ color: var(--gray-900);
font-weight: 600;
font-size: 16px;
border-bottom: var(--border);
@@ -41,7 +41,7 @@ export const ModalFooterNav = styled.footer`
}
> button:first-child {
font-weight: 600;
- color: var(--gray-2);
+ color: var(--gray-800);
padding-right: var(--gap-2);
}
> button:nth-child(2) {
@@ -61,11 +61,11 @@ export const ModalHeaderCenter = styled.header`
> span:first-child {
font-size: 18px;
font-weight: 600;
- color: var(--gray-1);
+ color: var(--gray-900);
}
> div {
margin-top: var(--gap-3);
font-size: 13px;
- color: var(--gray-2);
+ color: var(--gray-800);
}
`;
diff --git a/styles/variable.css b/styles/variable.css
index 8e0c6cb6d..ba4c9717d 100644
--- a/styles/variable.css
+++ b/styles/variable.css
@@ -4,21 +4,24 @@
--shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
--shadow-lg: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
- --gray-1: #2d3748;
- --gray-2: #4a5568;
- --gray-3: #718096;
- --gray-4: #a0aec0;
- --gray-5: #cbd5e0;
- --gray-6: #e2e8f0;
- --gray-7: #edf2f7;
- --gray-8: #f7fafc;
+ --gray-900: #222222;
+ --gray-800: #424242;
+ --gray-700: #5f5f60;
+ --gray-600: #7c7d7e;
+ --gray-500: #a0a1a3;
+ --gray-400: #cecfd0;
+ --gray-300: #e2e3e5;
+ --gray-200: #ececee;
+ --gray-100: #f6f6f7;
+ --gray-50: #fcfcfc;
--color-mint: #00c2b3;
--color-mint-light: rgba(0, 194, 179, 0.1);
- --border: 1px solid var(--gray-6);
- --border-thick: 2px solid var(--gray-1);
+ --border: 1px solid var(--gray-200);
+ --border-thick: 2px solid var(--gray-900);
--border-mint: 2px solid var(--color-mint);
+ --border-mint-light: 1px solid var(--color-mint);
--rounded: 4px;
--rounded-lg: 8px;
@@ -35,9 +38,10 @@
--header-h: 56px;
--view-max-width: calc(var(--max-width) - 2 * var(--gap-4));
- --color-orange: #ffa500;
+ --color-yellow: #ffd747;
+ --color-red: #f26363;
+ --color-blue: #4c7aef;
+ --color-green: #30d368;
- --color-red: #ff6b6b;
- --color-blue: #6bafff;
- --input-bg: var(--gray-7);
+ --input-bg: var(--gray-200);
}
diff --git a/theme.ts b/theme.ts
index 5d1864d5e..2adbd396e 100644
--- a/theme.ts
+++ b/theme.ts
@@ -16,7 +16,7 @@ const theme = extendTheme({
styles: {
global: {
body: {
- color: "var(--gray-1)",
+ color: "var(--gray-900)",
},
// "*:focus": {
@@ -54,8 +54,8 @@ const theme = extendTheme({
800: "#ffffff",
},
redTheme: {
- 100: "#F56565",
- 500: "#F56565",
+ 100: "#f26363",
+ 500: "#f26363",
800: "#ffffff",
},
yellowTheme: {
@@ -89,7 +89,7 @@ const theme = extendTheme({
},
Button: {
baseStyle: {
- borderRadius: "4px",
+ borderRadius: "6px",
_focus: {
outline: "none",
boxShadow: "none",
@@ -101,7 +101,10 @@ const theme = extendTheme({
},
md: {
- h: "42px",
+ fontWeight: 500,
+ fontSize: "16px",
+ w: "92px",
+ h: "37px",
},
lg: {
h: "46px",
diff --git a/tsconfig.json b/tsconfig.json
index fe93e5d67..190a4333a 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -21,7 +21,9 @@
"global.d.ts",
"**/*.ts",
"**/*.tsx",
- "pages/admin/system/study.tsx"
+ "pages/admin/system/study.tsx",
+
+ "next.config.js"
],
"exclude": ["node_modules"]
}
diff --git a/types/components/propTypes.ts b/types/components/propTypes.ts
index ad6992355..5365aa59b 100644
--- a/types/components/propTypes.ts
+++ b/types/components/propTypes.ts
@@ -1,5 +1,3 @@
-import { ThemeTypings } from "@chakra-ui/react";
-
import { LocationEn } from "../services/locationTypes";
export interface ILocationParam {
@@ -13,5 +11,5 @@ export interface LinkButtonProp {
export interface ITextAndColorSchemes {
text: string;
- colorScheme: ThemeTypings["colorSchemes"];
+ color: string;
}
diff --git a/utils/dateTimeUtils.ts b/utils/dateTimeUtils.ts
index c16ca231c..1751c3d9c 100644
--- a/utils/dateTimeUtils.ts
+++ b/utils/dateTimeUtils.ts
@@ -1,4 +1,6 @@
import dayjs, { Dayjs } from "dayjs";
+import weekday from "dayjs/plugin/weekday";
+dayjs.extend(weekday);
export const dayjsToStr = (date: Dayjs) => date?.format("YYYY-MM-DD");
@@ -63,3 +65,36 @@ export const getDateWeek = (date: Dayjs) => {
const differenceInDays = date.diff(firstDayOfMonth, "day");
return Math.floor(differenceInDays / 7) + 1;
};
+
+export const getCalendarDates = (type: "week" | "month", selectedDate: Dayjs) => {
+ const calendar: string[] = [];
+
+ if (type === "week") {
+ const startDate = selectedDate.startOf(type);
+ for (let i = 0; i < 7; i++) {
+ calendar.push(dayjsToStr(startDate.add(i, "day")));
+ }
+ } else {
+ const startOfMonth = selectedDate.startOf("month");
+ const endOfMonth = selectedDate.endOf("month");
+ const startCalendar = startOfMonth.weekday(0);
+ const endCalendar = endOfMonth.weekday(6);
+
+ let current = startCalendar;
+
+ while (current.isBefore(endCalendar) || current.isSame(endCalendar)) {
+ if (current.isBefore(startOfMonth) || current.isAfter(endOfMonth)) {
+ calendar.push(null);
+ } else {
+ calendar.push(dayjsToStr(current));
+ }
+ current = current.add(1, "day");
+ }
+ const maxDays = calendar.length <= 35 ? 35 : 42;
+ while (calendar.length < maxDays) {
+ calendar.push(null);
+ }
+ }
+
+ return calendar;
+};
diff --git a/utils/validationUtils.ts b/utils/validationUtils.ts
index 044da91d2..5eb287292 100644
--- a/utils/validationUtils.ts
+++ b/utils/validationUtils.ts
@@ -56,3 +56,20 @@ export const selectRandomWinners = (
return Array.from(winners);
};
+
+export const detectDevice = () => {
+ const ua = navigator.userAgent;
+
+ // iPhone 감지
+ if (/iPhone/i.test(ua)) {
+ return "iPhone";
+ }
+ // Android 모바일 감지
+ else if (/Android/i.test(ua) && /mobile/i.test(ua)) {
+ return "Android";
+ }
+ // PC 감지
+ else {
+ return "PC";
+ }
+};
|