From 89cd970d5a56bbfa4b67d8d25b5fe92fa30c5d98 Mon Sep 17 00:00:00 2001 From: Zamitto <167933696+zamitto@users.noreply.github.com> Date: Fri, 20 Dec 2024 20:31:31 -0300 Subject: [PATCH] feat: refactor component --- .../pages/achievements/achievement-list.tsx | 40 +++++++++++++++++ .../achievements/achievements-content.tsx | 43 ++----------------- src/types/index.ts | 1 + 3 files changed, 45 insertions(+), 39 deletions(-) create mode 100644 src/renderer/src/pages/achievements/achievement-list.tsx diff --git a/src/renderer/src/pages/achievements/achievement-list.tsx b/src/renderer/src/pages/achievements/achievement-list.tsx new file mode 100644 index 00000000..e6c6166e --- /dev/null +++ b/src/renderer/src/pages/achievements/achievement-list.tsx @@ -0,0 +1,40 @@ +import { useDate } from "@renderer/hooks"; +import type { UserAchievement } from "@types"; +import { useTranslation } from "react-i18next"; +import * as styles from "./achievements.css"; + +interface AchievementListProps { + achievements: UserAchievement[]; +} + +export function AchievementList({ achievements }: AchievementListProps) { + const { t } = useTranslation("achievement"); + const { formatDateTime } = useDate(); + + return ( + + ); +} diff --git a/src/renderer/src/pages/achievements/achievements-content.tsx b/src/renderer/src/pages/achievements/achievements-content.tsx index a7a9aaa8..bc15da17 100644 --- a/src/renderer/src/pages/achievements/achievements-content.tsx +++ b/src/renderer/src/pages/achievements/achievements-content.tsx @@ -1,9 +1,8 @@ import { setHeaderTitle } from "@renderer/features"; -import { useAppDispatch, useDate, useUserDetails } from "@renderer/hooks"; +import { useAppDispatch, useUserDetails } from "@renderer/hooks"; import { steamUrlBuilder } from "@shared"; import { useContext, useEffect, useRef, useState } from "react"; import { useTranslation } from "react-i18next"; -import * as styles from "./achievements.css"; import { buildGameDetailsPath, formatDownloadProgress, @@ -11,11 +10,13 @@ import { import { LockIcon, PersonIcon, TrophyIcon } from "@primer/octicons-react"; import { SPACING_UNIT, vars } from "@renderer/theme.css"; import { gameDetailsContext } from "@renderer/context"; -import type { ComparedAchievements, UserAchievement } from "@types"; +import type { ComparedAchievements } from "@types"; import { average } from "color.js"; import Color from "color"; import { Link } from "@renderer/components"; import { ComparedAchievementList } from "./compared-achievement-list"; +import * as styles from "./achievements.css"; +import { AchievementList } from "./achievement-list"; interface UserInfo { id: string; @@ -30,10 +31,6 @@ interface AchievementsContentProps { comparedAchievements: ComparedAchievements | null; } -interface AchievementListProps { - achievements: UserAchievement[]; -} - interface AchievementSummaryProps { user: UserInfo; isComparison?: boolean; @@ -171,38 +168,6 @@ function AchievementSummary({ user, isComparison }: AchievementSummaryProps) { ); } -function AchievementList({ achievements }: AchievementListProps) { - const { t } = useTranslation("achievement"); - const { formatDateTime } = useDate(); - - return ( - - ); -} - export function AchievementsContent({ otherUser, comparedAchievements, diff --git a/src/types/index.ts b/src/types/index.ts index 3669a91e..4a6575c1 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -35,6 +35,7 @@ export interface AchievementData { icon: string; icongray: string; hidden: boolean; + points?: number; } export interface UserAchievement {