Manav Rathi преди 1 година
родител
ревизия
67aacf8391
променени са 5 файла, в които са добавени 17 реда и са изтрити 44 реда
  1. 0 3
      desktop/src/main/fs.ts
  2. 0 7
      desktop/src/main/ipc.ts
  3. 0 6
      desktop/src/preload.ts
  4. 17 24
      web/apps/photos/src/utils/file/index.ts
  5. 0 4
      web/packages/next/types/ipc.ts

+ 0 - 3
desktop/src/main/fs.ts

@@ -3,7 +3,6 @@
  */
 import { existsSync } from "node:fs";
 import fs from "node:fs/promises";
-import { writeStream } from "./stream";
 
 export const fsExists = (path: string) => existsSync(path);
 
@@ -25,8 +24,6 @@ export const fsWriteFile = (path: string, contents: string) =>
 
 /* TODO: Audit below this  */
 
-export const saveStreamToDisk = writeStream;
-
 export const isFolder = async (dirPath: string) => {
     if (!existsSync(dirPath)) return false;
     const stats = await fs.stat(dirPath);

+ 0 - 7
desktop/src/main/ipc.ts

@@ -26,7 +26,6 @@ import {
     fsRmdir,
     fsWriteFile,
     isFolder,
-    saveStreamToDisk,
 } from "./fs";
 import { logToDisk } from "./log";
 import {
@@ -186,12 +185,6 @@ export const attachIPCHandlers = () => {
 
     // - FS Legacy
 
-    ipcMain.handle(
-        "saveStreamToDisk",
-        (_, path: string, fileStream: ReadableStream) =>
-            saveStreamToDisk(path, fileStream),
-    );
-
     ipcMain.handle("isFolder", (_, dirPath: string) => isFolder(dirPath));
 
     // - Upload

+ 0 - 6
desktop/src/preload.ts

@@ -237,11 +237,6 @@ const updateWatchMappingIgnoredFiles = (
 
 // - FS Legacy
 
-const saveStreamToDisk = (
-    path: string,
-    fileStream: ReadableStream,
-): Promise<void> => ipcRenderer.invoke("saveStreamToDisk", path, fileStream);
-
 const isFolder = (dirPath: string): Promise<boolean> =>
     ipcRenderer.invoke("isFolder", dirPath);
 
@@ -357,7 +352,6 @@ contextBridge.exposeInMainWorld("electron", {
 
     // - FS legacy
     // TODO: Move these into fs + document + rename if needed
-    saveStreamToDisk,
     isFolder,
 
     // - Upload

+ 17 - 24
web/apps/photos/src/utils/file/index.ts

@@ -53,6 +53,7 @@ import { VISIBILITY_STATE } from "types/magicMetadata";
 import { FileTypeInfo } from "types/upload";
 import { isArchivedFile, updateMagicMetadata } from "utils/magicMetadata";
 import { safeFileName } from "utils/native-fs";
+import { writeStream } from "utils/native-stream";
 
 const WAIT_TIME_IMAGE_CONVERSION = 30 * 1000;
 
@@ -798,55 +799,47 @@ async function downloadFileDesktop(
     electron: Electron,
     fileReader: FileReader,
     file: EnteFile,
-    downloadPath: string,
+    downloadDir: string,
 ) {
-    const fileStream = (await DownloadManager.getFile(
+    const fs = electron.fs;
+    const stream = (await DownloadManager.getFile(
         file,
     )) as ReadableStream<Uint8Array>;
-    const updatedFileStream = await getUpdatedEXIFFileForDownload(
+    const updatedStream = await getUpdatedEXIFFileForDownload(
         fileReader,
         file,
-        fileStream,
+        stream,
     );
 
     if (file.metadata.fileType === FILE_TYPE.LIVE_PHOTO) {
-        const fileBlob = await new Response(updatedFileStream).blob();
+        const fileBlob = await new Response(updatedStream).blob();
         const livePhoto = await decodeLivePhoto(file, fileBlob);
         const imageExportName = await safeFileName(
-            downloadPath,
+            downloadDir,
             livePhoto.imageNameTitle,
-            electron.fs.exists,
+            fs.exists,
         );
         const imageStream = generateStreamFromArrayBuffer(livePhoto.image);
-        await electron.saveStreamToDisk(
-            `${downloadPath}/${imageExportName}`,
-            imageStream,
-        );
+        await writeStream(`${downloadDir}/${imageExportName}`, imageStream);
         try {
             const videoExportName = await safeFileName(
-                downloadPath,
+                downloadDir,
                 livePhoto.videoNameTitle,
-                electron.fs.exists,
+                fs.exists,
             );
             const videoStream = generateStreamFromArrayBuffer(livePhoto.video);
-            await electron.saveStreamToDisk(
-                `${downloadPath}/${videoExportName}`,
-                videoStream,
-            );
+            await writeStream(`${downloadDir}/${videoExportName}`, videoStream);
         } catch (e) {
-            await electron.fs.rm(`${downloadPath}/${imageExportName}`);
+            await fs.rm(`${downloadDir}/${imageExportName}`);
             throw e;
         }
     } else {
         const fileExportName = await safeFileName(
-            downloadPath,
+            downloadDir,
             file.metadata.title,
-            electron.fs.exists,
-        );
-        await electron.saveStreamToDisk(
-            `${downloadPath}/${fileExportName}`,
-            updatedFileStream,
+            fs.exists,
         );
+        await writeStream(`${downloadDir}/${fileExportName}`, updatedStream);
     }
 }
 

+ 0 - 4
web/packages/next/types/ipc.ts

@@ -311,10 +311,6 @@ export interface Electron {
     ) => Promise<void>;
 
     // - FS legacy
-    saveStreamToDisk: (
-        path: string,
-        fileStream: ReadableStream,
-    ) => Promise<void>;
     isFolder: (dirPath: string) => Promise<boolean>;
 
     // - Upload