update to use the new EncryptionResult type
This commit is contained in:
parent
7f1a718c0f
commit
4b9bbe76e7
|
@ -521,7 +521,7 @@ export const updateCollectionMagicMetadata = async (collection: Collection) => {
|
|||
|
||||
const worker = await new CryptoWorker();
|
||||
|
||||
const { file: encryptedMagicMetadata }: EncryptionResult =
|
||||
const { file: encryptedMagicMetadata }: EncryptionResult<string> =
|
||||
await worker.encryptMetadata(
|
||||
collection.magicMetadata.data,
|
||||
collection.key
|
||||
|
@ -532,7 +532,7 @@ export const updateCollectionMagicMetadata = async (collection: Collection) => {
|
|||
magicMetadata: {
|
||||
version: collection.magicMetadata.version,
|
||||
count: collection.magicMetadata.count,
|
||||
data: encryptedMagicMetadata.encryptedData as unknown as string,
|
||||
data: encryptedMagicMetadata.encryptedData,
|
||||
header: encryptedMagicMetadata.decryptionHeader,
|
||||
},
|
||||
};
|
||||
|
|
|
@ -252,14 +252,14 @@ export const updateFileMagicMetadata = async (files: EnteFile[]) => {
|
|||
const reqBody: BulkUpdateMagicMetadataRequest = { metadataList: [] };
|
||||
const worker = await new CryptoWorker();
|
||||
for (const file of files) {
|
||||
const { file: encryptedMagicMetadata }: EncryptionResult =
|
||||
const { file: encryptedMagicMetadata }: EncryptionResult<string> =
|
||||
await worker.encryptMetadata(file.magicMetadata.data, file.key);
|
||||
reqBody.metadataList.push({
|
||||
id: file.id,
|
||||
magicMetadata: {
|
||||
version: file.magicMetadata.version,
|
||||
count: file.magicMetadata.count,
|
||||
data: encryptedMagicMetadata.encryptedData as unknown as string,
|
||||
data: encryptedMagicMetadata.encryptedData,
|
||||
header: encryptedMagicMetadata.decryptionHeader,
|
||||
},
|
||||
});
|
||||
|
@ -286,14 +286,14 @@ export const updateFilePublicMagicMetadata = async (files: EnteFile[]) => {
|
|||
const reqBody: BulkUpdateMagicMetadataRequest = { metadataList: [] };
|
||||
const worker = await new CryptoWorker();
|
||||
for (const file of files) {
|
||||
const { file: encryptedPubMagicMetadata }: EncryptionResult =
|
||||
const { file: encryptedPubMagicMetadata }: EncryptionResult<string> =
|
||||
await worker.encryptMetadata(file.pubMagicMetadata.data, file.key);
|
||||
reqBody.metadataList.push({
|
||||
id: file.id,
|
||||
magicMetadata: {
|
||||
version: file.pubMagicMetadata.version,
|
||||
count: file.pubMagicMetadata.count,
|
||||
data: encryptedPubMagicMetadata.encryptedData as unknown as string,
|
||||
data: encryptedPubMagicMetadata.encryptedData,
|
||||
header: encryptedPubMagicMetadata.decryptionHeader,
|
||||
},
|
||||
});
|
||||
|
|
|
@ -107,19 +107,19 @@ export async function uploadThumbnail(
|
|||
updatedThumbnail: Uint8Array,
|
||||
uploadURL: UploadURL
|
||||
): Promise<fileAttribute> {
|
||||
const { file: encryptedThumbnail }: EncryptionResult =
|
||||
const { file: encryptedThumbnail }: EncryptionResult<Uint8Array> =
|
||||
await worker.encryptThumbnail(updatedThumbnail, fileKey);
|
||||
let thumbnailObjectKey: string = null;
|
||||
if (USE_CF_PROXY) {
|
||||
thumbnailObjectKey = await uploadHttpClient.putFileV2(
|
||||
uploadURL,
|
||||
encryptedThumbnail.encryptedData as Uint8Array,
|
||||
encryptedThumbnail.encryptedData,
|
||||
() => {}
|
||||
);
|
||||
} else {
|
||||
thumbnailObjectKey = await uploadHttpClient.putFile(
|
||||
uploadURL,
|
||||
encryptedThumbnail.encryptedData as Uint8Array,
|
||||
encryptedThumbnail.encryptedData,
|
||||
() => {}
|
||||
);
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ async function encryptFileStream(worker, fileData: DataStream) {
|
|||
export async function encryptFiledata(
|
||||
worker,
|
||||
filedata: Uint8Array | DataStream
|
||||
): Promise<EncryptionResult> {
|
||||
): Promise<EncryptionResult<Uint8Array | DataStream>> {
|
||||
return isDataStream(filedata)
|
||||
? await encryptFileStream(worker, filedata)
|
||||
: await worker.encryptFile(filedata);
|
||||
|
|
|
@ -106,22 +106,23 @@ export async function encryptFile(
|
|||
file.filedata
|
||||
);
|
||||
|
||||
const { file: encryptedThumbnail }: EncryptionResult =
|
||||
const { file: encryptedThumbnail }: EncryptionResult<Uint8Array> =
|
||||
await worker.encryptThumbnail(file.thumbnail, fileKey);
|
||||
const { file: encryptedMetadata }: EncryptionResult =
|
||||
const { file: encryptedMetadata }: EncryptionResult<string> =
|
||||
await worker.encryptMetadata(file.metadata, fileKey);
|
||||
|
||||
let encryptedPubMagicMetadata: EncryptedMagicMetadataCore;
|
||||
if (file.pubMagicMetadata) {
|
||||
const { file: encryptedPubMagicMetadataData }: EncryptionResult =
|
||||
await worker.encryptMetadata(
|
||||
file.pubMagicMetadata.data,
|
||||
fileKey
|
||||
);
|
||||
const {
|
||||
file: encryptedPubMagicMetadataData,
|
||||
}: EncryptionResult<string> = await worker.encryptMetadata(
|
||||
file.pubMagicMetadata.data,
|
||||
fileKey
|
||||
);
|
||||
encryptedPubMagicMetadata = {
|
||||
version: file.pubMagicMetadata.version,
|
||||
count: file.pubMagicMetadata.count,
|
||||
data: encryptedPubMagicMetadataData.encryptedData as unknown as string,
|
||||
data: encryptedPubMagicMetadataData.encryptedData,
|
||||
header: encryptedPubMagicMetadataData.decryptionHeader,
|
||||
};
|
||||
}
|
||||
|
|
|
@ -175,13 +175,13 @@ class UploadService {
|
|||
if (USE_CF_PROXY) {
|
||||
thumbnailObjectKey = await UploadHttpClient.putFileV2(
|
||||
thumbnailUploadURL,
|
||||
file.thumbnail.encryptedData as Uint8Array,
|
||||
file.thumbnail.encryptedData,
|
||||
null
|
||||
);
|
||||
} else {
|
||||
thumbnailObjectKey = await UploadHttpClient.putFile(
|
||||
thumbnailUploadURL,
|
||||
file.thumbnail.encryptedData as Uint8Array,
|
||||
file.thumbnail.encryptedData,
|
||||
null
|
||||
);
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { MagicMetadataCore, VISIBILITY_STATE } from 'types/magicMetadata';
|
||||
import { DataStream, Metadata } from 'types/upload';
|
||||
import { Metadata } from 'types/upload';
|
||||
|
||||
export interface fileAttribute {
|
||||
encryptedData?: DataStream | Uint8Array;
|
||||
encryptedData?: string;
|
||||
objectKey?: string;
|
||||
decryptionHeader: string;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { FILE_TYPE } from 'constants/file';
|
||||
import { Collection } from 'types/collection';
|
||||
import { FilePublicMagicMetadata } from 'types/file';
|
||||
import { fileAttribute, FilePublicMagicMetadata } from 'types/file';
|
||||
import { EncryptedMagicMetadataCore } from 'types/magicMetadata';
|
||||
|
||||
export interface DataStream {
|
||||
|
@ -135,7 +135,12 @@ export interface ProcessedFile {
|
|||
pubMagicMetadata: EncryptedMagicMetadataCore;
|
||||
localID: number;
|
||||
}
|
||||
export interface BackupedFile extends Omit<ProcessedFile, 'localID'> {}
|
||||
export interface BackupedFile {
|
||||
file: fileAttribute;
|
||||
thumbnail: fileAttribute;
|
||||
metadata: fileAttribute;
|
||||
pubMagicMetadata: EncryptedMagicMetadataCore;
|
||||
}
|
||||
|
||||
export interface UploadFile extends BackupedFile {
|
||||
collectionID: number;
|
||||
|
|
Loading…
Reference in a new issue