Solve Diet view not showing excluded days

This commit is contained in:
Anders Englöf Ytterström 2025-02-06 13:04:37 +01:00
parent e176843da9
commit 394e1394e0
3 changed files with 14 additions and 16 deletions

View file

@ -381,8 +381,7 @@ const gym = [
}, },
]; ];
const diet = { const diet = [
days: [
{ date: "2025-02-10", completed: false }, { date: "2025-02-10", completed: false },
{ date: "2025-02-11", completed: false }, { date: "2025-02-11", completed: false },
{ date: "2025-02-12", completed: false }, { date: "2025-02-12", completed: false },
@ -405,6 +404,7 @@ const diet = {
{ date: "2025-03-01", completed: false }, { date: "2025-03-01", completed: false },
{ date: "2025-03-02", completed: false }, { date: "2025-03-02", completed: false },
{ date: "2025-03-03", completed: false }, { date: "2025-03-03", completed: false },
{ date: "2025-03-04", excluded: true, because: "Semmeldagen" },
{ date: "2025-03-05", completed: false }, { date: "2025-03-05", completed: false },
{ date: "2025-03-06", completed: false }, { date: "2025-03-06", completed: false },
{ date: "2025-03-07", completed: false }, { date: "2025-03-07", completed: false },
@ -429,6 +429,7 @@ const diet = {
{ date: "2025-03-26", completed: false }, { date: "2025-03-26", completed: false },
{ date: "2025-03-27", completed: false }, { date: "2025-03-27", completed: false },
{ date: "2025-03-28", completed: false }, { date: "2025-03-28", completed: false },
{ date: "2025-03-29", excluded: true, because: "Födelsedag" },
{ date: "2025-03-30", completed: false }, { date: "2025-03-30", completed: false },
{ date: "2025-03-31", completed: false }, { date: "2025-03-31", completed: false },
{ date: "2025-04-01", completed: false }, { date: "2025-04-01", completed: false },
@ -447,6 +448,7 @@ const diet = {
{ date: "2025-04-14", completed: false }, { date: "2025-04-14", completed: false },
{ date: "2025-04-15", completed: false }, { date: "2025-04-15", completed: false },
{ date: "2025-04-16", completed: false }, { date: "2025-04-16", completed: false },
{ date: "2025-04-17", excluded: true, because: "Påsk" },
{ date: "2025-04-18", completed: false }, { date: "2025-04-18", completed: false },
{ date: "2025-04-19", completed: false }, { date: "2025-04-19", completed: false },
{ date: "2025-04-10", completed: false }, { date: "2025-04-10", completed: false },
@ -491,13 +493,8 @@ const diet = {
{ date: "2025-05-29", completed: false }, { date: "2025-05-29", completed: false },
{ date: "2025-05-30", completed: false }, { date: "2025-05-30", completed: false },
{ date: "2025-05-31", completed: false }, { date: "2025-05-31", completed: false },
], ]
reds: { ;
"2025-03-04": "Semmeldagen",
"2025-03-29": "Födelsedag",
"2025-04-17": "Påsk",
},
};
export default { export default {
cardio, cardio,

View file

@ -1,8 +1,8 @@
<script lang="ts"> <script lang="ts">
import { diet } from "./store"; import { diet } from "./store";
import { dm, back } from "./common"; import { dm, back } from "./common";
const dayscount = $diet.days.length; const dayscount = $derived($diet.filter((c) => !c.excluded).length);
let done = $derived($diet.days.filter((c) => c.completed).length); let done = $derived($diet.filter((c) => c.completed).length);
</script> </script>
<header> <header>
@ -15,11 +15,11 @@
<progress max={dayscount} hidden value={done}></progress> <progress max={dayscount} hidden value={done}></progress>
<div class="calendar"> <div class="calendar">
{#each $diet.days as day, i} {#each $diet as day, i}
<article class="clickable"> <article class="clickable">
{#if day.date in $diet.reds} {#if day.excluded}
<div class="red"> <div class="red">
{$diet.reds[day.date]} {day.because}
</div> </div>
{:else} {:else}
<label> <label>

View file

@ -2,7 +2,8 @@
import { gym, cardio, diet, currentView } from "./store"; import { gym, cardio, diet, currentView } from "./store";
let gymProgress = $derived($gym.filter((c) => c.completed).length); let gymProgress = $derived($gym.filter((c) => c.completed).length);
let cardioProgress = $derived($cardio.filter((c) => c.completed).length); let cardioProgress = $derived($cardio.filter((c) => c.completed).length);
let dietProgress = $derived($diet.days.filter((c) => c.completed).length); let dietProgress = $derived($diet.filter((c) => c.completed).length);
let dietTotal = $derived($diet.filter((c) => !c.excluded).length);
const navigate = (v: 0 | 1 | 2 | 3 | 4) => { const navigate = (v: 0 | 1 | 2 | 3 | 4) => {
currentView.update((_) => v); currentView.update((_) => v);
@ -20,7 +21,7 @@
<span>Konditionsträning</span> <span>Konditionsträning</span>
</button> </button>
<button class="clickable diet" onclick={() => navigate(3)}> <button class="clickable diet" onclick={() => navigate(3)}>
<i>{dietProgress}</i> / {$diet.days.length} <i>{dietProgress}</i> / {dietTotal}
<span>Dietdagar</span> <span>Dietdagar</span>
</button> </button>
<button class="clickable info" onclick={() => navigate(4)}> <button class="clickable info" onclick={() => navigate(4)}>