summaryrefslogtreecommitdiff
path: root/ui/lib
diff options
context:
space:
mode:
Diffstat (limited to 'ui/lib')
-rw-r--r--ui/lib/apiServer.js8
-rw-r--r--ui/lib/components/PushSubscription.svelte9
2 files changed, 12 insertions, 5 deletions
diff --git a/ui/lib/apiServer.js b/ui/lib/apiServer.js
index f55f271..9eeb128 100644
--- a/ui/lib/apiServer.js
+++ b/ui/lib/apiServer.js
@@ -47,7 +47,7 @@ export async function getInvite(inviteId) {
}
export async function acceptInvite(inviteId, name, password) {
- return apiServer
+ return await apiServer
.post(`/invite/${inviteId}`, {
name,
password,
@@ -56,7 +56,11 @@ export async function acceptInvite(inviteId, name, password) {
}
export async function createPushSubscription(subscription, vapid) {
- return apiServer.post('/push/subscribe', { subscription, vapid }).catch(responseError);
+ return await apiServer.post('/push/subscribe', { subscription, vapid }).catch(responseError);
+}
+
+export async function sendPing() {
+ return await apiServer.post('/push/ping', {}).catch(responseError);
}
export function subscribeToEvents(resumePoint) {
diff --git a/ui/lib/components/PushSubscription.svelte b/ui/lib/components/PushSubscription.svelte
index a85cbb3..aab4929 100644
--- a/ui/lib/components/PushSubscription.svelte
+++ b/ui/lib/components/PushSubscription.svelte
@@ -1,5 +1,5 @@
<script>
- let { vapid, subscription, subscribe = async () => null } = $props();
+ let { vapid, subscription, subscribe = async () => null, ping = async () => null } = $props();
let pending = $state(false);
function onsubmit(callback) {
@@ -16,12 +16,15 @@
}
</script>
-{#if vapid !== null}
- {#if subscription === null}
+{#if !!vapid}
+ {#if !subscription}
<form class="form" onsubmit={onsubmit(subscribe)}>
<button disabled={pending} type="submit">create push subscription</button>
</form>
{/if}
+ <form class="form" onsubmit={onsubmit(ping)}>
+ <button disabled={pending} type="submit">send test notification</button>
+ </form>
{:else}
Waiting for VAPID key…
{/if}