UNPKG

ahr.node

Version:

An Abstract Http Request for Node.JS (httpClient) and the Browser (XMLHttpRequeuest2)

55 lines (45 loc) 1.16 kB
(function () { "use strict"; var EventEmitter = require('events').EventEmitter; // TODO create(filters) and streamers // TODO for the real FormData sizes >= 3gb the length // should be given in kb or mb function FormContent(body) { this.body = body; } FormContent.prototype.serialize = function () { var emitter = new EventEmitter() , self = this; function fireAllEvents() { var body = self.body , length = body.length; emitter.emit('size', length); emitter.emit('loadstart', { lengthComputable: true, loaded: 0, total: length }); emitter.emit('progress', { lengthComputable: true, loaded: length, total: length }); emitter.emit('load', { lengthComputable: true, loaded: length, total: length, target: { result: body } }); emitter.emit('loadend', { lengthComputable: true, loaded: length, total: length }); } process.nextTick(fireAllEvents); return emitter; }; module.exports.FormContent = FormContent; }());