|
|
@ -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} |