sketch/webui: add untracked files notification to diff view

Add warning in diff view about untracked files.

Co-Authored-By: sketch <hello@sketch.dev>
Change-ID: s45fbbdf5b3d703e4k
diff --git a/webui/src/web-components/git-data-service.ts b/webui/src/web-components/git-data-service.ts
index 6ff89af..bfe306e 100644
--- a/webui/src/web-components/git-data-service.ts
+++ b/webui/src/web-components/git-data-service.ts
@@ -65,6 +65,12 @@
    * @returns List of changed files
    */
   getUnstagedChanges(from?: string): Promise<GitDiffFile[]>;
+
+  /**
+   * Fetches list of untracked files in the repository
+   * @returns List of untracked file paths
+   */
+  getUntrackedFiles(): Promise<string[]>;
 }
 
 /**
@@ -232,4 +238,22 @@
       throw error;
     }
   }
+
+  async getUntrackedFiles(): Promise<string[]> {
+    try {
+      const response = await fetch("git/untracked");
+
+      if (!response.ok) {
+        throw new Error(
+          `Failed to fetch untracked files: ${response.statusText}`,
+        );
+      }
+
+      const data = await response.json();
+      return data.untracked_files || [];
+    } catch (error) {
+      console.error("Error fetching untracked files:", error);
+      throw error;
+    }
+  }
 }