diff options
Diffstat (limited to 'frontend/src/lib/statistics/Stat.svelte')
-rw-r--r-- | frontend/src/lib/statistics/Stat.svelte | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/frontend/src/lib/statistics/Stat.svelte b/frontend/src/lib/statistics/Stat.svelte new file mode 100644 index 0000000..c657526 --- /dev/null +++ b/frontend/src/lib/statistics/Stat.svelte @@ -0,0 +1,27 @@ +<script lang="ts"> + export let title: string; + export let value: number; + export let precision = 0; + export let unit = ''; + + function format(value: number) { + if (Number.isNaN(value) || !Number.isFinite(value)) { + return 0; + } + + if (Number.isInteger(value)) { + return value; + } else { + return value.toFixed(precision); + } + } +</script> + +<div class="flex flex-col"> + <h2 class="text-lg font-medium"> + {title} + </h2> + <span class="text-base font-medium"> + {format(value)}{unit} + </span> +</div> |