From d97d5f11e7807906cff2cf41cad815fb05b0096c Mon Sep 17 00:00:00 2001
From: Victor Borges <victor1882@outlook.com>
Date: Sat, 3 May 2025 15:19:10 -0300
Subject: gets the correct branch now

---
 src/index.tsx | 21 +++++++++------------
 1 file changed, 9 insertions(+), 12 deletions(-)

(limited to 'src/index.tsx')

diff --git a/src/index.tsx b/src/index.tsx
index 74af918..ed3327f 100755
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -1,12 +1,13 @@
 import {useEffect, useState} from "react";
 import {FaClipboardList} from "react-icons/fa";
-import {definePlugin} from "decky-frontend-lib";
 import remarkHtml from "remark-html"
 import remarkParse from "remark-parse"
 import remarkGfm from "remark-gfm"
 import {unified} from "unified"
 import {patchPartnerEventStore} from "./PartnerEventStorePatch";
 import {staticClasses} from "@decky/ui";
+import {definePlugin} from "@decky/api"
+import {fetchReleases} from "./FetchReleases";
 
 function Content() {
   const [changelogHtml, setChangelogHtml] = useState<string | null>(null);
@@ -14,25 +15,20 @@ function Content() {
   const [isRefreshing, setIsRefreshing] = useState<boolean>(false);
 
   const fetchChangelog = async (signal?: AbortSignal) => {
-    const url = "https://api.github.com/repos/ublue-os/bazzite/releases/latest";
     try {
-      const response = await fetch(url, {
-        headers: {
-          Accept: "application/vnd.github.v3+json",
-        },
-        signal,
-      });
+      const generator = fetchReleases(signal);
+      const iterator = await generator.next();
 
-      if (!response.ok) {
-        throw new Error(`Failed to fetch: ${response.statusText}`);
+      if (!iterator || iterator.done) {
+        setError("An unknown error occurred while fetching the changelog.");
+        return;
       }
 
-      const data = await response.json();
       const html = await unified()
         .use(remarkParse)
         .use(remarkGfm)
         .use(remarkHtml)
-        .process(data.body)
+        .process(iterator.value.body);
 
       setChangelogHtml(html.value as string);
       setError(null);
@@ -181,6 +177,7 @@ function Content() {
   );
 }
 
+// noinspection JSUnusedGlobalSymbols
 export default definePlugin(() => {
   const patches = patchPartnerEventStore();
 
-- 
cgit v1.2.3

