fca-arif-babu 1.0.21 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/Extra/Balancer.js +49 -0
  2. package/Extra/Bypass/956/index.js +234 -0
  3. package/Extra/Bypass/test/aaaa.json +169 -0
  4. package/Extra/Bypass/test/index.js +188 -0
  5. package/Extra/Database/index.js +469 -0
  6. package/Extra/ExtraAddons.js +82 -0
  7. package/Extra/ExtraFindUID.js +62 -0
  8. package/Extra/ExtraGetThread.js +365 -0
  9. package/Extra/ExtraScreenShot.js +430 -0
  10. package/Extra/ExtraUptimeRobot.js +38 -0
  11. package/Extra/Html/Classic/script.js +119 -0
  12. package/Extra/Html/Classic/style.css +8 -0
  13. package/Extra/Security/AES_256_GCM/index.js +1 -0
  14. package/Extra/Security/Base/Step_1.js +6 -0
  15. package/Extra/Security/Base/Step_2.js +22 -0
  16. package/Extra/Security/Base/Step_3.js +22 -0
  17. package/Extra/Security/Base/index.js +191 -0
  18. package/Extra/Security/Step_1.js +6 -0
  19. package/Extra/Security/Step_2.js +22 -0
  20. package/Extra/Security/Step_3.js +22 -0
  21. package/Extra/Security/index.js +5 -0
  22. package/Extra/Src/Change_Environment.js +24 -0
  23. package/Extra/Src/Check_Update.js +67 -0
  24. package/Extra/Src/History.js +115 -0
  25. package/Extra/Src/Instant_Update.js +65 -0
  26. package/Extra/Src/Last-Run.js +65 -0
  27. package/Extra/Src/Premium.js +81 -0
  28. package/Extra/Src/Release_Memory.js +160 -0
  29. package/Extra/Src/Websocket.js +213 -0
  30. package/Extra/Src/image/62518eafb0670b697788ce4f9a4f71d1.jpg +0 -0
  31. package/Extra/Src/test.js +28 -0
  32. package/Extra/Src/uuid.js +137 -0
  33. package/Func/AcceptAgreement.js +31 -0
  34. package/Func/ClearCache.js +64 -0
  35. package/Func/ReportV1.js +54 -0
  36. package/{LICENSE-MIT → LICENSE.txt} +6 -6
  37. package/Language/index.json +228 -0
  38. package/Main.js +1290 -0
  39. package/README.md +8 -6
  40. package/SECURITY.md +17 -0
  41. package/broadcast.js +44 -0
  42. package/index.js +424 -465
  43. package/logger.js +66 -0
  44. package/package.json +91 -42
  45. package/src/Dev_Horizon_Data.js +125 -0
  46. package/src/Dev_getThreadInfoOLD.js +422 -0
  47. package/src/Dev_shareTest2.js +68 -0
  48. package/src/Dev_shareTest3.js +71 -0
  49. package/src/Premium.js +25 -0
  50. package/src/Screenshot.js +83 -0
  51. package/src/addExternalModule.js +5 -14
  52. package/src/addUserToGroup.js +21 -57
  53. package/src/changeAdminStatus.js +22 -46
  54. package/src/changeArchivedStatus.js +12 -26
  55. package/src/{changeAvatarV2.js → changeAvt.js} +2 -3
  56. package/src/changeBio.js +15 -26
  57. package/src/changeBlockedStatus.js +9 -22
  58. package/src/changeGroupImage.js +26 -55
  59. package/src/changeNickname.js +14 -28
  60. package/src/changeThreadColor.js +19 -22
  61. package/src/changeThreadEmoji.js +12 -25
  62. package/src/createNewGroup.js +18 -36
  63. package/src/createPoll.js +17 -28
  64. package/src/deleteMessage.js +14 -25
  65. package/src/deleteThread.js +13 -26
  66. package/src/editMessage.js +50 -56
  67. package/src/forwardAttachment.js +16 -28
  68. package/src/getAccessToken.js +28 -0
  69. package/src/getCurrentUserID.js +3 -3
  70. package/src/getEmojiUrl.js +8 -10
  71. package/src/getFriendsList.js +15 -25
  72. package/src/getMessage.js +81 -813
  73. package/src/getThreadHistory.js +98 -241
  74. package/src/getThreadInfo.js +286 -89
  75. package/src/getThreadInfoOLD.js +422 -0
  76. package/src/getThreadList.js +158 -215
  77. package/src/getThreadMain.js +220 -0
  78. package/src/getThreadPictures.js +20 -40
  79. package/src/getUID.js +49 -112
  80. package/src/getUserID.js +14 -18
  81. package/src/getUserInfo.js +75 -34
  82. package/src/getUserInfoMain.js +65 -0
  83. package/src/getUserInfoV2.js +32 -0
  84. package/src/getUserInfoV3.js +63 -0
  85. package/src/getUserInfoV4.js +55 -0
  86. package/src/getUserInfoV5.js +61 -0
  87. package/src/handleFriendRequest.js +14 -25
  88. package/src/handleMessageRequest.js +21 -37
  89. package/src/httpGet.js +22 -37
  90. package/src/httpPost.js +20 -36
  91. package/src/httpPostFormData.js +23 -52
  92. package/src/listenMqtt.js +667 -414
  93. package/src/listenMqttV1.js +846 -0
  94. package/src/logout.js +17 -24
  95. package/src/markAsDelivered.js +16 -23
  96. package/src/markAsRead.js +28 -43
  97. package/src/markAsReadAll.js +14 -21
  98. package/src/markAsSeen.js +19 -29
  99. package/src/muteThread.js +13 -18
  100. package/src/removeUserFromGroup.js +18 -48
  101. package/src/resolvePhotoUrl.js +14 -22
  102. package/src/searchForThread.js +13 -23
  103. package/src/sendMessage.js +125 -181
  104. package/src/sendMqttMessage.js +71 -0
  105. package/src/sendTypingIndicator.js +80 -28
  106. package/src/setMessageReaction.js +20 -33
  107. package/src/setPostReaction.js +95 -105
  108. package/src/setTitle.js +19 -35
  109. package/src/shareContact.js +37 -92
  110. package/src/shareLink.js +5 -6
  111. package/src/threadColors.js +17 -109
  112. package/src/unfriend.js +11 -20
  113. package/src/unsendMessage.js +33 -30
  114. package/src/unsendMqttMessage.js +66 -0
  115. package/test/data/shareAttach.js +146 -0
  116. package/test/data/something.mov +1 -0
  117. package/test/data/test.png +1 -0
  118. package/test/data/test.txt +1 -0
  119. package/test/env/.env +1 -0
  120. package/test/example-config.json +18 -0
  121. package/test/test-page.js +140 -0
  122. package/test/test.js +385 -0
  123. package/test/testv2.js +3 -0
  124. package/utils.js +2908 -1247
  125. package/replit.nix +0 -3
  126. package/src/changeAvatar.js +0 -136
  127. package/src/changeBlockedStatusMqtt.js +0 -80
  128. package/src/changeCover.js +0 -72
  129. package/src/changeName.js +0 -78
  130. package/src/changeUsername.js +0 -58
  131. package/src/createCommentPost.js +0 -229
  132. package/src/createPost.js +0 -275
  133. package/src/data/getThreadInfo.json +0 -1
  134. package/src/editMessageOld.js +0 -67
  135. package/src/follow.js +0 -74
  136. package/src/getAccess.js +0 -112
  137. package/src/getAvatarUser.js +0 -78
  138. package/src/getBotInitialData.js +0 -42
  139. package/src/getRegion.js +0 -7
  140. package/src/getThreadHistoryDeprecated.js +0 -93
  141. package/src/getThreadInfoDeprecated.js +0 -80
  142. package/src/getThreadListDeprecated.js +0 -75
  143. package/src/listenNotification.js +0 -85
  144. package/src/pinMessage.js +0 -59
  145. package/src/refreshFb_dtsg.js +0 -89
  146. package/src/searchStickers.js +0 -53
  147. package/src/sendMessageMqtt.js +0 -316
  148. package/src/setMessageReactionMqtt.js +0 -62
  149. package/src/setProfileGuard.js +0 -44
  150. package/src/setStoryReaction.js +0 -64
  151. package/src/stopListenMqtt.js +0 -23
  152. package/src/uploadAttachment.js +0 -94
