UNPKG

aminul-remake-fca

Version:

Aminul's remake of ws3-fca — next-generation Facebook Chat API fork

71 lines (60 loc) 1.71 kB
"use strict"; const utils = require("../utils"); // @NethWs3Dev module.exports = function (defaultFuncs, api, ctx) { return function httpPostFormData(url, form, customHeader, callback, notAPI) { let resolveFunc = function () {}; let rejectFunc = function () {}; const returnPromise = new Promise(function (resolve, reject) { resolveFunc = resolve; rejectFunc = reject; }); if ( utils.getType(form) == "Function" || utils.getType(form) == "AsyncFunction" ) { callback = form; form = {}; } if ( utils.getType(customHeader) == "Function" || utils.getType(customHeader) == "AsyncFunction" ) { callback = customHeader; customHeader = {}; } customHeader = customHeader || {}; if (utils.getType(callback) == "Boolean") { notAPI = callback; callback = null; } callback = callback || function (err, data) { if (err) return rejectFunc(err); resolveFunc(data); }; if (notAPI) { utils .postFormData(url, ctx.jar, form, ctx.globalOptions, ctx, customHeader) .then(function (resData) { callback(null, resData.body.toString()); }) .catch(function (err) { utils.error("httpPostFormData", err); return callback(err); }); } else { defaultFuncs .postFormData(url, ctx.jar, form, null, customHeader) .then(function (resData) { callback(null, resData.body.toString()); }) .catch(function (err) { utils.error("httpPostFormData", err); return callback(err); }); } return returnPromise; }; };