feat: define rings and quadrants via config file

closes #96
This commit is contained in:
Danny Koppenhagen
2021-10-03 20:18:22 +02:00
committed by Bastian
parent 8d28e4c3a3
commit 70ea8d5bcd
21 changed files with 1087 additions and 948 deletions

View File

@@ -1,21 +1,21 @@
import React from "react";
import { groupByQuadrants, Item, Group } from "../../model";
import { quadrants } from "../../config";
import { ConfigData } from "../../config";
import QuadrantSection from "../QuadrantSection/QuadrantSection";
import "./quadrant-grid.scss";
const renderQuadrant = (quadrantName: string, groups: Group) => {
const renderQuadrant = (quadrantName: string, groups: Group, config: ConfigData) => {
return (
<div key={quadrantName} className="quadrant-grid__quadrant">
<QuadrantSection quadrantName={quadrantName} groups={groups} />
<QuadrantSection quadrantName={quadrantName} groups={groups} config={config} />
</div>
);
};
export default function QuadrantGrid({ items }: { items: Item[] }) {
export default function QuadrantGrid({ items, config }: { items: Item[], config: ConfigData }) {
const groups = groupByQuadrants(items);
return (
<div className="quadrant-grid">
{quadrants.map((quadrantName) => renderQuadrant(quadrantName, groups))}
{Object.keys(config.quadrants).map((quadrantName: string) => renderQuadrant(quadrantName, groups, config))}
</div>
);
}