Browse Source

filter history events by interval.

master
Gisle Aune 2 years ago
parent
commit
cac4ac0bf6
  1. 13
      frontend/src/lib/components/history/HistoryGroupList.svelte
  2. 4
      frontend/src/routes/[scope=prettyid]/history/[interval].svelte

13
frontend/src/lib/components/history/HistoryGroupList.svelte

@ -1,10 +1,21 @@
<script lang="ts">
import type { TimeInterval } from "$lib/models/common";
import parseInterval, { datesOf } from "$lib/utils/timeinterval";
import { getItemListContext } from "../contexts/ItemListContext.svelte";
import { getTimeContext } from "../contexts/TimeContext.svelte";
import HistoryGroupSection from "./HistoryGroupSection.svelte";
export let intervalString: string;
const {groups, items} = getItemListContext();
const {now} = getTimeContext();
let interval: TimeInterval<string>
$: interval = datesOf(parseInterval(intervalString, $now));
</script>
{#each $groups as group (group.label)}
<HistoryGroupSection group={group} items={$items} />
{#if (group.label >= interval.min && group.label <= interval.max)}
<HistoryGroupSection group={group} items={$items} />
{/if}
{/each}

4
frontend/src/routes/[scope=prettyid]/history/[interval].svelte

@ -2,7 +2,7 @@
import type { Load } from "@sveltejs/kit/types/internal";
import { sl3 } from "$lib/clients/sl3";
import parseInterval, { datesOf, intervalLabel } from "$lib/utils/timeinterval";
import parseInterval, { datesOf } from "$lib/utils/timeinterval";
import type Item from "$lib/models/item";
import type { ItemFilter, ItemGroup } from "$lib/models/item";
@ -84,7 +84,7 @@
<ToggleIcon inverse name="calendar" bind:value={$session.groupOptions.hideScheduled} on:click={triggerReload} />
{/if}
</HistorySelector>
<HistoryGroupList />
<HistoryGroupList intervalString={intervalString} />
</Main>
<ItemCreateModal />

Loading…
Cancel
Save