UNPKG

@rpldy/chunked-sender

Version:

adds chunked upload capabilities on top of the regular XHR uploads

21 lines 866 B
import { logger } from "@rpldy/shared"; import xhrSend from "@rpldy/sender"; import { getMandatoryOptions } from "../utils"; import processChunks from "./processChunks"; const createChunkedSender = (chunkedOptions, trigger) => { const options = getMandatoryOptions(chunkedOptions); return { send: (items, url, sendOptions, onProgress) => { let result; if (!options.chunked || items.length > 1 || items[0].url || !items[0].file.size) { result = xhrSend(items, url, sendOptions, onProgress); logger.debugLog(`chunkedSender: sending items as normal, un-chunked requests`); } else { logger.debugLog(`chunkedSender: sending file as a chunked request`); result = processChunks(items[0], options, url, sendOptions, onProgress, trigger); } return result; } }; }; export default createChunkedSender;