From bbd605b4d27bf73a5cdfa3c58074aed85894747b Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:58:06 +0900 Subject: [PATCH 01/19] =?UTF-8?q?chore(httpClient):=20meal=20=EA=B0=9D?= =?UTF-8?q?=EC=B2=B4=20=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/apis/httpClient/httpClient.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/apis/httpClient/httpClient.ts b/src/apis/httpClient/httpClient.ts index d4a39bac..e2085413 100644 --- a/src/apis/httpClient/httpClient.ts +++ b/src/apis/httpClient/httpClient.ts @@ -170,4 +170,5 @@ export default { admin: new HttpClient("api/bamboo/admin", axiosConfig), like: new HttpClient("api/likes/update", axiosConfig), image: new HttpClient("api/image/save", axiosConfig), + meal: new HttpClient("api/meal", axiosConfig), }; From 713bd7444cb31bf03d4cb5e31ae16b2bb586a63b Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:58:17 +0900 Subject: [PATCH 02/19] =?UTF-8?q?chore(data):=20emptyMealList=20=EC=A0=95?= =?UTF-8?q?=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/data/emptyMealList.ts | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/assets/data/emptyMealList.ts diff --git a/src/assets/data/emptyMealList.ts b/src/assets/data/emptyMealList.ts new file mode 100644 index 00000000..8bd26429 --- /dev/null +++ b/src/assets/data/emptyMealList.ts @@ -0,0 +1,21 @@ +import { IMealList } from "@/interfaces"; + +const emptyMealList: IMealList = { + data: { + MORNING: { + content: "", + cal: 0, + }, + LUNCH: { + content: "", + cal: 0, + }, + DINNER: { + content: "", + cal: 0, + }, + }, + keys: [], +}; + +export default emptyMealList; From 5d92356cc993050bc483e96579402636028a1bab Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:58:22 +0900 Subject: [PATCH 03/19] =?UTF-8?q?chore(data):=20emptyMealList=20=EC=A0=95?= =?UTF-8?q?=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/data/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/assets/data/index.ts b/src/assets/data/index.ts index 1bf7607e..f03fb369 100644 --- a/src/assets/data/index.ts +++ b/src/assets/data/index.ts @@ -3,3 +3,4 @@ export { default as emptyClassInfo } from "./emptyClassInfo"; export { default as emptyClassLevel } from "./emptyClassLevel"; export { default as emptyTimetable } from "./emptyTimetable"; export { default as emptyInputPost } from "./emptyInputPost"; +export { default as emptyMealList } from "./emptyMealList"; From f1c0dbaf61bce6ff96e228124cfad132357af79e Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:58:32 +0900 Subject: [PATCH 04/19] =?UTF-8?q?chore(constant):=20meal=20key=20=EC=A0=95?= =?UTF-8?q?=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/constants/key.constant.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/constants/key.constant.ts b/src/constants/key.constant.ts index 7803cfc0..f1d73850 100644 --- a/src/constants/key.constant.ts +++ b/src/constants/key.constant.ts @@ -6,6 +6,7 @@ const KEY = { RECOMMENT: "useRecomment", BAMBOO: "useBamboo", BAMBOO_ADMIN: "useBambooAdmin", + MEAL: "useMeal", } as const; export default KEY; From 4def9ec66a36d7ee74544b8caab2390018060719 Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:58:57 +0900 Subject: [PATCH 05/19] =?UTF-8?q?chore(helper):=20=EC=8B=9D=EC=82=AC=20?= =?UTF-8?q?=EC=9D=B4=EB=A6=84=20=EB=B0=98=ED=99=98=20=ED=95=A8=EC=88=98=20?= =?UTF-8?q?=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/helpers/getMealName.helper.ts | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 src/helpers/getMealName.helper.ts diff --git a/src/helpers/getMealName.helper.ts b/src/helpers/getMealName.helper.ts new file mode 100644 index 00000000..50e2ad54 --- /dev/null +++ b/src/helpers/getMealName.helper.ts @@ -0,0 +1,14 @@ +const getMealName = (meal: string) => { + switch (meal) { + case "MORNING": + return "조식"; + case "LUNCH": + return "중식"; + case "DINNER": + return "석식"; + default: + return meal; + } +}; + +export default getMealName; From 638682fb8673fc643a79e2d650c6d7944357281b Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:59:00 +0900 Subject: [PATCH 06/19] =?UTF-8?q?chore(helper):=20=EC=8B=9D=EC=82=AC=20?= =?UTF-8?q?=EC=9D=B4=EB=A6=84=20=EB=B0=98=ED=99=98=20=ED=95=A8=EC=88=98=20?= =?UTF-8?q?=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/helpers/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/helpers/index.ts b/src/helpers/index.ts index 66367f2b..69300062 100644 --- a/src/helpers/index.ts +++ b/src/helpers/index.ts @@ -8,3 +8,4 @@ export { default as getWriteContentLabel } from "./getWriteContentLabel.helper"; export { default as checkPostValid } from "./checkPostValid.helper"; export { default as checkTextOverflow } from "./checkTextOverflow.helper"; export { default as getTextDepth } from "./getTextDepth.helper"; +export { default as getMealName } from "./getMealName.helper"; From 57750add835478f73e5ad531272b6e3f30111e96 Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:59:12 +0900 Subject: [PATCH 07/19] =?UTF-8?q?chore(useDate):=20=EA=B8=89=EC=8B=9D=20?= =?UTF-8?q?=EA=B4=80=EB=A0=A8=20date=20=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/useDate.ts | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/hooks/useDate.ts b/src/hooks/useDate.ts index a312d244..eb92ecb2 100644 --- a/src/hooks/useDate.ts +++ b/src/hooks/useDate.ts @@ -59,6 +59,22 @@ const useDate = () => { return formattedDate; }; + const getMealDate = () => { + return dayjs().format("YYMMDD"); + }; + + const getDayOfWeek = (date: string) => { + return dayjs(date, "YYMMDD").locale("ko").format("dddd"); + }; + + const getMealDateTitle = (date: string) => { + return dayjs(date, "YYMMDD").locale("ko").format("M월 D일 dddd"); + }; + + const setMealDate = (date: string, day: number) => { + return dayjs(date, "YYMMDD").add(day, "day").format("YYMMDD"); + }; + const getNowWeekDay = ({ type }: DateType) => { const today = dayjs().day(); @@ -107,6 +123,10 @@ const useDate = () => { formatDate, getHMSDate, getDate, + getDayOfWeek, + getMealDate, + getMealDateTitle, + setMealDate, getNowWeekDay, translateDay, getDiffDayTime, From 508c221158ece82900f81ba9472b4aa92c99a845 Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:59:32 +0900 Subject: [PATCH 08/19] =?UTF-8?q?chore(interface):=20meal=20=EC=9D=B8?= =?UTF-8?q?=ED=84=B0=ED=8E=98=EC=9D=B4=EC=8A=A4=20=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/interfaces/index.ts | 2 +- src/interfaces/meal.interface.ts | 4 ++++ src/interfaces/mealList.interface.ts | 7 ++++++- src/interfaces/mealListItem.interface.ts | 6 ------ 4 files changed, 11 insertions(+), 8 deletions(-) create mode 100644 src/interfaces/meal.interface.ts delete mode 100644 src/interfaces/mealListItem.interface.ts diff --git a/src/interfaces/index.ts b/src/interfaces/index.ts index 98e27126..abee9059 100644 --- a/src/interfaces/index.ts +++ b/src/interfaces/index.ts @@ -3,7 +3,7 @@ export type { default as IClassInfo } from "./classInfo.interface"; export type { default as IClassLevel } from "./classLevel.interface"; export type { default as IEmojiState } from "./emoji.interface"; export type { default as IMealList } from "./mealList.interface"; -export type { default as IMealListItem } from "./mealListItem.interface"; +export type { default as IMeal } from "./meal.interface"; export type { default as IModalState } from "./modal.interface"; export type { default as IPost } from "./post.interface"; export type { default as IPostQuery } from "./postQuery.interface"; diff --git a/src/interfaces/meal.interface.ts b/src/interfaces/meal.interface.ts new file mode 100644 index 00000000..1248eae3 --- /dev/null +++ b/src/interfaces/meal.interface.ts @@ -0,0 +1,4 @@ +export default interface IMeal { + content: string; + cal: number; +} diff --git a/src/interfaces/mealList.interface.ts b/src/interfaces/mealList.interface.ts index 321e63e0..6e1e2966 100644 --- a/src/interfaces/mealList.interface.ts +++ b/src/interfaces/mealList.interface.ts @@ -1,3 +1,8 @@ +import IMeal from "./meal.interface"; + export default interface MealListType { - mealList: Array; + data: { + [meal: string]: IMeal; + }; + keys: Array; } diff --git a/src/interfaces/mealListItem.interface.ts b/src/interfaces/mealListItem.interface.ts deleted file mode 100644 index f4e5793e..00000000 --- a/src/interfaces/mealListItem.interface.ts +++ /dev/null @@ -1,6 +0,0 @@ -export default interface MealListItemsType { - key: number; - date: number; - menu: Array; - currentSlideIndex: number; -} From 7ab736d2dfc66143be14309e1585b83f0d670741 Mon Sep 17 00:00:00 2001 From: Ubinquitous Date: Sat, 30 Sep 2023 14:59:45 +0900 Subject: [PATCH 09/19] =?UTF-8?q?feat(meal):=20=EA=B8=89=EC=8B=9D=20?= =?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=99=84=EC=84=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/page/meal/index.tsx | 99 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 92 insertions(+), 7 deletions(-) diff --git a/src/page/meal/index.tsx b/src/page/meal/index.tsx index 719d8d79..97c920d2 100644 --- a/src/page/meal/index.tsx +++ b/src/page/meal/index.tsx @@ -1,18 +1,69 @@ +import React from "react"; import styled from "styled-components"; -import { Aside } from "@/components/common"; +import { emptyMealList } from "@/assets/data"; +import { IMealList } from "@/interfaces"; +import { color, flex, font } from "@/styles"; import { Column } from "@/components/Flex"; -import { font } from "@/styles"; -import MealSlider from "./layouts/MealSlider"; +import useDate from "@/hooks/useDate"; +import MealListItem from "./layouts/MealListItem"; +import { useMealQuery } from "./services/query.service"; const MealPage = () => { + const { getMealDate, getDayOfWeek, setMealDate, getMealDateTitle } = + useDate(); + const [currentDate, setCurrentDate] = React.useState(getMealDate()); + const [mealList, setMealList] = React.useState(emptyMealList); + const { refetch } = useMealQuery({ date: currentDate }); + + React.useEffect(() => { + const handleSetDateKeyDown = (e: KeyboardEvent) => { + if (e.key === "ArrowLeft") + setCurrentDate((p) => { + if (getDayOfWeek(p) === "월요일") return setMealDate(p, -3); + return setMealDate(p, -1); + }); + if (e.key === "ArrowRight") + setCurrentDate((p) => { + if (getDayOfWeek(p) === "금요일") return setMealDate(p, 3); + return setMealDate(p, 1); + }); + }; + + window.addEventListener("keydown", handleSetDateKeyDown); + return () => { + window.removeEventListener("keydown", handleSetDateKeyDown); + }; + // eslint-disable-next-line + }, []); + + React.useEffect(() => { + refetch().then(({ data }) => { + if (data.keys) return setMealList(data); + return setMealList(emptyMealList); + }); + // eslint-disable-next-line + }, [currentDate]); + return ( - + - <MealSlider /> + <Description /> </Column> - <Aside /> + <MealDate>{getMealDateTitle(currentDate)}</MealDate> + <MealList> + {mealList.keys.map((mealName) => ( + <MealListItem + key={mealName} + mealName={mealName} + meal={mealList.data[mealName]} + /> + ))} + {!mealList.keys.length && ( + <NoMealText>{getMealDateTitle(currentDate)}</NoMealText> + )} + </MealList> </Container> </Layout> ); @@ -26,7 +77,8 @@ const Layout = styled.div` const Container = styled.div` width: 76%; - display: flex; + ${flex.COLUMN}; + gap: 12px; `; const Title = styled.span` @@ -36,4 +88,37 @@ const Title = styled.span` } `; +const Description = styled.span` + color: ${color.gray}; + &:after { + content: "좌우 화살표 방향키를 탭해 날짜를 조정해보세요."; + } +`; + +const MealList = styled.div` + width: 100%; + display: flex; + justify-content: space-between; + align-items: center; + height: 60vh; + gap: 30px; +`; + +const MealDate = styled.span` + width: 100%; + ${flex.CENTER}; + ${font.H4}; +`; + +const NoMealText = styled.span` + width: 100%; + ${flex.CENTER}; + ${font.p2}; + color: ${color.gray}; + + &:after { + content: "에 등록된 급식이 없어요."; + } +`; + export default MealPage; From 4160f0512f0eb258fb0498aab50d3033744b225d Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 14:59:58 +0900 Subject: [PATCH 10/19] =?UTF-8?q?refactor(BlinkerBox):=20=EC=8B=A0?= =?UTF-8?q?=ED=98=B8=EB=93=B1=20UI=20=EC=BB=B4=ED=8F=AC=EB=84=8C=ED=8A=B8?= =?UTF-8?q?=EB=A1=9C=20=EB=B6=84=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/page/meal/layouts/BlinkerBox.tsx | 39 ++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 src/page/meal/layouts/BlinkerBox.tsx diff --git a/src/page/meal/layouts/BlinkerBox.tsx b/src/page/meal/layouts/BlinkerBox.tsx new file mode 100644 index 00000000..762f4ee9 --- /dev/null +++ b/src/page/meal/layouts/BlinkerBox.tsx @@ -0,0 +1,39 @@ +import { color, flex } from "@/styles"; +import React from "react"; +import styled from "styled-components"; + +const BlinkerBox = () => { + return ( + <Container> + <Red /> + <Yellow /> + <Green /> + </Container> + ); +}; + +const Container = styled.div` + ${flex.VERTICAL}; + gap: 6px; + margin-right: auto; +`; + +const Circle = styled.div` + width: 12px; + height: 12px; + border-radius: 25px; +`; + +const Red = styled(Circle)` + background-color: ${color.primary_red}; +`; + +const Yellow = styled(Circle)` + background-color: ${color.primary_yellow}; +`; + +const Green = styled(Circle)` + background-color: ${color.primary_mint}; +`; + +export default BlinkerBox; From 3e7495303e45060b6d25c5f2913fcffbbefc39f6 Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:00:32 +0900 Subject: [PATCH 11/19] =?UTF-8?q?chore(MealListItem):=20=EA=B8=89=EC=8B=9D?= =?UTF-8?q?=20=EC=95=84=EC=9D=B4=ED=85=9C=20=EC=BB=B4=ED=8F=AC=EB=84=8C?= =?UTF-8?q?=ED=8A=B8=20=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/page/meal/layouts/MealListItem.tsx | 77 ++++++++++++++++++-------- 1 file changed, 55 insertions(+), 22 deletions(-) diff --git a/src/page/meal/layouts/MealListItem.tsx b/src/page/meal/layouts/MealListItem.tsx index 36784729..f15b3726 100644 --- a/src/page/meal/layouts/MealListItem.tsx +++ b/src/page/meal/layouts/MealListItem.tsx @@ -1,56 +1,89 @@ -import { Row } from "@/components/Flex"; -import { color } from "@/styles"; import React from "react"; import styled from "styled-components"; +import { color, flex, font } from "@/styles"; +import { Row } from "@/components/Flex"; +import { getMealName } from "@/helpers"; +import BlinkerBox from "./BlinkerBox"; + +interface IMealListItemProps { + mealName: string; + meal: { + content: string; + cal: number; + }; +} -const MealListItem = () => { +const MealListItem = ({ mealName, meal }: IMealListItemProps) => { return ( <Container> <MealHeader> - <Row gap="8px" alignItems="center"> - <Red /> - <Yellow /> - <Green /> + <BlinkerBox /> + <Row gap="4px"> + <MealTime>{getMealName(mealName)}</MealTime> + <MealCal>{meal?.cal}</MealCal> </Row> </MealHeader> + <MealBody> + <MealContent>{meal?.content}</MealContent> + </MealBody> </Container> ); }; const Container = styled.div` width: 100%; - height: 68vh; + height: 56vh; border-radius: 12px; background-color: ${color.white}; - margin: 10px 0; + box-shadow: 4px 4px 15px 0 rgba(0, 0, 0, 0.15); + margin: 16px 0; + transition: ease-in-out; + transition-duration: 0.2s; + + &:hover { + width: 110%; + height: 58vh; + transition: ease-in-out; + transition-duration: 0.2s; + } `; const MealHeader = styled.div` width: 100%; - height: 9%; + height: 32px; padding: 0 16px; border-radius: 12px 12px 0 0; background-color: ${color.meal_header}; - display: flex; - align-items: center; + ${flex.CENTER} + position: relative; `; -const Circle = styled.div` - width: 12px; - height: 12px; - border-radius: 25px; +const MealTime = styled.span` + ${font.p3}; `; -const Red = styled(Circle)` - background-color: ${color.primary_red}; +const MealCal = styled(MealTime)` + &:before { + content: "· "; + } + + &:after { + content: "kcal"; + } `; -const Yellow = styled(Circle)` - background-color: ${color.primary_yellow}; +const MealBody = styled.div` + width: 100%; + height: 100%; + ${flex.CENTER}; `; -const Green = styled(Circle)` - background-color: ${color.primary_mint}; +const MealContent = styled.p` + ${font.p1}; + line-height: 180%; + font-weight: 500; + white-space: pre; + margin: 14px 0 auto 0; `; export default MealListItem; From 54c2f21aed5f4abfb67e029637522adbe4f9f375 Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:00:46 +0900 Subject: [PATCH 12/19] =?UTF-8?q?chore(service):=20=EA=B8=89=EC=8B=9D=20?= =?UTF-8?q?=EA=B4=80=EB=A0=A8=20query=20=EC=A0=95=EC=9D=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/page/meal/layouts/MealSlider.tsx | 30 ------------------------- src/page/meal/services/api.service.ts | 6 +++++ src/page/meal/services/query.service.ts | 12 ++++++++++ 3 files changed, 18 insertions(+), 30 deletions(-) delete mode 100644 src/page/meal/layouts/MealSlider.tsx create mode 100644 src/page/meal/services/api.service.ts create mode 100644 src/page/meal/services/query.service.ts diff --git a/src/page/meal/layouts/MealSlider.tsx b/src/page/meal/layouts/MealSlider.tsx deleted file mode 100644 index 8dfde907..00000000 --- a/src/page/meal/layouts/MealSlider.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import React from "react"; -import "slick-carousel/slick/slick.css"; -import "slick-carousel/slick/slick-theme.css"; -import styled from "styled-components"; - -const MealSlider = () => { - return ( - <Container> - <MealList> - {/* <Slider {...settings}> - {Array.from({ length: 10 }).map((_, i) => ( - <MealListItem key={i} /> - ))} - </Slider> */} - </MealList> - </Container> - ); -}; - -const Container = styled.div` - width: 100%; -`; - -const MealList = styled.div` - width: 100%; - height: 68vh; - overflow: hidden; -`; - -export default MealSlider; diff --git a/src/page/meal/services/api.service.ts b/src/page/meal/services/api.service.ts new file mode 100644 index 00000000..b35a8174 --- /dev/null +++ b/src/page/meal/services/api.service.ts @@ -0,0 +1,6 @@ +import httpClient from "@/apis/httpClient"; + +export const getMealList = async (date: string) => { + const { data } = await httpClient.meal.getById({ params: { id: date } }); + return data; +}; diff --git a/src/page/meal/services/query.service.ts b/src/page/meal/services/query.service.ts new file mode 100644 index 00000000..c8813713 --- /dev/null +++ b/src/page/meal/services/query.service.ts @@ -0,0 +1,12 @@ +import { KEY } from "@/constants"; +import { useQuery } from "@tanstack/react-query"; +import { getMealList } from "./api.service"; + +interface IUseMealQueryProps { + date: string; +} + +export const useMealQuery = ({ date }: IUseMealQueryProps) => { + const { data, ...queryRest } = useQuery([KEY.MEAL], () => getMealList(date)); + return { data, ...queryRest }; +}; From 1f1450557f338c3b6f48661da05f407f90884b53 Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:05:30 +0900 Subject: [PATCH 13/19] =?UTF-8?q?fix(git):=20=EB=B2=84=EC=A0=84=20?= =?UTF-8?q?=EC=B6=A9=EB=8F=8C=20=EC=97=90=EB=9F=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/layout.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index e4f6e2b7..a9084af0 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -2,7 +2,7 @@ import Provider from "@/provider/provider.helper"; export const metadata = { title: "BSM", - description: "부산소마고 학생 정보 관리 서비스입니다.", + description: "부산소마고 학생 정보 관리 서비스 BSM입니다.", }; export default function RootLayout({ From ff28b7e6b0512f8241cd909e16fdf376faeb6220 Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:08:25 +0900 Subject: [PATCH 14/19] =?UTF-8?q?fix(git):=20=EB=8C=80=EC=86=8C=EB=AC=B8?= =?UTF-8?q?=EC=9E=90=20=EC=9D=B4=EC=8A=88=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ClientProvider.helper.tsx => apolloClientProvider2.helper.tsx} | 0 .../{layoutProvider.helper.tsx => layoutProvider2.helper.tsx} | 0 src/provider/{provider.helper.tsx => provider2.helper.tsx} | 0 ...actQueryProvider.helper.tsx => reactQueryProvider2.helper.tsx} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename src/provider/{apolloClientProvider.helper.tsx => apolloClientProvider2.helper.tsx} (100%) rename src/provider/{layoutProvider.helper.tsx => layoutProvider2.helper.tsx} (100%) rename src/provider/{provider.helper.tsx => provider2.helper.tsx} (100%) rename src/provider/{reactQueryProvider.helper.tsx => reactQueryProvider2.helper.tsx} (100%) diff --git a/src/provider/apolloClientProvider.helper.tsx b/src/provider/apolloClientProvider2.helper.tsx similarity index 100% rename from src/provider/apolloClientProvider.helper.tsx rename to src/provider/apolloClientProvider2.helper.tsx diff --git a/src/provider/layoutProvider.helper.tsx b/src/provider/layoutProvider2.helper.tsx similarity index 100% rename from src/provider/layoutProvider.helper.tsx rename to src/provider/layoutProvider2.helper.tsx diff --git a/src/provider/provider.helper.tsx b/src/provider/provider2.helper.tsx similarity index 100% rename from src/provider/provider.helper.tsx rename to src/provider/provider2.helper.tsx diff --git a/src/provider/reactQueryProvider.helper.tsx b/src/provider/reactQueryProvider2.helper.tsx similarity index 100% rename from src/provider/reactQueryProvider.helper.tsx rename to src/provider/reactQueryProvider2.helper.tsx From eafa96ed0da81636512e8c1559c83928121d2166 Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:08:56 +0900 Subject: [PATCH 15/19] =?UTF-8?q?fix(git):=20=EB=8C=80=EC=86=8C=EB=AC=B8?= =?UTF-8?q?=EC=9E=90=20=EC=9D=B4=EC=8A=88=20=ED=95=B4=EA=B2=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ClientProvider2.helper.tsx => apolloClientProvider.helper.tsx} | 0 .../{layoutProvider2.helper.tsx => layoutProvider.helper.tsx} | 0 src/provider/{provider2.helper.tsx => provider.helper.tsx} | 0 ...actQueryProvider2.helper.tsx => reactQueryProvider.helper.tsx} | 0 4 files changed, 0 insertions(+), 0 deletions(-) rename src/provider/{apolloClientProvider2.helper.tsx => apolloClientProvider.helper.tsx} (100%) rename src/provider/{layoutProvider2.helper.tsx => layoutProvider.helper.tsx} (100%) rename src/provider/{provider2.helper.tsx => provider.helper.tsx} (100%) rename src/provider/{reactQueryProvider2.helper.tsx => reactQueryProvider.helper.tsx} (100%) diff --git a/src/provider/apolloClientProvider2.helper.tsx b/src/provider/apolloClientProvider.helper.tsx similarity index 100% rename from src/provider/apolloClientProvider2.helper.tsx rename to src/provider/apolloClientProvider.helper.tsx diff --git a/src/provider/layoutProvider2.helper.tsx b/src/provider/layoutProvider.helper.tsx similarity index 100% rename from src/provider/layoutProvider2.helper.tsx rename to src/provider/layoutProvider.helper.tsx diff --git a/src/provider/provider2.helper.tsx b/src/provider/provider.helper.tsx similarity index 100% rename from src/provider/provider2.helper.tsx rename to src/provider/provider.helper.tsx diff --git a/src/provider/reactQueryProvider2.helper.tsx b/src/provider/reactQueryProvider.helper.tsx similarity index 100% rename from src/provider/reactQueryProvider2.helper.tsx rename to src/provider/reactQueryProvider.helper.tsx From c0bee08cc6813c60e97c4d49f896be3638db5bb1 Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:14:24 +0900 Subject: [PATCH 16/19] =?UTF-8?q?fix(git):=20=ED=94=84=EB=A1=9C=EB=B0=94?= =?UTF-8?q?=EC=9D=B4=EB=8D=94=20=EC=9D=B4=EC=8A=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/provider/{apolloClientProvider.helper.tsx => abc.tsx} | 0 src/provider/{layoutProvider.helper.tsx => abcd.tsx} | 0 src/provider/{reactQueryProvider.helper.tsx => abcde.tsx} | 0 src/provider/{provider.helper.tsx => abcdef.tsx} | 6 +++--- 4 files changed, 3 insertions(+), 3 deletions(-) rename src/provider/{apolloClientProvider.helper.tsx => abc.tsx} (100%) rename src/provider/{layoutProvider.helper.tsx => abcd.tsx} (100%) rename src/provider/{reactQueryProvider.helper.tsx => abcde.tsx} (100%) rename src/provider/{provider.helper.tsx => abcdef.tsx} (68%) diff --git a/src/provider/apolloClientProvider.helper.tsx b/src/provider/abc.tsx similarity index 100% rename from src/provider/apolloClientProvider.helper.tsx rename to src/provider/abc.tsx diff --git a/src/provider/layoutProvider.helper.tsx b/src/provider/abcd.tsx similarity index 100% rename from src/provider/layoutProvider.helper.tsx rename to src/provider/abcd.tsx diff --git a/src/provider/reactQueryProvider.helper.tsx b/src/provider/abcde.tsx similarity index 100% rename from src/provider/reactQueryProvider.helper.tsx rename to src/provider/abcde.tsx diff --git a/src/provider/provider.helper.tsx b/src/provider/abcdef.tsx similarity index 68% rename from src/provider/provider.helper.tsx rename to src/provider/abcdef.tsx index eb7ef7a5..36799a48 100644 --- a/src/provider/provider.helper.tsx +++ b/src/provider/abcdef.tsx @@ -2,9 +2,9 @@ import React from "react"; import { RecoilRoot } from "recoil"; -import ReactQueryProvider from "./reactQueryProvider.helper"; -import LayoutProvider from "./layoutProvider.helper"; -import ApolloClientProvider from "./apolloClientProvider.helper"; +import ReactQueryProvider from "./abcde"; +import LayoutProvider from "./abcd"; +import ApolloClientProvider from "./abc"; const Provider = ({ children }: React.PropsWithChildren) => { return ( From 70eb9bdaf38879491c5aae2102a82e02383d60de Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:19:57 +0900 Subject: [PATCH 17/19] =?UTF-8?q?fix(git):=20provider=20=EB=A6=AC=EB=84=A4?= =?UTF-8?q?=EC=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/layout.tsx | 2 +- src/provider/{abc.tsx => ApolloClientProvider.tsx} | 0 src/provider/{abcd.tsx => LayoutProvider.tsx} | 0 src/provider/{abcdef.tsx => Provider.tsx} | 6 +++--- src/provider/{abcde.tsx => ReactQueryProvider.tsx} | 0 5 files changed, 4 insertions(+), 4 deletions(-) rename src/provider/{abc.tsx => ApolloClientProvider.tsx} (100%) rename src/provider/{abcd.tsx => LayoutProvider.tsx} (100%) rename src/provider/{abcdef.tsx => Provider.tsx} (70%) rename src/provider/{abcde.tsx => ReactQueryProvider.tsx} (100%) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index a9084af0..b2f31747 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,4 +1,4 @@ -import Provider from "@/provider/provider.helper"; +import Provider from "@/provider/Provider"; export const metadata = { title: "BSM", diff --git a/src/provider/abc.tsx b/src/provider/ApolloClientProvider.tsx similarity index 100% rename from src/provider/abc.tsx rename to src/provider/ApolloClientProvider.tsx diff --git a/src/provider/abcd.tsx b/src/provider/LayoutProvider.tsx similarity index 100% rename from src/provider/abcd.tsx rename to src/provider/LayoutProvider.tsx diff --git a/src/provider/abcdef.tsx b/src/provider/Provider.tsx similarity index 70% rename from src/provider/abcdef.tsx rename to src/provider/Provider.tsx index 36799a48..923382b8 100644 --- a/src/provider/abcdef.tsx +++ b/src/provider/Provider.tsx @@ -2,9 +2,9 @@ import React from "react"; import { RecoilRoot } from "recoil"; -import ReactQueryProvider from "./abcde"; -import LayoutProvider from "./abcd"; -import ApolloClientProvider from "./abc"; +import ReactQueryProvider from "./ReactQueryProvider"; +import LayoutProvider from "./LayoutProvider"; +import ApolloClientProvider from "./ApolloClientProvider"; const Provider = ({ children }: React.PropsWithChildren) => { return ( diff --git a/src/provider/abcde.tsx b/src/provider/ReactQueryProvider.tsx similarity index 100% rename from src/provider/abcde.tsx rename to src/provider/ReactQueryProvider.tsx From da6f6f9b2750156cabc3039575365427079c050a Mon Sep 17 00:00:00 2001 From: Ubinquitous <ubinquitous1@gmail.com> Date: Sat, 30 Sep 2023 15:21:43 +0900 Subject: [PATCH 18/19] chore(delete): ServerStyleProvider --- src/provider/ServerStyleProvider.tsx | 31 ------------------- .../StyledComponentsProvider.helper.tsx | 27 ---------------- 2 files changed, 58 deletions(-) delete mode 100644 src/provider/ServerStyleProvider.tsx delete mode 100644 src/provider/StyledComponentsProvider.helper.tsx diff --git a/src/provider/ServerStyleProvider.tsx b/src/provider/ServerStyleProvider.tsx deleted file mode 100644 index 6d1ce75a..00000000 --- a/src/provider/ServerStyleProvider.tsx +++ /dev/null @@ -1,31 +0,0 @@ -"use client"; - -import React, { useState } from "react"; -import { useServerInsertedHTML } from "next/navigation"; -import { ServerStyleSheet, StyleSheetManager } from "styled-components"; - -export default function ServerStyleProvider({ - children, -}: { - children: React.ReactNode; -}) { - // Only create stylesheet once with lazy initial state - // x-ref: https://reactjs.org/docs/hooks-reference.html#lazy-initial-state - const [styledComponentsStyleSheet] = useState(() => new ServerStyleSheet()); - - useServerInsertedHTML(() => { - const styles = styledComponentsStyleSheet.getStyleElement(); - styledComponentsStyleSheet.instance.clearTag(); - // eslint-disable-next-line - return <>{styles}</>; - }); - - // eslint-disable-next-line - if (typeof window !== "undefined") return <>{children}</>; - - return ( - <StyleSheetManager sheet={styledComponentsStyleSheet.instance}> - {children} - </StyleSheetManager> - ); -} diff --git a/src/provider/StyledComponentsProvider.helper.tsx b/src/provider/StyledComponentsProvider.helper.tsx deleted file mode 100644 index b7d8a73a..00000000 --- a/src/provider/StyledComponentsProvider.helper.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import React from "react"; -import { ServerStyleSheet, StyleSheetManager } from "styled-components"; - -export function useStyledComponentsRegistry() { - const [styledComponentsStyleSheet] = React.useState( - () => new ServerStyleSheet(), - ); - - const styledComponentsFlushEffect = () => { - const styles = styledComponentsStyleSheet.getStyleElement(); - styledComponentsStyleSheet.instance.clearTag(); - // eslint-disable-next-line - return <>{styles}</>; - }; - - const StyledComponentsProvider = ({ - children, - }: { - children: React.ReactNode; - }) => ( - <StyleSheetManager sheet={styledComponentsStyleSheet.instance}> - {children as React.ReactElement} - </StyleSheetManager> - ); - - return [StyledComponentsProvider, styledComponentsFlushEffect] as const; -} From 41cf3d42ca34fb217011720a67af408f450331c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9A=B0=EB=B9=88?= <102154880+Ubinquitous@users.noreply.github.com> Date: Sat, 30 Sep 2023 15:25:44 +0900 Subject: [PATCH 19/19] =?UTF-8?q?fix(lint):=20=EC=84=B8=EB=AF=B8=EC=BD=9C?= =?UTF-8?q?=EB=A1=A0=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/layout.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/app/layout.tsx b/src/app/layout.tsx index d5ce8397..b2f31747 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -8,7 +8,7 @@ export const metadata = { export default function RootLayout({ children, }: { - children: React.ReactNode + children: React.ReactNode; }) { return ( <html lang="en"> @@ -16,5 +16,5 @@ export default function RootLayout({ <Provider>{children}</Provider> </body> </html> - ) + ); }