@genuxofficial/baileys 1.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.
- package/LICENSE +21 -0
- package/README.md +1 -0
- package/WAProto/GenerateStatics.sh +4 -0
- package/WAProto/WAProto.proto +3344 -0
- package/WAProto/index.d.ts +37016 -0
- package/WAProto/index.js +101044 -0
- package/WASignalGroup/GroupProtocol.js +1697 -0
- package/WASignalGroup/ciphertext_message.js +16 -0
- package/WASignalGroup/group_cipher.js +120 -0
- package/WASignalGroup/group_session_builder.js +46 -0
- package/WASignalGroup/index.js +5 -0
- package/WASignalGroup/keyhelper.js +21 -0
- package/WASignalGroup/protobufs.js +3 -0
- package/WASignalGroup/queue_job.js +69 -0
- package/WASignalGroup/sender_chain_key.js +50 -0
- package/WASignalGroup/sender_key_distribution_message.js +78 -0
- package/WASignalGroup/sender_key_message.js +92 -0
- package/WASignalGroup/sender_key_name.js +70 -0
- package/WASignalGroup/sender_key_record.js +56 -0
- package/WASignalGroup/sender_key_state.js +129 -0
- package/WASignalGroup/sender_message_key.js +39 -0
- package/lib/Defaults/baileys-version.json +3 -0
- package/lib/Defaults/index.d.ts +53 -0
- package/lib/Defaults/index.js +106 -0
- package/lib/Signal/libsignal.d.ts +3 -0
- package/lib/Signal/libsignal.js +152 -0
- package/lib/Socket/Client/index.d.ts +2 -0
- package/lib/Socket/Client/index.js +18 -0
- package/lib/Socket/Client/types.d.ts +17 -0
- package/lib/Socket/Client/types.js +13 -0
- package/lib/Socket/Client/websocket.d.ts +12 -0
- package/lib/Socket/Client/websocket.js +62 -0
- package/lib/Socket/business.d.ts +149 -0
- package/lib/Socket/business.js +260 -0
- package/lib/Socket/chats.d.ts +85 -0
- package/lib/Socket/chats.js +850 -0
- package/lib/Socket/groups.d.ts +124 -0
- package/lib/Socket/groups.js +314 -0
- package/lib/Socket/index.d.ts +149 -0
- package/lib/Socket/index.js +10 -0
- package/lib/Socket/messages-recv.d.ts +136 -0
- package/lib/Socket/messages-recv.js +912 -0
- package/lib/Socket/messages-send.d.ts +130 -0
- package/lib/Socket/messages-send.js +673 -0
- package/lib/Socket/socket.d.ts +45 -0
- package/lib/Socket/socket.js +622 -0
- package/lib/Socket/usync.d.ts +38 -0
- package/lib/Socket/usync.js +70 -0
- package/lib/Store/index.d.ts +3 -0
- package/lib/Store/index.js +10 -0
- package/lib/Store/make-cache-manager-store.d.ts +14 -0
- package/lib/Store/make-cache-manager-store.js +83 -0
- package/lib/Store/make-in-memory-store.d.ts +118 -0
- package/lib/Store/make-in-memory-store.js +420 -0
- package/lib/Store/make-ordered-dictionary.d.ts +13 -0
- package/lib/Store/make-ordered-dictionary.js +81 -0
- package/lib/Store/object-repository.d.ts +10 -0
- package/lib/Store/object-repository.js +27 -0
- package/lib/Types/Auth.d.ts +105 -0
- package/lib/Types/Auth.js +2 -0
- package/lib/Types/Call.d.ts +13 -0
- package/lib/Types/Call.js +2 -0
- package/lib/Types/Chat.d.ts +108 -0
- package/lib/Types/Chat.js +4 -0
- package/lib/Types/Contact.d.ts +19 -0
- package/lib/Types/Contact.js +2 -0
- package/lib/Types/Events.d.ts +172 -0
- package/lib/Types/Events.js +2 -0
- package/lib/Types/GroupMetadata.d.ts +56 -0
- package/lib/Types/GroupMetadata.js +2 -0
- package/lib/Types/Label.d.ts +46 -0
- package/lib/Types/Label.js +27 -0
- package/lib/Types/LabelAssociation.d.ts +29 -0
- package/lib/Types/LabelAssociation.js +9 -0
- package/lib/Types/Message.d.ts +271 -0
- package/lib/Types/Message.js +9 -0
- package/lib/Types/Product.d.ts +78 -0
- package/lib/Types/Product.js +2 -0
- package/lib/Types/Signal.d.ts +57 -0
- package/lib/Types/Signal.js +2 -0
- package/lib/Types/Socket.d.ts +118 -0
- package/lib/Types/Socket.js +2 -0
- package/lib/Types/State.d.ts +27 -0
- package/lib/Types/State.js +2 -0
- package/lib/Types/USync.d.ts +25 -0
- package/lib/Types/USync.js +2 -0
- package/lib/Types/index.d.ts +63 -0
- package/lib/Types/index.js +41 -0
- package/lib/Utils/auth-utils.d.ts +18 -0
- package/lib/Utils/auth-utils.js +200 -0
- package/lib/Utils/baileys-event-stream.d.ts +16 -0
- package/lib/Utils/baileys-event-stream.js +63 -0
- package/lib/Utils/business.d.ts +22 -0
- package/lib/Utils/business.js +234 -0
- package/lib/Utils/chat-utils.d.ts +72 -0
- package/lib/Utils/chat-utils.js +745 -0
- package/lib/Utils/crypto.d.ts +42 -0
- package/lib/Utils/crypto.js +181 -0
- package/lib/Utils/decode-wa-message.d.ts +36 -0
- package/lib/Utils/decode-wa-message.js +205 -0
- package/lib/Utils/event-buffer.d.ts +35 -0
- package/lib/Utils/event-buffer.js +520 -0
- package/lib/Utils/generics.d.ts +94 -0
- package/lib/Utils/generics.js +433 -0
- package/lib/Utils/history.d.ts +19 -0
- package/lib/Utils/history.js +94 -0
- package/lib/Utils/index.d.ts +17 -0
- package/lib/Utils/index.js +33 -0
- package/lib/Utils/link-preview.d.ts +21 -0
- package/lib/Utils/link-preview.js +116 -0
- package/lib/Utils/logger.d.ts +11 -0
- package/lib/Utils/logger.js +7 -0
- package/lib/Utils/lt-hash.d.ts +12 -0
- package/lib/Utils/lt-hash.js +51 -0
- package/lib/Utils/make-mutex.d.ts +7 -0
- package/lib/Utils/make-mutex.js +44 -0
- package/lib/Utils/messages-media.d.ts +108 -0
- package/lib/Utils/messages-media.js +667 -0
- package/lib/Utils/messages.d.ts +78 -0
- package/lib/Utils/messages.js +760 -0
- package/lib/Utils/noise-handler.d.ts +21 -0
- package/lib/Utils/noise-handler.js +150 -0
- package/lib/Utils/process-message.d.ts +42 -0
- package/lib/Utils/process-message.js +373 -0
- package/lib/Utils/signal.d.ts +33 -0
- package/lib/Utils/signal.js +153 -0
- package/lib/Utils/use-multi-file-auth-state.d.ts +12 -0
- package/lib/Utils/use-multi-file-auth-state.js +94 -0
- package/lib/Utils/validate-connection.d.ts +10 -0
- package/lib/Utils/validate-connection.js +175 -0
- package/lib/WABinary/constants.d.ts +27 -0
- package/lib/WABinary/constants.js +40 -0
- package/lib/WABinary/decode.d.ts +8 -0
- package/lib/WABinary/decode.js +254 -0
- package/lib/WABinary/encode.d.ts +4 -0
- package/lib/WABinary/encode.js +234 -0
- package/lib/WABinary/generic-utils.d.ts +16 -0
- package/lib/WABinary/generic-utils.js +110 -0
- package/lib/WABinary/index.d.ts +5 -0
- package/lib/WABinary/index.js +21 -0
- package/lib/WABinary/jid-utils.d.ts +31 -0
- package/lib/WABinary/jid-utils.js +62 -0
- package/lib/WABinary/types.d.ts +18 -0
- package/lib/WABinary/types.js +2 -0
- package/lib/WAM/BinaryInfo.d.ts +18 -0
- package/lib/WAM/BinaryInfo.js +13 -0
- package/lib/WAM/constants.d.ts +39 -0
- package/lib/WAM/constants.js +15350 -0
- package/lib/WAM/encode.d.ts +4 -0
- package/lib/WAM/encode.js +155 -0
- package/lib/WAM/index.d.ts +3 -0
- package/lib/WAM/index.js +19 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +9 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +32 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +22 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +57 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +12 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +30 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +12 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +42 -0
- package/lib/WAUSync/Protocols/index.d.ts +4 -0
- package/lib/WAUSync/Protocols/index.js +20 -0
- package/lib/WAUSync/USyncQuery.d.ts +26 -0
- package/lib/WAUSync/USyncQuery.js +79 -0
- package/lib/WAUSync/USyncUser.d.ts +10 -0
- package/lib/WAUSync/USyncUser.js +22 -0
- package/lib/WAUSync/index.d.ts +3 -0
- package/lib/WAUSync/index.js +19 -0
- package/lib/index.d.ts +12 -0
- package/lib/index.js +31 -0
- package/package.json +104 -0
@@ -0,0 +1,62 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.jidNormalizedUser = exports.isJidNewsletter = 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: 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
|
+
/** is the jid a newsletter */
|
52
|
+
const isJidNewsletter = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@newsletter'));
|
53
|
+
exports.isJidNewsletter = isJidNewsletter;
|
54
|
+
const jidNormalizedUser = (jid) => {
|
55
|
+
const result = (0, exports.jidDecode)(jid);
|
56
|
+
if (!result) {
|
57
|
+
return '';
|
58
|
+
}
|
59
|
+
const { user, server } = result;
|
60
|
+
return (0, exports.jidEncode)(user, server === 'c.us' ? 's.whatsapp.net' : server);
|
61
|
+
};
|
62
|
+
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,18 @@
|
|
1
|
+
/// <reference types="node" />
|
2
|
+
/// <reference types="node" />
|
3
|
+
export declare class BinaryInfo {
|
4
|
+
protocolVersion: number;
|
5
|
+
sequence: number;
|
6
|
+
events: {
|
7
|
+
[x: string]: {
|
8
|
+
props: {
|
9
|
+
[x: string]: import("./constants").Value;
|
10
|
+
};
|
11
|
+
globals: {
|
12
|
+
[x: string]: import("./constants").Value;
|
13
|
+
};
|
14
|
+
};
|
15
|
+
}[];
|
16
|
+
buffer: Buffer[];
|
17
|
+
constructor(options?: Partial<BinaryInfo>);
|
18
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.BinaryInfo = void 0;
|
4
|
+
class BinaryInfo {
|
5
|
+
constructor(options = {}) {
|
6
|
+
this.protocolVersion = 5;
|
7
|
+
this.sequence = 0;
|
8
|
+
this.events = [];
|
9
|
+
this.buffer = [];
|
10
|
+
Object.assign(this, options);
|
11
|
+
}
|
12
|
+
}
|
13
|
+
exports.BinaryInfo = BinaryInfo;
|
@@ -0,0 +1,39 @@
|
|
1
|
+
export declare const WEB_EVENTS: Event[];
|
2
|
+
export declare const WEB_GLOBALS: Global[];
|
3
|
+
export declare const FLAG_BYTE = 8, FLAG_GLOBAL = 0, FLAG_EVENT = 1, FLAG_FIELD = 2, FLAG_EXTENDED = 4;
|
4
|
+
export type Event = {
|
5
|
+
name: string;
|
6
|
+
id: number;
|
7
|
+
props: {
|
8
|
+
[key: string]: [number, string | {
|
9
|
+
[key: string]: number;
|
10
|
+
}];
|
11
|
+
};
|
12
|
+
weight: number;
|
13
|
+
wamChannel: string;
|
14
|
+
privateStatsIdInt: number;
|
15
|
+
};
|
16
|
+
export type Global = {
|
17
|
+
name: string;
|
18
|
+
id: number;
|
19
|
+
type: string | {
|
20
|
+
[key: string]: number;
|
21
|
+
};
|
22
|
+
validator?: string;
|
23
|
+
channels: string[];
|
24
|
+
};
|
25
|
+
type EventByName<T extends Event['name']> = Extract<Event, {
|
26
|
+
name: T;
|
27
|
+
}>;
|
28
|
+
export type EventInputType = {
|
29
|
+
[key in Event['name']]: {
|
30
|
+
props: {
|
31
|
+
[k in keyof EventByName<key>['props']]: Value;
|
32
|
+
};
|
33
|
+
globals: {
|
34
|
+
[x: string]: Value;
|
35
|
+
};
|
36
|
+
};
|
37
|
+
} & {};
|
38
|
+
export type Value = number | null | string;
|
39
|
+
export {};
|