Manav Rathi před 1 rokem
rodič
revize
00c0780de1

+ 57 - 57
web/apps/photos/src/services/upload/metadataService.ts

@@ -61,7 +61,63 @@ export interface ExtractMetadataResult {
     publicMagicMetadata: FilePublicMagicMetadataProps;
 }
 
-export async function extractMetadata(
+export const extractAssetMetadata = async (
+    worker: Remote<DedicatedCryptoWorker>,
+    parsedMetadataJSONMap: Map<string, ParsedMetadataJSON>,
+    { isLivePhoto, file, livePhotoAssets }: UploadAsset2,
+    collectionID: number,
+    fileTypeInfo: FileTypeInfo,
+): Promise<ExtractMetadataResult> => {
+    return isLivePhoto
+        ? await extractLivePhotoMetadata(
+              worker,
+              parsedMetadataJSONMap,
+              collectionID,
+              fileTypeInfo,
+              livePhotoAssets,
+          )
+        : await extractFileMetadata(
+              worker,
+              parsedMetadataJSONMap,
+              collectionID,
+              fileTypeInfo,
+              file,
+          );
+};
+
+async function extractFileMetadata(
+    worker: Remote<DedicatedCryptoWorker>,
+    parsedMetadataJSONMap: Map<string, ParsedMetadataJSON>,
+    collectionID: number,
+    fileTypeInfo: FileTypeInfo,
+    rawFile: File | ElectronFile | string,
+): Promise<ExtractMetadataResult> {
+    const rawFileName = getFileName(rawFile);
+    let key = getMetadataJSONMapKeyForFile(collectionID, rawFileName);
+    let googleMetadata: ParsedMetadataJSON = parsedMetadataJSONMap.get(key);
+
+    if (!googleMetadata && key.length > MAX_FILE_NAME_LENGTH_GOOGLE_EXPORT) {
+        key = getClippedMetadataJSONMapKeyForFile(collectionID, rawFileName);
+        googleMetadata = parsedMetadataJSONMap.get(key);
+    }
+
+    const { metadata, publicMagicMetadata } = await extractMetadata(
+        worker,
+        /* TODO(MR): ElectronFile changes */
+        rawFile as File | ElectronFile,
+        fileTypeInfo,
+    );
+
+    for (const [key, value] of Object.entries(googleMetadata ?? {})) {
+        if (!value) {
+            continue;
+        }
+        metadata[key] = value;
+    }
+    return { metadata, publicMagicMetadata };
+}
+
+async function extractMetadata(
     worker: Remote<DedicatedCryptoWorker>,
     receivedFile: File | ElectronFile,
     fileTypeInfo: FileTypeInfo,
@@ -182,62 +238,6 @@ async function getVideoMetadata(file: File | ElectronFile) {
     return videoMetadata;
 }
 
-export const extractAssetMetadata = async (
-    worker: Remote<DedicatedCryptoWorker>,
-    parsedMetadataJSONMap: Map<string, ParsedMetadataJSON>,
-    { isLivePhoto, file, livePhotoAssets }: UploadAsset2,
-    collectionID: number,
-    fileTypeInfo: FileTypeInfo,
-): Promise<ExtractMetadataResult> => {
-    return isLivePhoto
-        ? await extractLivePhotoMetadata(
-              worker,
-              parsedMetadataJSONMap,
-              collectionID,
-              fileTypeInfo,
-              livePhotoAssets,
-          )
-        : await extractFileMetadata(
-              worker,
-              parsedMetadataJSONMap,
-              collectionID,
-              fileTypeInfo,
-              file,
-          );
-};
-
-async function extractFileMetadata(
-    worker: Remote<DedicatedCryptoWorker>,
-    parsedMetadataJSONMap: Map<string, ParsedMetadataJSON>,
-    collectionID: number,
-    fileTypeInfo: FileTypeInfo,
-    rawFile: File | ElectronFile | string,
-): Promise<ExtractMetadataResult> {
-    const rawFileName = getFileName(rawFile);
-    let key = getMetadataJSONMapKeyForFile(collectionID, rawFileName);
-    let googleMetadata: ParsedMetadataJSON = parsedMetadataJSONMap.get(key);
-
-    if (!googleMetadata && key.length > MAX_FILE_NAME_LENGTH_GOOGLE_EXPORT) {
-        key = getClippedMetadataJSONMapKeyForFile(collectionID, rawFileName);
-        googleMetadata = parsedMetadataJSONMap.get(key);
-    }
-
-    const { metadata, publicMagicMetadata } = await extractMetadata(
-        worker,
-        /* TODO(MR): ElectronFile changes */
-        rawFile as File | ElectronFile,
-        fileTypeInfo,
-    );
-
-    for (const [key, value] of Object.entries(googleMetadata ?? {})) {
-        if (!value) {
-            continue;
-        }
-        metadata[key] = value;
-    }
-    return { metadata, publicMagicMetadata };
-}
-
 async function extractLivePhotoMetadata(
     worker: Remote<DedicatedCryptoWorker>,
     parsedMetadataJSONMap: Map<string, ParsedMetadataJSON>,