Make simple tree browsable
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
cbaabb34d5
commit
96ca6fd7af
14
geneit_app/package-lock.json
generated
14
geneit_app/package-lock.json
generated
@ -35,6 +35,7 @@
|
|||||||
"react-easy-crop": "^5.0.0",
|
"react-easy-crop": "^5.0.0",
|
||||||
"react-router-dom": "^6.11.2",
|
"react-router-dom": "^6.11.2",
|
||||||
"react-scripts": "^5.0.1",
|
"react-scripts": "^5.0.1",
|
||||||
|
"react-zoom-pan-pinch": "^3.1.0",
|
||||||
"svg2pdf.js": "^2.2.2",
|
"svg2pdf.js": "^2.2.2",
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.9.5",
|
||||||
"web-vitals": "^2.1.4"
|
"web-vitals": "^2.1.4"
|
||||||
@ -13603,6 +13604,19 @@
|
|||||||
"react-dom": ">=16.6.0"
|
"react-dom": ">=16.6.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/react-zoom-pan-pinch": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/react-zoom-pan-pinch/-/react-zoom-pan-pinch-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-a3LlP8QPgTikvteCNkZ3X6wIWC0lrg1geP5WkUJyx2MXXAhHQek3r17N1nT/esOiWGuPIECnsd9AGoK8jOeGcg==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=8",
|
||||||
|
"npm": ">=5"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"react": "*",
|
||||||
|
"react-dom": "*"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/read-cache": {
|
"node_modules/read-cache": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz",
|
||||||
|
@ -30,6 +30,7 @@
|
|||||||
"react-easy-crop": "^5.0.0",
|
"react-easy-crop": "^5.0.0",
|
||||||
"react-router-dom": "^6.11.2",
|
"react-router-dom": "^6.11.2",
|
||||||
"react-scripts": "^5.0.1",
|
"react-scripts": "^5.0.1",
|
||||||
|
"react-zoom-pan-pinch": "^3.1.0",
|
||||||
"svg2pdf.js": "^2.2.2",
|
"svg2pdf.js": "^2.2.2",
|
||||||
"typescript": "^4.9.5",
|
"typescript": "^4.9.5",
|
||||||
"web-vitals": "^2.1.4"
|
"web-vitals": "^2.1.4"
|
||||||
|
@ -154,7 +154,7 @@ export function FamilyMemberTreeRoute(): React.ReactElement {
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* the tree itself */}
|
{/* the tree itself */}
|
||||||
<Paper style={{ flex: "1" }}>
|
<Paper style={{ flex: "1", display: "flex", flexDirection: "column" }}>
|
||||||
{currTab === CurrTab.BasicTree ? (
|
{currTab === CurrTab.BasicTree ? (
|
||||||
<BasicFamilyTree tree={tree!} depth={currDepth} />
|
<BasicFamilyTree tree={tree!} depth={currDepth} />
|
||||||
) : currTab === CurrTab.SimpleTree ? (
|
) : currTab === CurrTab.SimpleTree ? (
|
||||||
|
@ -3,6 +3,7 @@ import { Couple } from "../../api/CoupleApi";
|
|||||||
import { Member } from "../../api/MemberApi";
|
import { Member } from "../../api/MemberApi";
|
||||||
import { FamilyTreeNode } from "../../utils/family_tree";
|
import { FamilyTreeNode } from "../../utils/family_tree";
|
||||||
import { getTextWidth } from "../../utils/render_utils";
|
import { getTextWidth } from "../../utils/render_utils";
|
||||||
|
import { TransformComponent, TransformWrapper } from "react-zoom-pan-pinch";
|
||||||
|
|
||||||
const FACE_WIDTH = 60;
|
const FACE_WIDTH = 60;
|
||||||
const FACE_HEIGHT = 70;
|
const FACE_HEIGHT = 70;
|
||||||
@ -174,9 +175,17 @@ export function SimpleFamilyTree(p: {
|
|||||||
console.info(`tree width=${tree.width} height=${height}`);
|
console.info(`tree width=${tree.width} height=${height}`);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<svg width={tree.width} height={height} xmlns="http://www.w3.org/2000/svg">
|
<TransformWrapper maxScale={15} minScale={0.2}>
|
||||||
|
<TransformComponent wrapperStyle={{ width: "100%", flex: "1" }}>
|
||||||
|
<svg
|
||||||
|
width={tree.width}
|
||||||
|
height={height}
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
>
|
||||||
<NodeArea node={tree} x={0} y={0} />
|
<NodeArea node={tree} x={0} y={0} />
|
||||||
</svg>
|
</svg>
|
||||||
|
</TransformComponent>
|
||||||
|
</TransformWrapper>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user