From 8a30bcbdf9264d235bf93da3df8e170cfde53d02 Mon Sep 17 00:00:00 2001 From: Joe Carstairs Date: Thu, 12 Dec 2024 08:26:53 +0000 Subject: Removes web GUI --- gui/src/components/histogram/Histogram.scss | 84 ----------------------------- gui/src/components/histogram/Histogram.tsx | 80 --------------------------- 2 files changed, 164 deletions(-) delete mode 100644 gui/src/components/histogram/Histogram.scss delete mode 100644 gui/src/components/histogram/Histogram.tsx (limited to 'gui/src/components/histogram') diff --git a/gui/src/components/histogram/Histogram.scss b/gui/src/components/histogram/Histogram.scss deleted file mode 100644 index e3f4604..0000000 --- a/gui/src/components/histogram/Histogram.scss +++ /dev/null @@ -1,84 +0,0 @@ -table { - border-collapse: collapse; -} - -:is(thead, .ratio__text) { - opacity: 0; - height: 0; - width: 0; -} - -tr { - display: grid; - gap: 0.3rem; - grid-template-columns: 10rem 1fr min-content; - justify-content: start; -} - -td.name { - text-align: right; -} - -td.ratio { - width: 10rem; - display: grid; - grid-template-columns: 5rem 5rem; - grid-template-rows: 1fr; - align-items: center; - - &::before { - content: ''; - display: block; - height: 100%; - grid-row: 1 / 2; - z-index: -1; - } - - &:is(.ratio--save, .ratio--spend)::before { - grid-column: 1 / 2; - border-right: 1px dashed white; - position: relative; - right: -1px; - } - - &.ratio--arrears::before { - grid-column: 2 / 3; - border-left: 1px dashed white; - left: -1px; - } -} - -.ratio__bar { - display: block; - width: calc(3rem * var(--normal-abs-ratio) + 1px); - height: 33%; - background-color: var(--category-highlight-color); - grid-row: 1 / 2; - - :is(.ratio--save, .ratio--spend) & { - grid-column: 2 / 3; - } - - .ratio--arrears & { - grid-column: 1 / 2; - position: relative; - right: -1px; - justify-self: end; - } -} - -td.balance { - color: var(--category-highlight-color); -} - -.ratio--arrears { - --category-highlight-color: crimson; -} - -.ratio--save { - --category-highlight-color: white; -} - -.ratio--spend { - --category-highlight-color: dodgerblue; -} diff --git a/gui/src/components/histogram/Histogram.tsx b/gui/src/components/histogram/Histogram.tsx deleted file mode 100644 index 1dd8c65..0000000 --- a/gui/src/components/histogram/Histogram.tsx +++ /dev/null @@ -1,80 +0,0 @@ -import { BalanceToBudgetRatio } from "../../types/balanceToBudgetRatio"; -import { Category } from "../../types/category"; -import { Group } from "../../types/group"; -import { groupCategories } from "../../util/groupCategories"; -import './Histogram.scss'; - -function Histogram({ categories }: Props) { - if (categories === null) { - return ( -

No categories to show

- ); - } - - const balanceToBudgetRatioNormaliser = BalanceToBudgetRatio.makeNormaliser(...categories.map(c => c.balanceToBudgetRatio)); - for (const category of categories) { - category.balanceToBudgetRatio = balanceToBudgetRatioNormaliser(category.balanceToBudgetRatio); - } - - const groups = [...groupCategories(categories)]; - - return ( - - - - - - - - - { - groups.map(g => ) - } -
CategoryBalance-to-Budget RatioBalance
- ); -} - -function RowGroup({ group }: GroupProps) { - return ( - - {group.name} - { - group.categories - .sort((c1, c2) => BalanceToBudgetRatio.compare(c1.balanceToBudgetRatio, c2.balanceToBudgetRatio)) - .map((category) => Row({ category })) - } - - ); -} - -function Row({ category }: RowProps) { - return ( - - {category.name} - - - {category.balanceToBudgetRatio?.toString() ?? ''} - - - - {category.currentBalance.toString()} - - ); -} - -type Props = { - categories: Category[] | null, -}; - -type GroupProps = { - group: Group; -} - -type RowProps = { - category: Category, -}; - -export default Histogram; -- cgit v1.2.3