diff --git a/neode-ui/src/components/PWAUpdatePrompt.vue b/neode-ui/src/components/PWAUpdatePrompt.vue index 2a4f3051..91d0c9b9 100644 --- a/neode-ui/src/components/PWAUpdatePrompt.vue +++ b/neode-ui/src/components/PWAUpdatePrompt.vue @@ -26,6 +26,7 @@ import { ref, onMounted } from 'vue' import BaseModal from '@/components/BaseModal.vue' import { useLoginTransitionStore } from '@/stores/loginTransition' +import { IS_DEMO } from '@/composables/useDemoIntro' const showUpdatePrompt = ref(false) let updateCallback: (() => Promise) | null = null @@ -53,6 +54,12 @@ function reloadAfterCinematic() { } onMounted(() => { + // The public demo has no version to update to — the prompt is noise, and + // both accept-paths end in a reload that replays the demo intro ("the site + // just reset itself"). skipWaiting/clientsClaim are off, so ignoring the + // waiting worker is safe: this page keeps its complete old cache, and the + // new build activates on the next visit. + if (IS_DEMO) return // Listen for service worker updates if ('serviceWorker' in navigator) { // On the very first visit the page loads with no controlling SW; the