Bläddra i källkod

Fix & Feat Client App [Notification]

[+] fix(update.ts): remove unnecessary notification sending when permission is not granted
[+] feat(update.ts): add notification for already up to date version
H0llyW00dzZ 1 år sedan
förälder
incheckning
ddfd05b008
1 ändrade filer med 18 tillägg och 14 borttagningar
  1. 18 14
      app/store/update.ts

+ 18 - 14
app/store/update.ts

@@ -86,24 +86,28 @@ export const useUpdateStore = createPersistStore(
           // Check if notification permission is granted
           await window.__TAURI__?.notification.isPermissionGranted().then((granted) => {
             if (!granted) {
-              // Send a notification without waiting for permission (because we don't neeed a permisison once client is already click "check")
-              window.__TAURI__?.notification.sendNotification({
-                title: "ChatGPT Next Web",
-                body: `A new version (${remoteId}) is available.`,
-                icon: `${ChatGptIcon.src}`,
-                sound: "Default"
-              });
+              return
             } else {
               // Request permission to show notifications
               window.__TAURI__?.notification.requestPermission().then((permission) => {
                 if (permission === 'granted') {
-                  // Show a notification using Tauri
-                  window.__TAURI__?.notification.sendNotification({
-                    title: "ChatGPT Next Web",
-                    body: `A new version (${remoteId}) is available.`,
-                    icon: `${ChatGptIcon.src}`,
-                    sound: "Default"
-                  });
+                  if (version === remoteId) {
+                    // Show a notification using Tauri
+                    window.__TAURI__?.notification.sendNotification({
+                      title: "ChatGPT Next Web",
+                      body: "Already up to date",
+                      icon: `${ChatGptIcon.src}`,
+                      sound: "Default"
+                    });
+                  } else {
+                    // Show a notification for the new version using Tauri
+                    window.__TAURI__?.notification.sendNotification({
+                      title: "ChatGPT Next Web",
+                      body: `A new version (${remoteId}) is available.`,
+                      icon: `${ChatGptIcon.src}`,
+                      sound: "Default"
+                    });
+                  }
                 }
               });
             }