diff options
Diffstat (limited to 'assets/src/components/share/RequestList.svelte')
| -rw-r--r-- | assets/src/components/share/RequestList.svelte | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/assets/src/components/share/RequestList.svelte b/assets/src/components/share/RequestList.svelte index 510e80c..1a3b715 100644 --- a/assets/src/components/share/RequestList.svelte +++ b/assets/src/components/share/RequestList.svelte @@ -1,6 +1,20 @@ <script lang="ts"> - import requests from "../../stores/received_requests"; + import { derived } from "svelte/store"; + import type { Readable } from "svelte/store"; + import type { IncomingRequest } from "../../models/incoming_request"; + import { getShareState, Sharing } from "../../state/share"; import Request from "./Request.svelte"; + + const sharing = getShareState().state as Sharing; + const requestMap = sharing.getRequests(); + + function requestSorter(a: IncomingRequest, b: IncomingRequest): number { + return a.info.receivedAt.getTime() - b.info.receivedAt.getTime(); + } + + const requests: Readable<IncomingRequest[]> = derived(requestMap, $map => { + return Object.values($map).sort(requestSorter); + }); </script> {#each $requests as request (request.info.token)} |
