From 7cc1915c3bd43388998584a19b53bc4d97f8da5a Mon Sep 17 00:00:00 2001
From: Julian Leucker <leuckerj@gmail.com>
Date: Sat, 7 Jan 2023 19:43:24 +0100
Subject: [PATCH] Load also on component change

---
 aleksis/core/assets/app.js | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/aleksis/core/assets/app.js b/aleksis/core/assets/app.js
index cf54e309b..4efec02db 100644
--- a/aleksis/core/assets/app.js
+++ b/aleksis/core/assets/app.js
@@ -70,8 +70,14 @@ export const typeDefs = gql`
     read: Boolean!
   }
 
+  type globalState {
+    contentLoading: Boolean!
+    browserTitle: String
+  }
+
   type Mutation {
     checkSnackbarItem(id: ID!): Boolean
+    setLoading(state: Boolean!): Boolean
   }
 `;
 
@@ -86,6 +92,9 @@ const resolvers = {
       cache.writeQuery({query: gqlSnackbarItems, data});
       return currentItem.read;
     },
+    setLoading: (_, {state}, {}) => {
+      return true;
+    }
   },
 };
 
@@ -180,6 +189,17 @@ const app = new Vue({
   i18n,
 });
 
+router.beforeEach((to, from, next) => {
+  app.contentLoading = true;
+  next();
+})
+
+router.afterEach((to, from) => {
+  Vue.nextTick( () => {
+    app.contentLoading = false;
+  });
+})
+
 window.app = app;
 window.router = router;
 window.i18n = i18n;
-- 
GitLab