diff options
Diffstat (limited to 'app/src/lib/svelte')
-rw-r--r-- | app/src/lib/svelte/ReloadPrompt.svelte | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/app/src/lib/svelte/ReloadPrompt.svelte b/app/src/lib/svelte/ReloadPrompt.svelte new file mode 100644 index 0000000..1d5dbf6 --- /dev/null +++ b/app/src/lib/svelte/ReloadPrompt.svelte @@ -0,0 +1,34 @@ +<script lang="ts"> + import { getToastStore, Toast } from "@skeletonlabs/skeleton"; + import { useRegisterSW } from "virtual:pwa-register/svelte"; + + const toastStore = getToastStore(); + + const { + updateServiceWorker, + } = useRegisterSW({ + onRegisteredSW(r) { + console.log("SW Registered: ", r) + }, + onNeedRefresh() { + toastStore.trigger({ + message: 'A new version of the application is available.', + autohide: false, + action: { + label: 'Refresh', + response: updateServiceWorker + } + }); + }, + onOfflineReady() { + toastStore.trigger({ + background: 'variant-filled-success', + message: 'Now ready for offline use!', + timeout: 5000 + }); + }, + onRegisterError(err) { + console.error("SW Registration Error: ", err) + } + }) +</script>
\ No newline at end of file |