feat: Allow data imports larger than the standard attachment size (#4449)

* feat: Allow data imports larger than the standard attachment size

* Use correct preset for data imports

* Cleanup of expired attachments

* lint
This commit is contained in:
Tom Moor
2022-11-20 09:22:57 -08:00
committed by GitHub
parent 1f49bd167d
commit 6e36ffb706
18 changed files with 375 additions and 92 deletions

View File

@@ -1,4 +1,5 @@
import invariant from "invariant";
import { AttachmentPreset } from "@shared/types";
import { client } from "./ApiClient";
import Logger from "./Logger";
@@ -7,8 +8,8 @@ type UploadOptions = {
name?: string;
/** The document that this file was uploaded in, if any */
documentId?: string;
/** Whether the file should be public in cloud storage */
public?: boolean;
/** The preset to use for attachment configuration */
preset: AttachmentPreset;
/** Callback will be passed a number between 0-1 as upload progresses */
onProgress?: (fractionComplete: number) => void;
};
@@ -17,11 +18,12 @@ export const uploadFile = async (
file: File | Blob,
options: UploadOptions = {
name: "",
preset: AttachmentPreset.DocumentAttachment,
}
) => {
const name = file instanceof File ? file.name : options.name;
const response = await client.post("/attachments.create", {
public: options.public,
preset: options.preset,
documentId: options.documentId,
contentType: file.type,
size: file.size,