diff options
Diffstat (limited to 'ui/lib')
| -rw-r--r-- | ui/lib/apiServer.js | 8 | ||||
| -rw-r--r-- | ui/lib/components/PushSubscription.svelte | 9 |
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} |
