@rpldy/chunked-sender
Version:
adds chunked upload capabilities on top of the regular XHR uploads
28 lines (27 loc) • 1.17 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _shared = require("@rpldy/shared");
var _sender = _interopRequireDefault(require("@rpldy/sender"));
var _utils = require("../utils");
var _processChunks = _interopRequireDefault(require("./processChunks"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
const createChunkedSender = (chunkedOptions, trigger) => {
const options = (0, _utils.getMandatoryOptions)(chunkedOptions);
return {
send: (items, url, sendOptions, onProgress) => {
let result;
if (!options.chunked || items.length > 1 || items[0].url || !items[0].file.size) {
result = (0, _sender.default)(items, url, sendOptions, onProgress);
_shared.logger.debugLog(`chunkedSender: sending items as normal, un-chunked requests`);
} else {
_shared.logger.debugLog(`chunkedSender: sending file as a chunked request`);
result = (0, _processChunks.default)(items[0], options, url, sendOptions, onProgress, trigger);
}
return result;
}
};
};
var _default = exports.default = createChunkedSender;