diff --git a/aleksis/core/frontend/app/apollo.js b/aleksis/core/frontend/app/apollo.js index a78ef2247b9e6235373a128f9d1f6717de388af4..cc468b8e9550cf83f7d27de2ab547734f44b5526 100644 --- a/aleksis/core/frontend/app/apollo.js +++ b/aleksis/core/frontend/app/apollo.js @@ -60,12 +60,15 @@ const apolloOpts = { console.error("GraphQL query error:", err.message); } // Add a snackbar on all errors returned by the GraphQL endpoint - vm.$root.snackbarItems.push({ - id: crypto.randomUUID(), - timeout: 5000, - messageKey: "graphql.snackbar_error_message", - color: "red", - }); + // If App is offline, don't add snackbar since only the ping query is active + if (!vm.$root.offline) { + vm.$root.snackbarItems.push({ + id: crypto.randomUUID(), + timeout: 5000, + messageKey: "graphql.snackbar_error_message", + color: "red", + }); + } } if (networkError) { // Set app offline globally on network errors diff --git a/aleksis/core/frontend/app/sentry.js b/aleksis/core/frontend/app/sentry.js new file mode 100644 index 0000000000000000000000000000000000000000..ca54d469b0456568f0c952dac7bdfeb9d73ec6fd --- /dev/null +++ b/aleksis/core/frontend/app/sentry.js @@ -0,0 +1,4 @@ +import * as Sentry from "@sentry/vue"; +import { BrowserTracing } from "@sentry/tracing"; + +export default { Sentry, BrowserTracing }; diff --git a/aleksis/core/frontend/components/app/App.vue b/aleksis/core/frontend/components/app/App.vue index ab6abeb05ac8816e2e9f3423ba7fe69b74aa33b3..919fd2219cd24839a3a6f6758d675bacb78e1bf6 100644 --- a/aleksis/core/frontend/components/app/App.vue +++ b/aleksis/core/frontend/components/app/App.vue @@ -187,8 +187,8 @@ :key="item.id" :snackbar-item="item" /> - <v-snackbar v-model="needRefresh" v-if="!refreshDismissed"> - {{ $t("service_worker.new_version_available") }} + <v-snackbar v-model="needRefresh" v-if="!refreshDismissed" timeout="-1"> + {{ $t("service_worker.new_version_available") }} <template #action="{ attrs }"> <v-btn color="primary" text @click="updateServiceWorker()">