@@ -0,0 +1,55 @@
1
+ /* eslint-disable linebreak-style */
2
+ "use strict";
3
+
4
+ var utils = require("../utils");
5
+ var log = require("npmlog");
6
+
7
+
8
+ module.exports = function (defaultFuncs, api, ctx) {
9
+ return function getUserInfoV4(id, callback) {
10
+ var resolveFunc = function () { };
11
+ var rejectFunc = function () { };
12
+ var returnPromise = new Promise(function (resolve, reject) {
13
+ resolveFunc = resolve;
14
+ rejectFunc = reject;
15
+ });
16
+
17
+ if (!callback) {
18
+ callback = function (err, userInfo) {
19
+ if (err) return rejectFunc(err);
20
+ resolveFunc(userInfo);
21
+ };
22
+ }
23
+
24
+ if (utils.getType(id) !== "Array") id = [id];
25
+
26
+ var form = {
27
+ av: ctx.userID,
28
+ fb_api_caller_class: "RelayModern",
29
+ fb_api_req_friendly_name: "PresenceStatusProviderSubscription_ContactProfilesQuery",
30
+ variables: JSON.stringify({
31
+ ids: id
32
+ }),
33
+ doc_id: 7188178894556645
34
+ };
35
+ console.log(form);
36
+ try {
37
+ defaultFuncs
38
+ .post("https://www.facebook.com/api/graphql/", ctx.jar, form)
39
+ .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
40
+ .then(function (resData) {
41
+ if (resData.error) throw resData;
42
+ callback(null,resData.data.viewer.chat_sidebar_contact_nodes[0]);
43
+ })
44
+ .catch(function (err) {
45
+ console.log(err);
46
+ log.error("getUserInfo", "Lỗi: getUserInfo Có Thể Do Bạn Spam Quá Nhiều !,Hãy Thử Lại !");
47
+ return callback(err);
48
+ });
49
+ }
50
+ catch (e) {
51
+ return callback(null, e);
52
+ }
53
+ return returnPromise;
54
+ };
55
+ };
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
+
6
+
7
+ module.exports = function(defaultFuncs, api, ctx) {
8
+
9
+ return function getUserInfoV5GraphQL(id, callback) {
10
+ var resolveFunc = function(){};
11
+ var rejectFunc = function(){};
12
+ var returnPromise = new Promise(function (resolve, reject) {
13
+ resolveFunc = resolve;
14
+ rejectFunc = reject;
15
+ });
16
+
17
+ if (utils.getType(callback) != "Function" && utils.getType(callback) != "AsyncFunction") {
18
+ callback = function (err, data) {
19
+ if (err) {
20
+ return rejectFunc(err);
21
+ }
22
+ resolveFunc(data);
23
+ };
24
+ }
25
+
26
+ // `queries` has to be a string. I couldn't tell from the dev console. This
27
+ // took me a really long time to figure out. I deserve a cookie for this.
28
+ var form = {
29
+ queries: JSON.stringify({
30
+ o0: {
31
+ // This doc_id is valid as of July 20th, 2020
32
+ doc_id: "5009315269112105",
33
+ query_params: {
34
+ ids: [id]
35
+ }
36
+ }
37
+ }),
38
+ batch_name: "MessengerParticipantsFetcher"
39
+ };
40
+ defaultFuncs
41
+ .post("https://www.facebook.com/api/graphqlbatch/", ctx.jar, form)
42
+ .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
43
+ .then(function(resData) {
44
+ if (resData.error) {
45
+ throw resData;
46
+ }
47
+ // This returns us an array of things. The last one is the success /
48
+ // failure one.
49
+ // @TODO What do we do in this case?
50
+ if (resData[resData.length - 1].error_results !== 0) {
51
+ console.error("GetThreadInfo", "Bạn Đang Bị Ăn Get Vì Sử Dụng Quá Nhiều !");
52
+ }
53
+ callback(null, resData);
54
+ })
55
+ .catch(function(err) {
56
+ log.error("getThreadInfoGraphQL", "Lỗi: getUserInfoV5 Có Thể Do Bạn Spam Quá Nhiều, Hãy Thử Lại !");
57
+ return callback(err);
58
+ });
59
+ return returnPromise;
60
+ };
61
+ };
@@ -1,54 +1,43 @@
1
1
  "use strict";
