Build tree couples

This commit is contained in:
2023-08-21 17:53:51 +02:00
parent c414defb19
commit 4d5bdaad57
4 changed files with 108 additions and 6 deletions

View File

@ -1,5 +1,4 @@
import { useParams } from "react-router-dom";
import { useFamily } from "../../widgets/BaseFamilyRoute";
import ClearIcon from "@mui/icons-material/Clear";
import {
Alert,
FormControl,
@ -12,10 +11,15 @@ import {
Tab,
Tabs,
} from "@mui/material";
import { MemberItem } from "../../widgets/MemberItem";
import ClearIcon from "@mui/icons-material/Clear";
import { RouterLink } from "../../widgets/RouterLink";
import React from "react";
import { useParams } from "react-router-dom";
import {
buildAscendingTree,
buildDescendingTree,
} from "../../utils/family_tree";
import { useFamily } from "../../widgets/BaseFamilyRoute";
import { MemberItem } from "../../widgets/MemberItem";
import { RouterLink } from "../../widgets/RouterLink";
enum CurrTab {
BasicTree,
@ -37,6 +41,16 @@ export function FamilyMemberTreeRoute(): React.ReactElement {
const member = family.members.get(Number(memberId));
const tree = React.useMemo(
() =>
!member
? null
: currMode === TreeMode.Ascending
? buildAscendingTree(member.id, family.members, family.couples)
: buildDescendingTree(member.id, family.members, family.couples),
[member, currMode, family.members, family.couples]
);
if (!member) {
return (
<Alert severity="error">

View File

@ -1,6 +1,6 @@
import { useNavigate } from "react-router-dom";
import { MemberInput } from "../../widgets/forms/MemberInput";
import { useFamily } from "../../widgets/BaseFamilyRoute";
import { MemberInput } from "../../widgets/forms/MemberInput";
export function FamilyTreeRoute(): React.ReactElement {
const n = useNavigate();