@breautek/storm
    Preparing search index...

    Interface Options

    interface Options {
        allowEmptyFiles?: boolean;
        createDirsFromUploads?: boolean;
        enabledPlugins?: string[];
        encoding?: formidable.BufferEncoding;
        filename?: (
            name: string,
            ext: string,
            part: formidable.Part,
            form: IncomingForm,
        ) => string;
        fileWriteStreamHandler?: (file?: VolatileFile) => Writable;
        filter?: (part: formidable.Part) => boolean;
        hashAlgorithm?: string | false;
        keepExtensions?: boolean;
        maxFields?: number;
        maxFieldsSize?: number;
        maxFiles?: number;
        maxFileSize?: number;
        maxTotalFileSize?: number;
        minFileSize?: number;
        multiples?: boolean;
        uploadDir?: string;
    }
    Index

    Properties

    allowEmptyFiles?: boolean

    allow upload empty files

    true
    
    createDirsFromUploads?: boolean

    If true, makes direct folder uploads possible.

    false
    
    enabledPlugins?: string[]

    sets encoding for incoming form fields

    'utf-8'
    
    filename?: (
        name: string,
        ext: string,
        part: formidable.Part,
        form: IncomingForm,
    ) => string

    Use it to control newFilename. Must return a string. Will be joined with options.uploadDir.

    undefined
    
    fileWriteStreamHandler?: (file?: VolatileFile) => Writable

    which by default writes to host machine file system every file parsed; The function should return an instance of a Writable stream that will receive the uploaded file data. With this option, you can have any custom behavior regarding where the uploaded file data will be streamed for. If you are looking to write the file uploaded in other types of cloud storages (AWS S3, Azure blob storage, Google cloud storage) or private file storage, this is the option you're looking for. When this option is defined the default behavior of writing the file in the host machine file system is lost.

    null
    
    filter?: (part: formidable.Part) => boolean
    hashAlgorithm?: string | false

    include checksums calculated for incoming files, set this to some hash algorithm, see crypto.createHash for available algorithms

    false
    
    keepExtensions?: boolean

    to include the extensions of the original files or not

    false
    
    maxFields?: number

    limit the number of fields, set 0 for unlimited

    1000
    
    maxFieldsSize?: number

    limit the amount of memory all fields together (except files) can allocate in bytes

    20 * 1024 * 1024
    
    maxFiles?: number

    limit the amount of uploaded files, set Infinity for unlimited

    Infinity
    
    maxFileSize?: number

    limit the size of uploaded file

    200 * 1024 * 1024
    
    maxTotalFileSize?: number

    limit the size of the batch of uploaded files

    options.maxFileSize
    
    minFileSize?: number

    the minium size of uploaded file

    1
    
    multiples?: boolean

    when you call the .parse method, the files argument (of the callback) will contain arrays of files for inputs which submit multiple files using the HTML5 multiple attribute. Also, the fields argument will contain arrays of values for fields that have names ending with '[]'

    false
    
    uploadDir?: string

    the directory for placing file uploads in. You can move them later by using fs.rename()

    os.tmpdir()