diff options
| author | Melonai <einebeere@gmail.com> | 2021-06-04 19:42:42 +0200 |
|---|---|---|
| committer | Melonai <einebeere@gmail.com> | 2021-06-04 19:42:42 +0200 |
| commit | c575119a90a028dd109434a4b8889adceac3df93 (patch) | |
| tree | c20da8d479c2acae031b13fa23d2b0aed25a5d9b /assets/src/components/share | |
| parent | e6a567090d5e14605e6d4722fc51d7c56b9410ee (diff) | |
| download | rook-c575119a90a028dd109434a4b8889adceac3df93.tar.zst rook-c575119a90a028dd109434a4b8889adceac3df93.zip | |
Signaling event processing
Diffstat (limited to 'assets/src/components/share')
| -rw-r--r-- | assets/src/components/share/DataPicker.svelte | 16 | ||||
| -rw-r--r-- | assets/src/components/share/Request.svelte | 31 | ||||
| -rw-r--r-- | assets/src/components/share/Requests.svelte | 20 |
3 files changed, 67 insertions, 0 deletions
diff --git a/assets/src/components/share/DataPicker.svelte b/assets/src/components/share/DataPicker.svelte new file mode 100644 index 0000000..6e8dbd4 --- /dev/null +++ b/assets/src/components/share/DataPicker.svelte @@ -0,0 +1,16 @@ +<script lang="ts"> + import data from "../../stores/data"; + + let value = ""; + + const submit = () => { + data.set(value); + }; + + // TODO: Accept data other than text. +</script> + +<form on:submit|preventDefault={submit}> + <input type="text" bind:value /> + <input type="submit" value="Submit" /> +</form> diff --git a/assets/src/components/share/Request.svelte b/assets/src/components/share/Request.svelte new file mode 100644 index 0000000..26002ae --- /dev/null +++ b/assets/src/components/share/Request.svelte @@ -0,0 +1,31 @@ +<script lang="ts"> + import { offer } from "../../network/transfer/transfer"; + + export let token: string; + + async function accept() { + const transfer = await offer(token); + } + + function decline() {} +</script> + +<div class="container"> + <span>{token}</span> + <div class="buttons"> + <button on:click={accept}>Accept</button> + <button on:click={decline}>X</button> + </div> +</div> + +<style> + .container { + display: flex; + justify-content: space-between; + align-items: center; + } + + .buttons { + display: flex; + } +</style> diff --git a/assets/src/components/share/Requests.svelte b/assets/src/components/share/Requests.svelte new file mode 100644 index 0000000..509d7be --- /dev/null +++ b/assets/src/components/share/Requests.svelte @@ -0,0 +1,20 @@ +<script lang="ts"> + import { getOwnToken, start, Type } from "../../network/channel/connection"; + + import requests from "../../stores/requests"; + import Request from "./Request.svelte"; + + const startPromise = start(Type.SHARE); + + // TODO: Switch to store-based state updates. +</script> + +{#await startPromise} + <h3>Fetching token...</h3> +{:then} + <h3>Your token is <b>{getOwnToken()}</b>.</h3> + + {#each $requests as request} + <Request token={request} /> + {/each} +{/await} |
