@queenanya/baileys 6.5.8

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 (149) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +960 -0
  3. package/WAProto/GenerateStatics.sh +4 -0
  4. package/WAProto/WAProto.proto +2879 -0
  5. package/WAProto/index.d.ts +32245 -0
  6. package/WAProto/index.js +87831 -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/readme.md +6 -0
  16. package/WASignalGroup/sender_chain_key.js +50 -0
  17. package/WASignalGroup/sender_key_distribution_message.js +78 -0
  18. package/WASignalGroup/sender_key_message.js +92 -0
  19. package/WASignalGroup/sender_key_name.js +70 -0
  20. package/WASignalGroup/sender_key_record.js +56 -0
  21. package/WASignalGroup/sender_key_state.js +129 -0
  22. package/WASignalGroup/sender_message_key.js +39 -0
  23. package/lib/Defaults/baileys-version.json +3 -0
  24. package/lib/Defaults/index.d.ts +283 -0
  25. package/lib/Defaults/index.js +115 -0
  26. package/lib/Defaults/phonenumber-mcc.json +223 -0
  27. package/lib/Signal/libsignal.d.ts +3 -0
  28. package/lib/Signal/libsignal.js +152 -0
  29. package/lib/Socket/Client/abstract-socket-client.d.ts +17 -0
  30. package/lib/Socket/Client/abstract-socket-client.js +13 -0
  31. package/lib/Socket/Client/index.d.ts +3 -0
  32. package/lib/Socket/Client/index.js +19 -0
  33. package/lib/Socket/Client/mobile-socket-client.d.ts +13 -0
  34. package/lib/Socket/Client/mobile-socket-client.js +65 -0
  35. package/lib/Socket/Client/web-socket-client.d.ts +12 -0
  36. package/lib/Socket/Client/web-socket-client.js +62 -0
  37. package/lib/Socket/business.d.ts +126 -0
  38. package/lib/Socket/business.js +259 -0
  39. package/lib/Socket/chats.d.ts +75 -0
  40. package/lib/Socket/chats.js +842 -0
  41. package/lib/Socket/groups.d.ts +107 -0
  42. package/lib/Socket/groups.js +291 -0
  43. package/lib/Socket/index.d.ts +128 -0
  44. package/lib/Socket/index.js +10 -0
  45. package/lib/Socket/messages-recv.d.ts +115 -0
  46. package/lib/Socket/messages-recv.js +725 -0
  47. package/lib/Socket/messages-send.d.ts +112 -0
  48. package/lib/Socket/messages-send.js +660 -0
  49. package/lib/Socket/registration.d.ts +223 -0
  50. package/lib/Socket/registration.js +166 -0
  51. package/lib/Socket/socket.d.ts +42 -0
  52. package/lib/Socket/socket.js +587 -0
  53. package/lib/Store/index.d.ts +3 -0
  54. package/lib/Store/index.js +10 -0
  55. package/lib/Store/make-cache-manager-store.d.ts +14 -0
  56. package/lib/Store/make-cache-manager-store.js +83 -0
  57. package/lib/Store/make-in-memory-store.d.ts +117 -0
  58. package/lib/Store/make-in-memory-store.js +437 -0
  59. package/lib/Store/make-ordered-dictionary.d.ts +13 -0
  60. package/lib/Store/make-ordered-dictionary.js +81 -0
  61. package/lib/Store/object-repository.d.ts +10 -0
  62. package/lib/Store/object-repository.js +27 -0
  63. package/lib/Types/Auth.d.ts +108 -0
  64. package/lib/Types/Auth.js +2 -0
  65. package/lib/Types/Call.d.ts +12 -0
  66. package/lib/Types/Call.js +2 -0
  67. package/lib/Types/Chat.d.ts +102 -0
  68. package/lib/Types/Chat.js +4 -0
  69. package/lib/Types/Contact.d.ts +18 -0
  70. package/lib/Types/Contact.js +2 -0
  71. package/lib/Types/Events.d.ts +152 -0
  72. package/lib/Types/Events.js +2 -0
  73. package/lib/Types/GroupMetadata.d.ts +44 -0
  74. package/lib/Types/GroupMetadata.js +2 -0
  75. package/lib/Types/Label.d.ts +35 -0
  76. package/lib/Types/Label.js +27 -0
  77. package/lib/Types/LabelAssociation.d.ts +29 -0
  78. package/lib/Types/LabelAssociation.js +9 -0
  79. package/lib/Types/Message.d.ts +255 -0
  80. package/lib/Types/Message.js +9 -0
  81. package/lib/Types/Product.d.ts +78 -0
  82. package/lib/Types/Product.js +2 -0
  83. package/lib/Types/Signal.d.ts +57 -0
  84. package/lib/Types/Signal.js +2 -0
  85. package/lib/Types/Socket.d.ts +109 -0
  86. package/lib/Types/Socket.js +2 -0
  87. package/lib/Types/State.d.ts +27 -0
  88. package/lib/Types/State.js +2 -0
  89. package/lib/Types/index.d.ts +54 -0
  90. package/lib/Types/index.js +39 -0
  91. package/lib/Utils/auth-utils.d.ts +18 -0
  92. package/lib/Utils/auth-utils.js +204 -0
  93. package/lib/Utils/baileys-event-stream.d.ts +16 -0
  94. package/lib/Utils/baileys-event-stream.js +63 -0
  95. package/lib/Utils/business.d.ts +22 -0
  96. package/lib/Utils/business.js +234 -0
  97. package/lib/Utils/chat-utils.d.ts +71 -0
  98. package/lib/Utils/chat-utils.js +710 -0
  99. package/lib/Utils/crypto.d.ts +41 -0
  100. package/lib/Utils/crypto.js +151 -0
  101. package/lib/Utils/decode-wa-message.d.ts +19 -0
  102. package/lib/Utils/decode-wa-message.js +160 -0
  103. package/lib/Utils/event-buffer.d.ts +35 -0
  104. package/lib/Utils/event-buffer.js +514 -0
  105. package/lib/Utils/generics.d.ts +93 -0
  106. package/lib/Utils/generics.js +366 -0
  107. package/lib/Utils/history.d.ts +15 -0
  108. package/lib/Utils/history.js +91 -0
  109. package/lib/Utils/index.d.ts +17 -0
  110. package/lib/Utils/index.js +33 -0
  111. package/lib/Utils/link-preview.d.ts +21 -0
  112. package/lib/Utils/link-preview.js +93 -0
  113. package/lib/Utils/logger.d.ts +4 -0
  114. package/lib/Utils/logger.js +7 -0
  115. package/lib/Utils/lt-hash.d.ts +12 -0
  116. package/lib/Utils/lt-hash.js +51 -0
  117. package/lib/Utils/make-mutex.d.ts +7 -0
  118. package/lib/Utils/make-mutex.js +43 -0
  119. package/lib/Utils/messages-media.d.ts +107 -0
  120. package/lib/Utils/messages-media.js +680 -0
  121. package/lib/Utils/messages.d.ts +76 -0
  122. package/lib/Utils/messages.js +762 -0
  123. package/lib/Utils/noise-handler.d.ts +20 -0
  124. package/lib/Utils/noise-handler.js +142 -0
  125. package/lib/Utils/process-message.d.ts +41 -0
  126. package/lib/Utils/process-message.js +297 -0
  127. package/lib/Utils/signal.d.ts +32 -0
  128. package/lib/Utils/signal.js +151 -0
  129. package/lib/Utils/use-multi-file-auth-state.d.ts +12 -0
  130. package/lib/Utils/use-multi-file-auth-state.js +80 -0
  131. package/lib/Utils/validate-connection.d.ts +11 -0
  132. package/lib/Utils/validate-connection.js +187 -0
  133. package/lib/WABinary/constants.d.ts +27 -0
  134. package/lib/WABinary/constants.js +40 -0
  135. package/lib/WABinary/decode.d.ts +7 -0
  136. package/lib/WABinary/decode.js +252 -0
  137. package/lib/WABinary/encode.d.ts +3 -0
  138. package/lib/WABinary/encode.js +228 -0
  139. package/lib/WABinary/generic-utils.d.ts +15 -0
  140. package/lib/WABinary/generic-utils.js +110 -0
  141. package/lib/WABinary/index.d.ts +5 -0
  142. package/lib/WABinary/index.js +21 -0
  143. package/lib/WABinary/jid-utils.d.ts +27 -0
  144. package/lib/WABinary/jid-utils.js +56 -0
  145. package/lib/WABinary/types.d.ts +18 -0
  146. package/lib/WABinary/types.js +2 -0
  147. package/lib/index.d.ts +10 -0
  148. package/lib/index.js +29 -0
  149. package/package.json +113 -0
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jidNormalizedUser = exports.isJidStatusBroadcast = exports.isJidGroup = exports.isJidBroadcast = 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, agent] = userAgent.split('_');
22
+ return {
23
+ server,
24
+ user,
25
+ agent: agent ? +agent : undefined,
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 broadcast */
40
+ const isJidBroadcast = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@broadcast'));
41
+ exports.isJidBroadcast = isJidBroadcast;
42
+ /** is the jid a group */
43
+ const isJidGroup = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@g.us'));
44
+ exports.isJidGroup = isJidGroup;
45
+ /** is the jid the status broadcast */
46
+ const isJidStatusBroadcast = (jid) => jid === 'status@broadcast';
47
+ exports.isJidStatusBroadcast = isJidStatusBroadcast;
48
+ const jidNormalizedUser = (jid) => {
49
+ const result = (0, exports.jidDecode)(jid);
50
+ if (!result) {
51
+ return '';
52
+ }
53
+ const { user, server } = result;
54
+ return (0, exports.jidEncode)(user, server === 'c.us' ? 's.whatsapp.net' : server);
55
+ };
56
+ 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,113 @@
1
+ {
2
+ "name": "@queenanya/baileys",
3
+ "version": "6.5.8",
4
+ "description": "WhatsApp API",
5
+ "keywords": [
6
+ "whatsapp",
7
+ "js-whatsapp",
8
+ "whatsapp-api",
9
+ "whatsapp-web",
10
+ "whatsapp-chat",
11
+ "whatsapp-group",
12
+ "automation",
13
+ "multi-device"
14
+ ],
15
+ "homepage": "https://github.com/WhiskeySockets/Baileys",
16
+ "repository": {
17
+ "url": "git@github.com:WhiskeySockets/Baileys.git"
18
+ },
19
+ "license": "MIT",
20
+ "author": "Adhiraj Singh",
21
+ "main": "lib/index.js",
22
+ "types": "lib/index.d.ts",
23
+ "files": [
24
+ "lib/*",
25
+ "WAProto/*",
26
+ "WASignalGroup/*.js"
27
+ ],
28
+ "scripts": {
29
+ "build:all": "tsc && typedoc",
30
+ "build:docs": "typedoc",
31
+ "build:tsc": "tsc",
32
+ "changelog:last": "conventional-changelog -p angular -r 2",
33
+ "changelog:preview": "conventional-changelog -p angular -u",
34
+ "changelog:update": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0",
35
+ "example": "node --inspect -r ts-node/register Example/example.ts",
36
+ "gen:protobuf": "sh WAProto/GenerateStatics.sh",
37
+ "lint": "eslint src --ext .js,.ts,.jsx,.tsx",
38
+ "lint:fix": "eslint src --fix --ext .js,.ts,.jsx,.tsx",
39
+ "prepack": "tsc",
40
+ "prepare": "tsc",
41
+ "release": "release-it",
42
+ "test": "jest"
43
+ },
44
+ "dependencies": {
45
+ "@adiwajshing/keyed-db": "^0.2.4",
46
+ "@hapi/boom": "^9.1.3",
47
+ "@queenanya/ytdlcore": "npm:@queenanya/ytdlcore",
48
+ "@queenanya/ytsearch": "npm:@queenanya/ytsearch",
49
+ "audio-decode": "^2.1.3",
50
+ "axios": "^1.3.3",
51
+ "cache-manager": "^5.2.2",
52
+ "chalk": "^4.1.2",
53
+ "child_process": "^1.0.2",
54
+ "dotenv": "^16.0.0 || ^16.0.3 || ^16.1.4 || latest",
55
+ "express": "^4.18.1 || ^4.18.2",
56
+ "futoin-hkdf": "^1.5.1",
57
+ "libphonenumber-js": "^1.10.20",
58
+ "libsignal": "npm:@queenanya/libsignal",
59
+ "music-metadata": "^7.12.3",
60
+ "node-cache": "^5.1.2",
61
+ "os": "^0.1.2",
62
+ "pino": "^7.0.0",
63
+ "protobufjs": "^6.11.3",
64
+ "uuid": "^9.0.0",
65
+ "ws": "^8.13.0",
66
+ "yt-search": "npm:@queenanya/ytsearch",
67
+ "ytdl-core": "npm:@queenanya/ytdlcore",
68
+ "youtube-yts": "npm:@queenanya/ytsearch",
69
+ "youtubedl-core": "npm:@queenanya/ytdlcore"
70
+ },
71
+ "devDependencies": {
72
+ "@adiwajshing/eslint-config": "github:adiwajshing/eslint-config",
73
+ "@types/got": "^9.6.11",
74
+ "@types/jest": "^27.5.1",
75
+ "@types/node": "^16.0.0",
76
+ "@types/sharp": "^0.29.4",
77
+ "@types/ws": "^8.0.0",
78
+ "conventional-changelog-cli": "^2.2.2",
79
+ "eslint": "^8.0.0",
80
+ "jest": "^27.0.6",
81
+ "jimp": "^0.16.1",
82
+ "link-preview-js": "^3.0.0",
83
+ "open": "^8.4.2",
84
+ "qrcode-terminal": "^0.12.0",
85
+ "release-it": "^15.10.3",
86
+ "sharp": "^0.30.5",
87
+ "ts-jest": "^27.0.3",
88
+ "ts-node": "^10.8.1",
89
+ "typedoc": "^0.24.7",
90
+ "typescript": "^4.6.4"
91
+ },
92
+ "peerDependencies": {
93
+ "jimp": "^0.16.1",
94
+ "link-preview-js": "^3.0.0",
95
+ "qrcode-terminal": "^0.12.0",
96
+ "sharp": "^0.30.5"
97
+ },
98
+ "peerDependenciesMeta": {
99
+ "jimp": {
100
+ "optional": true
101
+ },
102
+ "link-preview-js": {
103
+ "optional": true
104
+ },
105
+ "qrcode-terminal": {
106
+ "optional": true
107
+ },
108
+ "sharp": {
109
+ "optional": true
110
+ }
111
+ },
112
+ "packageManager": "yarn@1.22.19"
113
+ }