mirror of
https://github.com/duckietm/Nitro-V3.git
synced 2026-06-20 15:36:18 +00:00
🆙 Init V3
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
import { FC, useEffect } from 'react';
|
||||
import { AchievementCategory } from '../../api';
|
||||
import { Column } from '../../common';
|
||||
import { useAchievements } from '../../hooks';
|
||||
import { AchievementDetailsView } from './AchievementDetailsView';
|
||||
import { AchievementListView } from './achievement-list';
|
||||
|
||||
interface AchievementCategoryViewProps {
|
||||
category: AchievementCategory;
|
||||
}
|
||||
|
||||
export const AchievementCategoryView: FC<AchievementCategoryViewProps> = (
|
||||
props,
|
||||
) =>
|
||||
{
|
||||
const { category = null } = props;
|
||||
const { selectedAchievement = null, setSelectedAchievementId = null } =
|
||||
useAchievements();
|
||||
|
||||
useEffect(() =>
|
||||
{
|
||||
if(!category) return;
|
||||
|
||||
if(!selectedAchievement)
|
||||
{
|
||||
setSelectedAchievementId(
|
||||
category?.achievements?.[0]?.achievementId,
|
||||
);
|
||||
}
|
||||
}, [category, selectedAchievement, setSelectedAchievementId]);
|
||||
|
||||
if(!category) return null;
|
||||
|
||||
return (
|
||||
<Column fullHeight justifyContent="between">
|
||||
<AchievementListView achievements={category.achievements} />
|
||||
{!!selectedAchievement && (
|
||||
<AchievementDetailsView achievement={selectedAchievement} />
|
||||
)}
|
||||
</Column>
|
||||
);
|
||||
};
|
||||
Reference in New Issue
Block a user