From bd2d9b673d815aaa1d5134c27894da62419e08aa Mon Sep 17 00:00:00 2001 From: marulog Date: Thu, 25 Dec 2025 18:38:00 +0900 Subject: [PATCH 1/3] =?UTF-8?q?feat/#58:=20=EC=8B=A0=EA=B7=9C=20=EC=9C=A0?= =?UTF-8?q?=EC=A0=80=20=EC=95=84=EC=9D=B4=EC=BD=98=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/assets/images/grass.png | Bin 0 -> 18474 bytes src/assets/images/new1.png | Bin 0 -> 3295 bytes src/assets/images/new3.png | Bin 0 -> 1178 bytes src/assets/images/new444.png | Bin 0 -> 7067 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/assets/images/grass.png create mode 100644 src/assets/images/new1.png create mode 100644 src/assets/images/new3.png create mode 100644 src/assets/images/new444.png diff --git a/src/assets/images/grass.png b/src/assets/images/grass.png new file mode 100644 index 0000000000000000000000000000000000000000..b2f24f9dcb56d1320982b205955e55fbbc1cd58d GIT binary patch literal 18474 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 z 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 ojf`C;$Ke literal 0 HcmV?d00001 diff --git a/src/assets/images/new1.png b/src/assets/images/new1.png new file mode 100644 index 0000000000000000000000000000000000000000..d8760d91ec5700db6965410eab7ee06d9735a68d GIT binary patch literal 3295 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 literal 0 HcmV?d00001 From cffea819dcebc717ec876270e8056da48a9d7ca1 Mon Sep 17 00:00:00 2001 From: marulog Date: Thu, 25 Dec 2025 18:40:30 +0900 Subject: [PATCH 2/3] =?UTF-8?q?feat/#59:=20=EC=8B=A0=EA=B7=9C=EC=9C=A0?= =?UTF-8?q?=EC=A0=80=20=ED=91=9C=EC=8B=9C,=20=EC=97=85=EB=8D=B0=EC=9D=B4?= =?UTF-8?q?=ED=8A=B8=20=EC=8B=9C=EA=B0=84=20=EC=BB=B4=ED=8F=AC=EB=84=8C?= =?UTF-8?q?=ED=8A=B8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/client/getRanking.ts | 2 ++ src/components/ranking/RankingRow.tsx | 26 ++++++++++++++---- src/components/ranking/RankingUpdateTime.tsx | 29 ++++++++++++++++++++ src/pages/RankingPage.tsx | 9 +++++- 4 files changed, 60 insertions(+), 6 deletions(-) create mode 100644 src/components/ranking/RankingUpdateTime.tsx diff --git a/src/api/client/getRanking.ts b/src/api/client/getRanking.ts index ab56139..45be59e 100644 --- a/src/api/client/getRanking.ts +++ b/src/api/client/getRanking.ts @@ -16,10 +16,12 @@ export interface RankingRow { baekjoonId: string; team: string; diff: number; + newUser: boolean; } export interface RankingPage { hasNext: boolean; + updateTime: string; rows: RankingRow[]; } diff --git a/src/components/ranking/RankingRow.tsx b/src/components/ranking/RankingRow.tsx index 58bdc86..e7fa6eb 100644 --- a/src/components/ranking/RankingRow.tsx +++ b/src/components/ranking/RankingRow.tsx @@ -1,5 +1,6 @@ import { getTierImageUrl } from "../../constants/tierMap"; import { getTeamLabel, type TeamName } from "@/types/team"; +import newPng from "../../assets/images/new444.png"; /** * author : 박준희 @@ -14,6 +15,7 @@ export interface RankingRowData { baekjoonId: string; team: TeamName; diff: number; + newUser: boolean; } interface RankingRowProps { @@ -22,12 +24,26 @@ interface RankingRowProps { const RankingRow = ({ row }: RankingRowProps) => { return ( -
- - -
{row.rank}등
+
+
+ {row.newUser && ( + new + )} + {row.rank}등 +
-
+
{row.name}
diff --git a/src/components/ranking/RankingUpdateTime.tsx b/src/components/ranking/RankingUpdateTime.tsx new file mode 100644 index 0000000..0e18c97 --- /dev/null +++ b/src/components/ranking/RankingUpdateTime.tsx @@ -0,0 +1,29 @@ +/** + * author : 박준희 + */ +type Props = { + updateTime?: string | null; // "2025-12-24T19:00:00" +}; + +const formatUpdateTime = (value: string) => { + const m = value.match(/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})/); + if (!m) return `${value} KST 기준`; + + const yyyy = Number(m[1]); + const mm = Number(m[2]); + const dd = Number(m[3]); + const hh = m[4]; + const mi = m[5]; + + return `${yyyy}년 ${mm}월 ${dd}일 ${hh}:${mi} KST 기준`; +}; + +export default function RankingUpdateTime({ updateTime }: Props) { + if (!updateTime) return null; + + return ( +
+ {formatUpdateTime(updateTime)} +
+ ); +} diff --git a/src/pages/RankingPage.tsx b/src/pages/RankingPage.tsx index b492e6d..c7eb727 100644 --- a/src/pages/RankingPage.tsx +++ b/src/pages/RankingPage.tsx @@ -6,6 +6,7 @@ import RankingDateDisplay from "../components/ranking/RankingDateDisplay"; import RankingGroupSelector from "../components/ranking/RankingGroupSelector"; import Calendar from "../components/common/Calendar"; import RankingHeader from "../components/ranking/RankingHeader"; +import RankingUpdateTime from "../components/ranking/RankingUpdateTime"; import { useFetch } from "../hooks/useFetch"; import { getRanking, type RankingPage as RankingPageType } from "../api/client/getRanking"; @@ -27,6 +28,7 @@ export default function RankingPage() { const [page, setPage] = useState(1); const [rows, setRows] = useState([]); const [hasMore, setHasMore] = useState(true); + const [updateTime, setUpdateTime] = useState(""); const loaderRef = useRef(null); const SIZE = 20; @@ -85,6 +87,7 @@ export default function RankingPage() { if (!data) return; setHasMore(data.hasNext); + setUpdateTime(data.updateTime); const mapped: RankingRowData[] = data.rows.map((row) => ({ ...row, @@ -141,7 +144,11 @@ export default function RankingPage() {
- +
+ + +
+
From 6746f158b6517e7af46bca9c92e3448737a42589 Mon Sep 17 00:00:00 2001 From: marulog Date: Thu, 25 Dec 2025 18:56:13 +0900 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20pr=20=EB=82=B4=EC=9A=A9=20=EB=B0=98?= =?UTF-8?q?=EC=98=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/ranking/RankingRow.tsx | 2 +- src/components/ranking/RankingUpdateTime.tsx | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/components/ranking/RankingRow.tsx b/src/components/ranking/RankingRow.tsx index e7fa6eb..287cedd 100644 --- a/src/components/ranking/RankingRow.tsx +++ b/src/components/ranking/RankingRow.tsx @@ -1,6 +1,6 @@ import { getTierImageUrl } from "../../constants/tierMap"; import { getTeamLabel, type TeamName } from "@/types/team"; -import newPng from "../../assets/images/new444.png"; +import newPng from "@/assets/images/new444.png"; /** * author : 박준희 diff --git a/src/components/ranking/RankingUpdateTime.tsx b/src/components/ranking/RankingUpdateTime.tsx index 0e18c97..a44be3c 100644 --- a/src/components/ranking/RankingUpdateTime.tsx +++ b/src/components/ranking/RankingUpdateTime.tsx @@ -6,14 +6,16 @@ type Props = { }; const formatUpdateTime = (value: string) => { - const m = value.match(/^(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2})/); - if (!m) return `${value} KST 기준`; + const date = new Date(value); + if (isNaN(date.getTime())) { + return `${value} KST 기준`; + } - const yyyy = Number(m[1]); - const mm = Number(m[2]); - const dd = Number(m[3]); - const hh = m[4]; - const mi = m[5]; + const yyyy = date.getFullYear(); + const mm = date.getMonth() + 1; + const dd = date.getDate(); + const hh = String(date.getHours()).padStart(2, '0'); + const mi = String(date.getMinutes()).padStart(2, '0'); return `${yyyy}년 ${mm}월 ${dd}일 ${hh}:${mi} KST 기준`; };