about summary refs log tree commit diff
path: root/assets/src/components
diff options
context:
space:
mode:
Diffstat (limited to 'assets/src/components')
-rw-r--r--assets/src/components/DataPicker.svelte14
-rw-r--r--assets/src/components/IncomingRequests.svelte20
-rw-r--r--assets/src/components/Share.svelte20
3 files changed, 54 insertions, 0 deletions
diff --git a/assets/src/components/DataPicker.svelte b/assets/src/components/DataPicker.svelte
new file mode 100644
index 0000000..433018d
--- /dev/null
+++ b/assets/src/components/DataPicker.svelte
@@ -0,0 +1,14 @@
+<script lang="ts">
+    import data from "../stores/data";
+
+    let value = "";
+
+    const submit = () => {
+        data.set(value);
+    };
+</script>
+
+<form on:submit|preventDefault={submit}>
+    <input type="text" bind:value />
+    <input type="submit" value="Submit" />
+</form>
diff --git a/assets/src/components/IncomingRequests.svelte b/assets/src/components/IncomingRequests.svelte
new file mode 100644
index 0000000..1db50af
--- /dev/null
+++ b/assets/src/components/IncomingRequests.svelte
@@ -0,0 +1,20 @@
+<script lang="ts">
+    import { getToken, joinShareChannel } from "../network/socket";
+    import requests from "../stores/requests";
+
+    const startConnection = async () => {
+        const token = await getToken();
+        joinShareChannel(token);
+        return token;
+    };
+</script>
+
+{#await startConnection()}
+    <h3>Fetching token...</h3>
+{:then token}
+    <h3>Your token is <b>{token}</b>.</h3>
+
+    {#each $requests as request}
+        <p>{JSON.stringify(request)}</p>
+    {/each}
+{/await}
diff --git a/assets/src/components/Share.svelte b/assets/src/components/Share.svelte
new file mode 100644
index 0000000..5ea55b2
--- /dev/null
+++ b/assets/src/components/Share.svelte
@@ -0,0 +1,20 @@
+<script lang="ts">
+    import data from "../stores/data";
+    import DataPicker from "./DataPicker.svelte";
+    import IncomingRequests from "./IncomingRequests.svelte";
+</script>
+
+<main>
+    <h1>Sharing</h1>
+    {#if !$data.locked}
+        <DataPicker />
+    {:else}
+        <IncomingRequests />
+    {/if}
+</main>
+
+<style>
+    h1 {
+        font-size: 4em;
+    }
+</style>