mirror of
https://github.com/bitwarden/browser
synced 2025-12-21 18:53:29 +00:00
Upload to Azure strorage blobs (#296)
* Implemen AzureStorageService handes uploading files to azure blob * Correct one-shot size * Add azureStorage.service abstraction * Rename azure upload method * Prefer abstractions in DI * Abstract file upload to a single service handling uploads * Fallback to legacy upload method * Linter fix * Limit legacy upload to 404 error
This commit is contained in:
@@ -107,6 +107,7 @@ import { ProfileResponse } from '../models/response/profileResponse';
|
||||
import { SelectionReadOnlyResponse } from '../models/response/selectionReadOnlyResponse';
|
||||
import { SendAccessResponse } from '../models/response/sendAccessResponse';
|
||||
import { SendFileDownloadDataResponse } from '../models/response/sendFileDownloadDataResponse';
|
||||
import { SendFileUploadDataResponse } from '../models/response/sendFileUploadDataResponse';
|
||||
import { SendResponse } from '../models/response/sendResponse';
|
||||
import { SubscriptionResponse } from '../models/response/subscriptionResponse';
|
||||
import { SyncResponse } from '../models/response/syncResponse';
|
||||
@@ -177,11 +178,18 @@ export abstract class ApiService {
|
||||
postSendAccess: (id: string, request: SendAccessRequest, apiUrl?: string) => Promise<SendAccessResponse>;
|
||||
getSends: () => Promise<ListResponse<SendResponse>>;
|
||||
postSend: (request: SendRequest) => Promise<SendResponse>;
|
||||
postSendFile: (data: FormData) => Promise<SendResponse>;
|
||||
postFileTypeSend: (request: SendRequest) => Promise<SendFileUploadDataResponse>;
|
||||
postSendFile: (sendId: string, fileId: string, data: FormData) => Promise<any>;
|
||||
/**
|
||||
* @deprecated Mar 25 2021: This method has been deprecated in favor of direct uploads.
|
||||
* This method still exists for backward compatibility with old server versions.
|
||||
*/
|
||||
postSendFileLegacy: (data: FormData) => Promise<SendResponse>;
|
||||
putSend: (id: string, request: SendRequest) => Promise<SendResponse>;
|
||||
putSendRemovePassword: (id: string) => Promise<SendResponse>;
|
||||
deleteSend: (id: string) => Promise<any>;
|
||||
getSendFileDownloadData: (send: SendAccessView, request: SendAccessRequest) => Promise<SendFileDownloadDataResponse>;
|
||||
renewFileUploadUrl: (sendId: string, fileId: string) => Promise<SendFileUploadDataResponse>;
|
||||
|
||||
getCipher: (id: string) => Promise<CipherResponse>;
|
||||
getCipherAdmin: (id: string) => Promise<CipherResponse>;
|
||||
|
||||
7
src/abstractions/fileUpload.service.ts
Normal file
7
src/abstractions/fileUpload.service.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
import { CipherString } from '../models/domain';
|
||||
import { SendFileUploadDataResponse } from '../models/response/sendFileUploadDataResponse';
|
||||
|
||||
export abstract class FileUploadService {
|
||||
uploadSendFile: (uploadData: SendFileUploadDataResponse, fileName: CipherString,
|
||||
encryptedFileData: ArrayBuffer) => Promise<any>;
|
||||
}
|
||||
Reference in New Issue
Block a user