diff options
| author | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-05-12 18:47:33 +0100 |
|---|---|---|
| committer | Alex Pooley (@zuedev) <zuedev@gmail.com> | 2026-05-12 18:47:33 +0100 |
| commit | 3774d5dfd730ab947438ba45dced508602483324 (patch) | |
| tree | 83baafed9d2476e75bf43f84d3a98567943e600a /communities/red-right-hand/vitepress/.vitepress/theme/components/ReloadAuto.vue | |
| parent | 98ec34378c1a40803fcd04494518be9b80536355 (diff) | |
| download | unnamed-group-3774d5dfd730ab947438ba45dced508602483324.tar unnamed-group-3774d5dfd730ab947438ba45dced508602483324.tar.gz unnamed-group-3774d5dfd730ab947438ba45dced508602483324.tar.bz2 unnamed-group-3774d5dfd730ab947438ba45dced508602483324.tar.xz unnamed-group-3774d5dfd730ab947438ba45dced508602483324.zip | |
add red-right-hand community projects
Diffstat (limited to 'communities/red-right-hand/vitepress/.vitepress/theme/components/ReloadAuto.vue')
| -rw-r--r-- | communities/red-right-hand/vitepress/.vitepress/theme/components/ReloadAuto.vue | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/communities/red-right-hand/vitepress/.vitepress/theme/components/ReloadAuto.vue b/communities/red-right-hand/vitepress/.vitepress/theme/components/ReloadAuto.vue new file mode 100644 index 0000000..5796198 --- /dev/null +++ b/communities/red-right-hand/vitepress/.vitepress/theme/components/ReloadAuto.vue @@ -0,0 +1,60 @@ +<script setup lang="ts"> +import { onBeforeMount, ref } from "vue"; + +const offlineReady = ref(false); +function onOfflineReady() { + offlineReady.value = true; +} +async function close() { + offlineReady.value = false; +} + +onBeforeMount(async () => { + const { registerSW } = await import("virtual:pwa-register"); + registerSW({ + immediate: true, + onOfflineReady, + onRegistered() { + console.info("Service Worker registered"); + }, + onRegisterError(e) { + console.error("Service Worker registration error!", e); + }, + }); +}); +</script> + +<template> + <template v-if="offlineReady"> + <div class="pwa-toast" role="alertdialog" aria-labelledby="pwa-message"> + <div id="pwa-message" class="mb-3">App ready to work offline</div> + <button type="button" class="pwa-cancel" @click="close">Close</button> + </div> + </template> +</template> + +<style> +.pwa-toast { + position: fixed; + right: 0; + bottom: 0; + margin: 16px; + padding: 12px; + border: 1px solid #8885; + border-radius: 4px; + z-index: 100; + text-align: left; + box-shadow: 3px 4px 5px 0 #8885; + background-color: white; +} +.pwa-toast #pwa-message { + margin-bottom: 8px; +} +.pwa-toast button { + border: 1px solid #8885; + outline: none; + margin-right: 5px; + border-radius: 2px; + padding: 3px 10px; +} +</style> |
