UNPKG

multi-data

Version:
54 lines 2.11 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "default", { enumerable: true, get: function() { return MultiData; } }); function _class_call_check(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } var MultiData = /*#__PURE__*/ function() { "use strict"; function MultiData(boundary) { _class_call_check(this, MultiData); this.lines = []; if (boundary === undefined) throw new TypeError('boundary expected'); this.boundary = boundary; } var _proto = MultiData.prototype; /** * Append a part to the multipart form data. * * @param name The part name. * @param data The part data. * @param options Pass headers in the options for custom part headers. */ _proto.append = function append(name, data, options) { if (name === undefined) throw new TypeError('name expected'); if (data === undefined) throw new TypeError('data expected'); this.lines.push("--".concat(this.boundary)); this.lines.push('Content-Disposition: form-data; name="'.concat(name, '"')); if (options && options.headers) { var headers = options.headers; for(var key in headers)this.lines.push("".concat(key, ": ").concat(headers[key])); } this.lines.push(''); this.lines.push(data.toString()); return this; }; /** * After appending data, use toString() to concatenate the form data for your request. */ _proto.toString = function toString() { this.lines.push("--".concat(this.boundary, "--")); var string = this.lines.join('\r\n'); this.lines.pop(); return string; }; return MultiData; }(); /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }