gifted-baileys 1.5.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 (148) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +900 -0
  3. package/WAProto/GenerateStatics.sh +4 -0
  4. package/WAProto/WAProto.proto +3344 -0
  5. package/WAProto/index.d.ts +37016 -0
  6. package/WAProto/index.js +101044 -0
  7. package/WASignalGroup/GroupProtocol.js +1697 -0
  8. package/WASignalGroup/ciphertext_message.js +16 -0
  9. package/WASignalGroup/group_cipher.js +120 -0
  10. package/WASignalGroup/group_session_builder.js +46 -0
  11. package/WASignalGroup/index.js +5 -0
  12. package/WASignalGroup/keyhelper.js +21 -0
  13. package/WASignalGroup/protobufs.js +3 -0
  14. package/WASignalGroup/queue_job.js +69 -0
  15. package/WASignalGroup/sender_chain_key.js +50 -0
  16. package/WASignalGroup/sender_key_distribution_message.js +78 -0
  17. package/WASignalGroup/sender_key_message.js +92 -0
  18. package/WASignalGroup/sender_key_name.js +70 -0
  19. package/WASignalGroup/sender_key_record.js +56 -0
  20. package/WASignalGroup/sender_key_state.js +129 -0
  21. package/WASignalGroup/sender_message_key.js +39 -0
  22. package/lib/Defaults/baileys-version.json +3 -0
  23. package/lib/Defaults/index.d.ts +284 -0
  24. package/lib/Defaults/index.js +120 -0
  25. package/lib/Defaults/phonenumber-mcc.json +223 -0
  26. package/lib/Signal/libsignal.d.ts +3 -0
  27. package/lib/Signal/libsignal.js +152 -0
  28. package/lib/Socket/Client/abstract-socket-client.d.ts +17 -0
  29. package/lib/Socket/Client/abstract-socket-client.js +13 -0
  30. package/lib/Socket/Client/index.d.ts +3 -0
  31. package/lib/Socket/Client/index.js +19 -0
  32. package/lib/Socket/Client/mobile-socket-client.d.ts +13 -0
  33. package/lib/Socket/Client/mobile-socket-client.js +65 -0
  34. package/lib/Socket/Client/web-socket-client.d.ts +12 -0
  35. package/lib/Socket/Client/web-socket-client.js +62 -0
  36. package/lib/Socket/business.d.ts +135 -0
  37. package/lib/Socket/business.js +259 -0
  38. package/lib/Socket/chats.d.ts +79 -0
  39. package/lib/Socket/chats.js +854 -0
  40. package/lib/Socket/groups.d.ts +113 -0
  41. package/lib/Socket/groups.js +302 -0
  42. package/lib/Socket/index.d.ts +137 -0
  43. package/lib/Socket/index.js +10 -0
  44. package/lib/Socket/messages-recv.d.ts +124 -0
  45. package/lib/Socket/messages-recv.js +747 -0
  46. package/lib/Socket/messages-send.d.ts +119 -0
  47. package/lib/Socket/messages-send.js +663 -0
  48. package/lib/Socket/registration.d.ts +232 -0
  49. package/lib/Socket/registration.js +166 -0
  50. package/lib/Socket/socket.d.ts +42 -0
  51. package/lib/Socket/socket.js +588 -0
  52. package/lib/Store/index.d.ts +3 -0
  53. package/lib/Store/index.js +10 -0
  54. package/lib/Store/make-cache-manager-store.d.ts +13 -0
  55. package/lib/Store/make-cache-manager-store.js +83 -0
  56. package/lib/Store/make-in-memory-store.d.ts +117 -0
  57. package/lib/Store/make-in-memory-store.js +437 -0
  58. package/lib/Store/make-ordered-dictionary.d.ts +13 -0
  59. package/lib/Store/make-ordered-dictionary.js +81 -0
  60. package/lib/Store/object-repository.d.ts +10 -0
  61. package/lib/Store/object-repository.js +27 -0
  62. package/lib/Types/Auth.d.ts +108 -0
  63. package/lib/Types/Auth.js +2 -0
  64. package/lib/Types/Call.d.ts +13 -0
  65. package/lib/Types/Call.js +2 -0
  66. package/lib/Types/Chat.d.ts +102 -0
  67. package/lib/Types/Chat.js +4 -0
  68. package/lib/Types/Contact.d.ts +19 -0
  69. package/lib/Types/Contact.js +2 -0
  70. package/lib/Types/Events.d.ts +157 -0
  71. package/lib/Types/Events.js +2 -0
  72. package/lib/Types/GroupMetadata.d.ts +52 -0
  73. package/lib/Types/GroupMetadata.js +2 -0
  74. package/lib/Types/Label.d.ts +35 -0
  75. package/lib/Types/Label.js +27 -0
  76. package/lib/Types/LabelAssociation.d.ts +29 -0
  77. package/lib/Types/LabelAssociation.js +9 -0
  78. package/lib/Types/Message.d.ts +261 -0
  79. package/lib/Types/Message.js +9 -0
  80. package/lib/Types/Product.d.ts +78 -0
  81. package/lib/Types/Product.js +2 -0
  82. package/lib/Types/Signal.d.ts +57 -0
  83. package/lib/Types/Signal.js +2 -0
  84. package/lib/Types/Socket.d.ts +111 -0
  85. package/lib/Types/Socket.js +2 -0
  86. package/lib/Types/State.d.ts +27 -0
  87. package/lib/Types/State.js +2 -0
  88. package/lib/Types/index.d.ts +56 -0
  89. package/lib/Types/index.js +41 -0
  90. package/lib/Utils/auth-utils.d.ts +18 -0
  91. package/lib/Utils/auth-utils.js +204 -0
  92. package/lib/Utils/baileys-event-stream.d.ts +16 -0
  93. package/lib/Utils/baileys-event-stream.js +63 -0
  94. package/lib/Utils/business.d.ts +22 -0
  95. package/lib/Utils/business.js +234 -0
  96. package/lib/Utils/chat-utils.d.ts +71 -0
  97. package/lib/Utils/chat-utils.js +724 -0
  98. package/lib/Utils/crypto.d.ts +41 -0
  99. package/lib/Utils/crypto.js +151 -0
  100. package/lib/Utils/decode-wa-message.d.ts +19 -0
  101. package/lib/Utils/decode-wa-message.js +174 -0
  102. package/lib/Utils/event-buffer.d.ts +35 -0
  103. package/lib/Utils/event-buffer.js +514 -0
  104. package/lib/Utils/generics.d.ts +94 -0
  105. package/lib/Utils/generics.js +367 -0
  106. package/lib/Utils/history.d.ts +15 -0
  107. package/lib/Utils/history.js +91 -0
  108. package/lib/Utils/index.d.ts +17 -0
  109. package/lib/Utils/index.js +33 -0
  110. package/lib/Utils/link-preview.d.ts +21 -0
  111. package/lib/Utils/link-preview.js +93 -0
  112. package/lib/Utils/logger.d.ts +4 -0
  113. package/lib/Utils/logger.js +7 -0
  114. package/lib/Utils/lt-hash.d.ts +12 -0
  115. package/lib/Utils/lt-hash.js +51 -0
  116. package/lib/Utils/make-mutex.d.ts +7 -0
  117. package/lib/Utils/make-mutex.js +43 -0
  118. package/lib/Utils/messages-media.d.ts +107 -0
  119. package/lib/Utils/messages-media.js +680 -0
  120. package/lib/Utils/messages.d.ts +76 -0
  121. package/lib/Utils/messages.js +768 -0
  122. package/lib/Utils/noise-handler.d.ts +20 -0
  123. package/lib/Utils/noise-handler.js +142 -0
  124. package/lib/Utils/process-message.d.ts +41 -0
  125. package/lib/Utils/process-message.js +320 -0
  126. package/lib/Utils/signal.d.ts +32 -0
  127. package/lib/Utils/signal.js +151 -0
  128. package/lib/Utils/use-multi-file-auth-state.d.ts +12 -0
  129. package/lib/Utils/use-multi-file-auth-state.js +80 -0
  130. package/lib/Utils/validate-connection.d.ts +11 -0
  131. package/lib/Utils/validate-connection.js +191 -0
  132. package/lib/WABinary/constants.d.ts +27 -0
  133. package/lib/WABinary/constants.js +40 -0
  134. package/lib/WABinary/decode.d.ts +7 -0
  135. package/lib/WABinary/decode.js +252 -0
  136. package/lib/WABinary/encode.d.ts +3 -0
  137. package/lib/WABinary/encode.js +228 -0
  138. package/lib/WABinary/generic-utils.d.ts +15 -0
  139. package/lib/WABinary/generic-utils.js +110 -0
  140. package/lib/WABinary/index.d.ts +5 -0
  141. package/lib/WABinary/index.js +21 -0
  142. package/lib/WABinary/jid-utils.d.ts +29 -0
  143. package/lib/WABinary/jid-utils.js +59 -0
  144. package/lib/WABinary/types.d.ts +18 -0
  145. package/lib/WABinary/types.js +2 -0
  146. package/lib/index.d.ts +10 -0
  147. package/lib/index.js +29 -0
  148. package/package.json +104 -0
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jidNormalizedUser = exports.isJidStatusBroadcast = exports.isJidGroup = exports.isJidBroadcast = exports.isLidUser = exports.isJidUser = exports.areJidsSameUser = exports.jidDecode = exports.jidEncode = exports.STORIES_JID = exports.PSA_WID = exports.SERVER_JID = exports.OFFICIAL_BIZ_JID = exports.S_WHATSAPP_NET = void 0;
4
+ exports.S_WHATSAPP_NET = '@s.whatsapp.net';
5
+ exports.OFFICIAL_BIZ_JID = '16505361212@c.us';
6
+ exports.SERVER_JID = 'server@c.us';
7
+ exports.PSA_WID = '0@c.us';
8
+ exports.STORIES_JID = 'status@broadcast';
9
+ const jidEncode = (user, server, device, agent) => {
10
+ return `${user || ''}${!!agent ? `_${agent}` : ''}${!!device ? `:${device}` : ''}@${server}`;
11
+ };
12
+ exports.jidEncode = jidEncode;
13
+ const jidDecode = (jid) => {
14
+ const sepIdx = typeof jid === 'string' ? jid.indexOf('@') : -1;
15
+ if (sepIdx < 0) {
16
+ return undefined;
17
+ }
18
+ const server = jid.slice(sepIdx + 1);
19
+ const userCombined = jid.slice(0, sepIdx);
20
+ const [userAgent, device] = userCombined.split(':');
21
+ const user = userAgent.split('_')[0];
22
+ return {
23
+ server,
24
+ user,
25
+ domainType: server === 'lid' ? 1 : 0,
26
+ device: device ? +device : undefined
27
+ };
28
+ };
29
+ exports.jidDecode = jidDecode;
30
+ /** is the jid a user */
31
+ const areJidsSameUser = (jid1, jid2) => {
32
+ var _a, _b;
33
+ return (((_a = (0, exports.jidDecode)(jid1)) === null || _a === void 0 ? void 0 : _a.user) === ((_b = (0, exports.jidDecode)(jid2)) === null || _b === void 0 ? void 0 : _b.user));
34
+ };
35
+ exports.areJidsSameUser = areJidsSameUser;
36
+ /** is the jid a user */
37
+ const isJidUser = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@s.whatsapp.net'));
38
+ exports.isJidUser = isJidUser;
39
+ /** is the jid a group */
40
+ const isLidUser = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@lid'));
41
+ exports.isLidUser = isLidUser;
42
+ /** is the jid a broadcast */
43
+ const isJidBroadcast = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@broadcast'));
44
+ exports.isJidBroadcast = isJidBroadcast;
45
+ /** is the jid a group */
46
+ const isJidGroup = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@g.us'));
47
+ exports.isJidGroup = isJidGroup;
48
+ /** is the jid the status broadcast */
49
+ const isJidStatusBroadcast = (jid) => jid === 'status@broadcast';
50
+ exports.isJidStatusBroadcast = isJidStatusBroadcast;
51
+ const jidNormalizedUser = (jid) => {
52
+ const result = (0, exports.jidDecode)(jid);
53
+ if (!result) {
54
+ return '';
55
+ }
56
+ const { user, server } = result;
57
+ return (0, exports.jidEncode)(user, server === 'c.us' ? 's.whatsapp.net' : server);
58
+ };
59
+ exports.jidNormalizedUser = jidNormalizedUser;
@@ -0,0 +1,18 @@
1
+ import * as constants from './constants';
2
+ /**
3
+ * the binary node WA uses internally for communication
4
+ *
5
+ * this is manipulated soley as an object and it does not have any functions.
6
+ * This is done for easy serialization, to prevent running into issues with prototypes &
7
+ * to maintain functional code structure
8
+ * */
9
+ export type BinaryNode = {
10
+ tag: string;
11
+ attrs: {
12
+ [key: string]: string;
13
+ };
14
+ content?: BinaryNode[] | string | Uint8Array;
15
+ };
16
+ export type BinaryNodeAttributes = BinaryNode['attrs'];
17
+ export type BinaryNodeData = BinaryNode['content'];
18
+ export type BinaryNodeCodingOptions = typeof constants;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/lib/index.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ import makeWASocket from './Socket';
2
+ export * from '../WAProto';
3
+ export * from './Utils';
4
+ export * from './Types';
5
+ export * from './Store';
6
+ export * from './Defaults';
7
+ export * from './WABinary';
8
+ export type WASocket = ReturnType<typeof makeWASocket>;
9
+ export { makeWASocket };
10
+ export default makeWASocket;
package/lib/index.js ADDED
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.makeWASocket = void 0;
21
+ const Socket_1 = __importDefault(require("./Socket"));
22
+ exports.makeWASocket = Socket_1.default;
23
+ __exportStar(require("../WAProto"), exports);
24
+ __exportStar(require("./Utils"), exports);
25
+ __exportStar(require("./Types"), exports);
26
+ __exportStar(require("./Store"), exports);
27
+ __exportStar(require("./Defaults"), exports);
28
+ __exportStar(require("./WABinary"), exports);
29
+ exports.default = Socket_1.default;
package/package.json ADDED
@@ -0,0 +1,104 @@
1
+ {
2
+ "name": "gifted-baileys",
3
+ "version": "1.5.0",
4
+ "description": "WhatsApp Bot Baileys API",
5
+ "keywords": [
6
+ "whatsapp",
7
+ "js-whatsapp",
8
+ "whatsapp-api",
9
+ "whatsapp-web",
10
+ "whatsapp-chat",
11
+ "whatsapp-group",
12
+ "gifted-tech",
13
+ "gifted-baileys",
14
+ "automation",
15
+ "multi-device"
16
+ ],
17
+ "homepage": "https://github.com/mouricedevs/Gifted-Baileys",
18
+ "repository": {
19
+ "url": "git@github.com:mouricedevs/Gifted-Baileys.git"
20
+ },
21
+ "license": "MIT",
22
+ "author": "Gifted Tech",
23
+ "main": "lib/index.js",
24
+ "types": "lib/index.d.ts",
25
+ "files": [
26
+ "lib/*",
27
+ "WAProto/*",
28
+ "WASignalGroup/*.js"
29
+ ],
30
+ "scripts": {
31
+ "build:all": "tsc && typedoc",
32
+ "build:docs": "typedoc",
33
+ "build:tsc": "tsc",
34
+ "changelog:last": "conventional-changelog -p angular -r 2",
35
+ "changelog:preview": "conventional-changelog -p angular -u",
36
+ "changelog:update": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
37
+ "example": "node --inspect -r ts-node/register Example/example.ts",
38
+ "gen:protobuf": "sh WAProto/GenerateStatics.sh",
39
+ "lint": "eslint src --ext .js,.ts,.jsx,.tsx",
40
+ "lint:fix": "eslint src --fix --ext .js,.ts,.jsx,.tsx",
41
+ "prepack": "tsc",
42
+ "prepare": "tsc",
43
+ "release": "release-it",
44
+ "test": "jest"
45
+ },
46
+ "dependencies": {
47
+ "@adiwajshing/keyed-db": "^0.2.4",
48
+ "@hapi/boom": "^9.1.3",
49
+ "audio-decode": "^2.1.3",
50
+ "axios": "^1.3.3",
51
+ "cache-manager": "4.0.1",
52
+ "futoin-hkdf": "^1.5.1",
53
+ "libphonenumber-js": "^1.10.20",
54
+ "libsignal": "github:adiwajshing/libsignal-node",
55
+ "music-metadata": "^7.12.3",
56
+ "node-cache": "^5.1.2",
57
+ "pino": "^7.0.0",
58
+ "protobufjs": "^7.2.4",
59
+ "uuid": "^9.0.0",
60
+ "ws": "^8.13.0"
61
+ },
62
+ "devDependencies": {
63
+ "@adiwajshing/eslint-config": "github:adiwajshing/eslint-config",
64
+ "@types/got": "^9.6.11",
65
+ "@types/jest": "^27.5.1",
66
+ "@types/node": "^16.0.0",
67
+ "@types/sharp": "^0.29.4",
68
+ "@types/ws": "^8.0.0",
69
+ "conventional-changelog-cli": "^2.2.2",
70
+ "eslint": "^8.0.0",
71
+ "jest": "^27.0.6",
72
+ "jimp": "^0.16.1",
73
+ "link-preview-js": "^3.0.0",
74
+ "open": "^8.4.2",
75
+ "qrcode-terminal": "^0.12.0",
76
+ "release-it": "^15.10.3",
77
+ "sharp": "^0.30.5",
78
+ "ts-jest": "^27.0.3",
79
+ "ts-node": "^10.8.1",
80
+ "typedoc": "^0.24.7",
81
+ "typescript": "^4.6.4"
82
+ },
83
+ "peerDependencies": {
84
+ "jimp": "^0.16.1",
85
+ "link-preview-js": "^3.0.0",
86
+ "qrcode-terminal": "^0.12.0",
87
+ "sharp": "^0.32.2"
88
+ },
89
+ "peerDependenciesMeta": {
90
+ "jimp": {
91
+ "optional": true
92
+ },
93
+ "link-preview-js": {
94
+ "optional": true
95
+ },
96
+ "qrcode-terminal": {
97
+ "optional": true
98
+ },
99
+ "sharp": {
100
+ "optional": true
101
+ }
102
+ },
103
+ "packageManager": "yarn@1.22.19"
104
+ }