2
2
 
3
- const utils = require("../utils");
4
- // @NethWs3Dev
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
5
 
6
6
  module.exports = function (defaultFuncs, api, ctx) {
7
7
  return function handleFriendRequest(userID, accept, callback) {
8
- if (utils.getType(accept) !== "Boolean") {
9
- throw {
10
- error: "Please pass a boolean as a second argument.",
11
- };
12
- }
8
+ if (utils.getType(accept) !== "Boolean") throw { error: "Please pass a boolean as a second argument." };
13
9
 
14
- let resolveFunc = function () {};
15
- let rejectFunc = function () {};
16
- const returnPromise = new Promise(function (resolve, reject) {
10
+ var resolveFunc = function () { };
11
+ var rejectFunc = function () { };
12
+ var returnPromise = new Promise(function (resolve, reject) {
17
13
  resolveFunc = resolve;
18
14
  rejectFunc = reject;
19
15
  });
20
16
 
21
17
  if (!callback) {
22
- callback = function (err, friendList) {
23
- if (err) {
24
- return rejectFunc(err);
25
- }
26
- resolveFunc(friendList);
18
+ callback = function (err, data) {
19
+ if (err) return rejectFunc(err);
20
+ resolveFunc(data);
27
21
  };
28
22
  }
29
23
 
30
- const form = {
31
- viewer_id: ctx.userID,
24
+ var form = {
25
+ viewer_id: userID,
32
26
  "frefs[0]": "jwl",
33
27
  floc: "friend_center_requests",
34
28
  ref: "/reqs.php",
35
- action: accept ? "confirm" : "reject",
29
+ action: (accept ? "confirm" : "reject")
36
30
  };
37
31
 
38
32
  defaultFuncs
39
33
  .post("https://www.facebook.com/requests/friends/ajax/", ctx.jar, form)
40
34
  .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
41
35
  .then(function (resData) {
42
- if (resData.err) {
43
- throw {
44
- err: resData.err
45
- };
46
- }
47
-
36
+ if (resData.payload.err) throw { err: resData.payload.err };
48
37
  return callback();
49
38
  })
50
39
  .catch(function (err) {
51
- console.error("handleFriendRequest", err);
40
+ log.error("handleFriendRequest", err);
52
41
  return callback(err);
53
42
  });
54
43
 
@@ -1,62 +1,46 @@
1
1
  "use strict";
2
2
 
3
- const utils = require("../utils");
4
- // @NethWs3Dev
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
5
 
6
- module.exports = function (defaultFuncs, api, ctx) {
7
- return function handleMessageRequest(threadID, accept, callback) {
8
- if (utils.getType(accept) !== "Boolean") {
9
- throw {
10
- error: "Please pass a boolean as a second argument.",
11
- };
12
- }
6
+ module.exports = function (/** @type {{ post: any; postFormData?: (arg0: string, arg1: any, arg2: any, arg3: {}) => any; get?: (arg0: any, arg1: any) => Promise<any>; }} */ defaultFuncs, /** @type {any} */ api, /** @type {{ jar: any; fb_dtsg?: string; ttstamp?: string; }} */ ctx) {
7
+ return function handleMessageRequest(/** @type {string | any[]} */ threadID, /** @type {any} */ accept, /** @type {((err: any, data: any) => void) | ((arg0: undefined) => any)} */ callback) {
8
+ if (utils.getType(accept) !== "Boolean") throw { error: "Please pass a boolean as a second argument." };
13
9
 
14
- let resolveFunc = function () {};
15
- let rejectFunc = function () {};
16
- const returnPromise = new Promise(function (resolve, reject) {
10
+ var resolveFunc = function () { };
11
+ var rejectFunc = function () { };
12
+ var returnPromise = new Promise(function (resolve, reject) {
17
13
  resolveFunc = resolve;
18
14
  rejectFunc = reject;
19
15
  });
20
16
 
21
17
  if (!callback) {
22
- callback = function (err, friendList) {
23
- if (err) {
24
- return rejectFunc(err);
25
- }
26
- resolveFunc(friendList);
18
+ callback = function (/** @type {any} */ err, /** @type {any} */ data) {
19
+ if (err) return rejectFunc(err);
20
+ resolveFunc(data);
27
21
  };
28
22
  }
29
23
 
30
- const form = {
31
- client: "mercury",
24
+ var form = {
25
+ client: "mercury"
32
26
  };
33
27
 
34
- if (utils.getType(threadID) !== "Array") {
35
- threadID = [threadID];
36
- }
28
+ if (utils.getType(threadID) !== "Array") threadID = [threadID];
37
29
 
38
- const messageBox = accept ? "inbox" : "other";
30
+ var messageBox = accept ? "inbox" : "other";
39
31
 
40
- for (let i = 0; i < threadID.length; i++) {
41
- form[messageBox + "[" + i + "]"] = threadID[i];
42
- }
32
+ for (var i = 0; i < threadID.length; i++) form[messageBox + "[" + i + "]"] = threadID[i];
43
33
 
44
34
  defaultFuncs
45
- .post(
46
- "https://www.facebook.com/ajax/mercury/move_thread.php",
47
- ctx.jar,
48
- form,
49
- )
35
+ .post("https://www.facebook.com/ajax/mercury/move_thread.php", ctx.jar, form)
50
36
  .then(utils.parseAndCheckLogin(ctx, defaultFuncs))
51
- .then(function (resData) {
52
- if (resData.error) {
53
- throw resData;
54
- }
37
+ .then(function (/** @type {{ error: any; }} */ resData) {
38
+ if (resData.error) throw resData;
55
39
 
56
40
  return callback();
57
41
  })
58
- .catch(function (err) {
59
- console.error("handleMessageRequest", err);
42
+ .catch(function (/** @type {string} */ err) {
43
+ log.error("handleMessageRequest", err);
60
44
  return callback(err);
61
45
  });
62
46
 
package/src/httpGet.js CHANGED
@@ -1,64 +1,49 @@
1
1
  "use strict";
2
2
 
3
- const utils = require("../utils");
4
- // @NethWs3Dev
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
5
 
6
6
  module.exports = function (defaultFuncs, api, ctx) {
7
- return function httpGet(url, form, customHeader, callback, notAPI) {
8
- let resolveFunc = function () {};
9
- let rejectFunc = function () {};
7
+ return function httpGet(url, form, callback, notAPI) {
8
+ var resolveFunc = function () { };
9
+ var rejectFunc = function () { };
10
10
 
11
- const returnPromise = new Promise(function (resolve, reject) {
11
+ var returnPromise = new Promise(function (resolve, reject) {
12
12
  resolveFunc = resolve;
13
13
  rejectFunc = reject;
14
14
  });
15
15
 
16
- if (
17
- utils.getType(form) == "Function" ||
18
- utils.getType(form) == "AsyncFunction"
19
- ) {
16
+ if (!callback && (utils.getType(form) == "Function" || utils.getType(form) == "AsyncFunction")) {
20
17
  callback = form;
21
18
  form = {};
22
19
  }
23
20
 
24
- if (
25
- utils.getType(customHeader) == "Function" ||
26
- utils.getType(customHeader) == "AsyncFunction"
27
- ) {
28
- callback = customHeader;
29
- customHeader = {};
30
- }
31
-
32
- customHeader = customHeader || {};
21
+ form = form || {};
33
22
 
34
- callback =
35
- callback ||
36
- function (err, data) {
37
- if (err) return rejectFunc(err);
38
- resolveFunc(data);
39
- };
23
+ callback = callback || function (err, data) {
24
+ if (err) return rejectFunc(err);
25
+ resolveFunc(data);
26
+ };
40
27
 
41
28
  if (notAPI) {
42
29
  utils
43
- .get(url, ctx.jar, form, ctx.globalOptions, ctx, customHeader)
44
- .then(function (resData) {
45
- callback(null, resData.body.toString());
46
- })
30
+ .get(url, ctx.jar, form, ctx.globalOptions)
31
+ .then(resData => callback(null, resData.body.toString()))
47
32
  .catch(function (err) {
48
- console.error("httpGet", err);
33
+ log.error("httpGet", err);
49
34
  return callback(err);
50
35
  });
51
- } else {
36
+ }
37
+ else {
52
38
  defaultFuncs
53
- .get(url, ctx.jar, form, null, customHeader)
54
- .then(function (resData) {
55
- callback(null, resData.body.toString());
56
- })
39
+ .get(url, ctx.jar, form)
40
+ .then(resData => callback(null, resData.body.toString()))
57
41
  .catch(function (err) {
58
- console.error("httpGet", err);
42
+ log.error("httpGet", err);
59
43
  return callback(err);
60
44
  });
61
45
  }
46
+
62
47
  return returnPromise;
63
48
  };
64
- };
49
+ };
package/src/httpPost.js CHANGED
@@ -1,61 +1,45 @@
1
1
  "use strict";
2
2
 
3
- const utils = require("../utils");
4
- // @NethWs3Dev
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
5
 
6
6
  module.exports = function (defaultFuncs, api, ctx) {
7
- return function httpPost(url, form, customHeader, callback, notAPI) {
8
- let resolveFunc = function () {};
9
- let rejectFunc = function () {};
7
+ return function httpGet(url, form, callback, notAPI) {
8
+ var resolveFunc = function () { };
9
+ var rejectFunc = function () { };
10
10
 
11
- const returnPromise = new Promise(function (resolve, reject) {
11
+ var returnPromise = new Promise(function (resolve, reject) {
12
12
  resolveFunc = resolve;
13
13
  rejectFunc = reject;
14
14
  });
15
15
 
16
- if (
17
- utils.getType(form) == "Function" ||
18
- utils.getType(form) == "AsyncFunction"
19
- ) {
16
+ if (!callback && (utils.getType(form) == "Function" || utils.getType(form) == "AsyncFunction")) {
20
17
  callback = form;
21
18
  form = {};
22
19
  }
23
20
 
24
- if (
25
- utils.getType(customHeader) == "Function" ||
26
- utils.getType(customHeader) == "AsyncFunction"
27
- ) {
28
- callback = customHeader;
29
- customHeader = {};
30
- }
31
-
32
- customHeader = customHeader || {};
21
+ form = form || {};
33
22
 
34
- callback =
35
- callback ||
36
- function (err, data) {
37
- if (err) return rejectFunc(err);
38
- resolveFunc(data);
39
- };
23
+ callback = callback || function (err, data) {
24
+ if (err) return rejectFunc(err);
25
+ resolveFunc(data);
26
+ };
40
27
 
41
28
  if (notAPI) {
42
29
  utils
43
- .post(url, ctx.jar, form, ctx.globalOptions, ctx, customHeader)
44
- .then(function (resData) {
45
- callback(null, resData.body.toString());
46
- })
30
+ .post(url, ctx.jar, form, ctx.globalOptions)
31
+ .then(resData => callback(null, resData.body.toString()))
47
32
  .catch(function (err) {
48
- console.error("httpPost", err);
33
+ log.error("httpPost", err);
49
34
  return callback(err);
50
35
  });
51
- } else {
36
+ }
37
+ else {
52
38
  defaultFuncs
53
- .post(url, ctx.jar, form, {}, customHeader)
54
- .then(function (resData) {
55
- callback(null, resData.body.toString());
56
- })
39
+ .post(url, ctx.jar, form, {})
40
+ .then(resData => callback(null, resData.body.toString()))
57
41
  .catch(function (err) {
58
- console.error("httpPost", err);
42
+ log.error("httpPost", err);
59
43
  return callback(err);
60
44
  });
61
45
  }
@@ -1,69 +1,40 @@
1
1
  "use strict";
2
2
 
3
- const utils = require("../utils");
4
- // @NethWs3Dev
3
+ var utils = require("../utils");
4
+ var log = require("npmlog");
5
5
 
6
- module.exports = function (defaultFuncs, api, ctx) {
7
- return function httpPostFormData(url, form, customHeader, callback, notAPI) {
8
- let resolveFunc = function () {};
9
- let rejectFunc = function () {};
6
+ module.exports = function(defaultFuncs, api, ctx) {
7
+ return function httpPostFormData(url, form, callback) {
8
+ var resolveFunc = function(){};
9
+ var rejectFunc = function(){};
10
10
 
11
- const returnPromise = new Promise(function (resolve, reject) {
11
+ var returnPromise = new Promise(function (resolve, reject) {
12
12
  resolveFunc = resolve;
13
13
  rejectFunc = reject;
14
14
  });
15
15
 
16
- if (
17
- utils.getType(form) == "Function" ||
18
- utils.getType(form) == "AsyncFunction"
19
- ) {
16
+ if (!callback && (utils.getType(form) == "Function" || utils.getType(form) == "AsyncFunction")) {
20
17
  callback = form;
21
18
  form = {};
22
19
  }
23
20
 
24
- if (
25
- utils.getType(customHeader) == "Function" ||
26
- utils.getType(customHeader) == "AsyncFunction"
27
- ) {
28
- callback = customHeader;
29
- customHeader = {};
30
- }
31
-
32
- customHeader = customHeader || {};
33
-
34
- if (utils.getType(callback) == "Boolean") {
35
- notAPI = callback;
36
- callback = null;
37
- }
38
-
39
- callback =
40
- callback ||
41
- function (err, data) {
21
+ form = form || {};
22
+
23
+
24
+ callback = callback || function(err, data) {
42
25
  if (err) return rejectFunc(err);
43
26
  resolveFunc(data);
44
- };
45
-
46
- if (notAPI) {
47
- utils
48
- .postFormData(url, ctx.jar, form, ctx.globalOptions, ctx, customHeader)
49
- .then(function (resData) {
50
- callback(null, resData.body.toString());
51
- })
52
- .catch(function (err) {
53
- console.error("httpPostFormData", err);
54
- return callback(err);
55
- });
56
- } else {
57
- defaultFuncs
58
- .postFormData(url, ctx.jar, form, null, customHeader)
59
- .then(function (resData) {
60
- callback(null, resData.body.toString());
61
- })
62
- .catch(function (err) {
63
- console.error("httpPostFormData", err);
64
- return callback(err);
65
- });
66
- }
27
+ };
28
+
29
+ defaultFuncs
30
+ .postFormData(url, ctx.jar, form)
31
+ .then(function(resData) {
32
+ callback(null, resData.body.toString());
33
+ })
34
+ .catch(function(err) {
35
+ log.error("httpPostFormData", err);
36
+ return callback(err);
37
+ });
67
38
 
68
39
  return returnPromise;
69
40
  };