feat: implement direct upload (#12328)

* feat: implement direct upload

* feat: add direct-upload endpoint

* refactor: implement feedback

* refactor: have a dedicated endpoint for direct uploads

* refactor: convert responses to snakecase

* refactor: rename method to createImport

* test: add tests for the presigned-urls endpoint
This commit is contained in:
Harminder Virk
2025-05-04 12:58:10 +02:00
committed by GitHub
parent ed55d17a36
commit 84f58f9058
22 changed files with 537 additions and 129 deletions
@@ -167,8 +167,8 @@ export default class FileModuleService implements FileTypes.IFileModuleService {
* const stream = await fileModuleService.getAsStream("file_123")
* writeable.pipe(stream)
*/
getAsStream(id: string): Promise<Readable> {
return this.fileProviderService_.getAsStream({ fileKey: id })
getDownloadStream(id: string): Promise<Readable> {
return this.fileProviderService_.getDownloadStream({ fileKey: id })
}
/**
@@ -70,8 +70,8 @@ export default class FileProviderService {
return this.fileProvider_.getPresignedUploadUrl(fileData)
}
getAsStream(fileData: FileTypes.ProviderGetFileDTO): Promise<Readable> {
return this.fileProvider_.getAsStream(fileData)
getDownloadStream(fileData: FileTypes.ProviderGetFileDTO): Promise<Readable> {
return this.fileProvider_.getDownloadStream(fileData)
}
getAsBuffer(fileData: FileTypes.ProviderGetFileDTO): Promise<Buffer> {