diff options
| author | Mel <einebeere@gmail.com> | 2022-02-19 20:00:38 +0100 |
|---|---|---|
| committer | Mel <einebeere@gmail.com> | 2022-02-19 20:00:38 +0100 |
| commit | bf1450799df0deb424a9675be89e13c29e3620d7 (patch) | |
| tree | 6a5f2f7559c5946058deadf8375f6609485a3d3f /assets/src/components/share/RequestList.svelte | |
| parent | 5384c34952b031995ecb8aa58d72954b0c685e18 (diff) | |
| download | rook-bf1450799df0deb424a9675be89e13c29e3620d7.tar.zst rook-bf1450799df0deb424a9675be89e13c29e3620d7.zip | |
Split state into stages to handle messages
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)} |
