add favorite system and other small tweaks and fixes.
continuous-integration/drone/push Build is passing

This commit is contained in:
2021-02-27 16:47:57 +01:00
parent 48b439af4f
commit 16237a89a4
20 changed files with 147 additions and 39 deletions
+16 -4
View File
@@ -5,7 +5,7 @@
import RefreshSelection from "../components/RefreshSelection.svelte";
import type { ProjectResult } from "../models/project";
import { fpGoalStore } from "../stores/goal";
import { fpProjectStore } from "../stores/project";
import { fpProjectStore, fpProjectStore2 } from "../stores/project";
import { fpTaskStore } from "../stores/tasks";
let fakeMap: {[projectId: string]: boolean} = {}
@@ -39,6 +39,14 @@
}
}
$: {
if ($fpProjectStore2.stale && !$fpProjectStore2.loading) {
fpProjectStore2.load({
favorite: true,
});
}
}
$: {
const individualTasks = $fpTaskStore.tasks
.filter(t => $fpProjectStore.projects.find(p => p.id === t.projectId) == null)
@@ -92,11 +100,15 @@
<h1>Upcoming Deadlines</h1>
{/if}
{#each sortedProjects as project (project.id)}
<ProjectEntry isFake={fakeMap[project.id]} linkProject hideInactive project={project} />
<ProjectEntry isFake={fakeMap[project.id]} hideInactive project={project} />
{/each}
{#if !$fpProjectStore.loading && $fpProjectStore.projects.length === 0}
<EmptyList icon="check" text="All good!" />
{#if !$fpProjectStore2.loading || $fpProjectStore2.projects.length > 0}
<h1>Starred Projects</h1>
{/if}
{#each $fpProjectStore2.projects as project (project.id)}
<ProjectEntry hideInactive project={project} />
{/each}
</div>
</div>
<RefreshSelection />
+1 -1
View File
@@ -10,7 +10,7 @@
let groupedLogs: {day: number, text: string, logs: LogResult[]}[] = [];
let minTime = formatFormTime($logStore.filter.minTime || startOfWeek(new Date()));
let maxTime = formatFormTime(endOfWeek(new Date()));
let maxTime = formatFormTime($logStore.filter.maxTime || endOfWeek(new Date()));
let emptyMessage = `No logs since ${formatWeekdayDate(minTime)}.`;
let error = "";
let now = new Date();
-5
View File
@@ -1,12 +1,8 @@
<script lang="ts">
import Boi from "../components/Boi.svelte";
import QuestLog from "../components/QuestLog.svelte";
import RefreshSelection from "../components/RefreshSelection.svelte";
import type { ModalData } from "../stores/modal";
import projectStore from "../stores/project";
const mdProjectAdd: ModalData = {name: "project.add"};
$: {
if (($projectStore.stale || $projectStore.filter.active != null) && !$projectStore.loading) {
projectStore.load({});
@@ -16,7 +12,6 @@
<div class="page">
<QuestLog projects={$projectStore.projects} />
<Boi open={mdProjectAdd}>Add Project</Boi>
</div>
<RefreshSelection />