@alannxd/baileys 6.0.3 → 6.0.5
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/WAProto/GenerateStatics.sh +3 -0
- package/WAProto/WAProto.proto +5479 -0
- package/WAProto/fix-imports.js +85 -0
- package/WAProto/index.d.ts +14017 -0
- package/WAProto/index.js +201 -160
- package/engine-requirements.js +1 -1
- package/lib/Defaults/index.d.ts +37 -15
- package/lib/Defaults/index.js +119 -136
- package/lib/Signal/Group/ciphertext-message.d.ts +1 -0
- package/lib/Signal/Group/ciphertext-message.js +2 -5
- package/lib/Signal/Group/group-session-builder.d.ts +4 -3
- package/lib/Signal/Group/group-session-builder.js +7 -41
- package/lib/Signal/Group/group_cipher.d.ts +4 -4
- package/lib/Signal/Group/group_cipher.js +37 -51
- package/lib/Signal/Group/index.d.ts +12 -11
- package/lib/Signal/Group/index.js +12 -57
- package/lib/Signal/Group/keyhelper.d.ts +2 -1
- package/lib/Signal/Group/keyhelper.js +7 -44
- package/lib/Signal/Group/sender-chain-key.d.ts +3 -2
- package/lib/Signal/Group/sender-chain-key.js +7 -15
- package/lib/Signal/Group/sender-key-distribution-message.d.ts +2 -1
- package/lib/Signal/Group/sender-key-distribution-message.js +8 -11
- package/lib/Signal/Group/sender-key-message.d.ts +2 -1
- package/lib/Signal/Group/sender-key-message.js +9 -12
- package/lib/Signal/Group/sender-key-name.d.ts +1 -0
- package/lib/Signal/Group/sender-key-name.js +2 -5
- package/lib/Signal/Group/sender-key-record.d.ts +3 -2
- package/lib/Signal/Group/sender-key-record.js +9 -21
- package/lib/Signal/Group/sender-key-state.d.ts +7 -6
- package/lib/Signal/Group/sender-key-state.js +27 -42
- package/lib/Signal/Group/sender-message-key.d.ts +1 -0
- package/lib/Signal/Group/sender-message-key.js +4 -7
- package/lib/Signal/libsignal.d.ts +5 -3
- package/lib/Signal/libsignal.js +347 -90
- package/lib/Signal/lid-mapping.d.ts +23 -0
- package/lib/Signal/lid-mapping.js +277 -0
- package/lib/Socket/Client/index.d.ts +3 -3
- package/lib/Socket/Client/index.js +3 -19
- package/lib/Socket/Client/{abstract-socket-client.d.ts → types.d.ts} +4 -5
- package/lib/Socket/Client/types.js +11 -0
- package/lib/Socket/Client/{web-socket-client.d.ts → websocket.d.ts} +3 -2
- package/lib/Socket/Client/websocket.js +54 -0
- package/lib/Socket/business.d.ts +154 -108
- package/lib/Socket/business.js +162 -43
- package/lib/Socket/chats.d.ts +96 -239
- package/lib/Socket/chats.js +627 -427
- package/lib/Socket/communities.d.ts +239 -146
- package/lib/Socket/communities.js +90 -80
- package/lib/Socket/groups.d.ts +104 -57
- package/lib/Socket/groups.js +154 -161
- package/lib/Socket/index.d.ts +202 -115
- package/lib/Socket/index.js +11 -10
- package/lib/Socket/luxu.d.ts +22 -266
- package/lib/Socket/luxu.js +422 -465
- package/lib/Socket/messages-recv.d.ts +136 -84
- package/lib/Socket/messages-recv.js +1421 -615
- package/lib/Socket/messages-send.d.ts +142 -126
- package/lib/Socket/messages-send.js +878 -671
- package/lib/Socket/mex.d.ts +3 -0
- package/lib/Socket/mex.js +42 -0
- package/lib/Socket/newsletter.d.ts +121 -85
- package/lib/Socket/newsletter.js +147 -272
- package/lib/Socket/socket.d.ts +34 -19
- package/lib/Socket/socket.js +544 -313
- package/lib/Store/index.d.ts +10 -3
- package/lib/Store/index.js +10 -10
- package/lib/Store/keyed-db.d.ts +22 -0
- package/lib/Store/keyed-db.js +108 -0
- package/lib/Store/make-cache-manager-store.d.ts +17 -11
- package/lib/Store/make-cache-manager-store.js +43 -41
- package/lib/Store/make-in-memory-store.d.ts +39 -118
- package/lib/Store/make-in-memory-store.js +112 -341
- package/lib/Store/make-ordered-dictionary.d.ts +11 -10
- package/lib/Store/make-ordered-dictionary.js +14 -20
- package/lib/Store/object-repository.d.ts +10 -9
- package/lib/Store/object-repository.js +11 -6
- package/lib/Types/Auth.d.ts +19 -12
- package/lib/Types/Auth.js +2 -2
- package/lib/Types/Bussines.d.ts +25 -0
- package/lib/Types/Bussines.js +2 -0
- package/lib/Types/Call.d.ts +3 -1
- package/lib/Types/Call.js +2 -2
- package/lib/Types/Chat.d.ts +35 -13
- package/lib/Types/Chat.js +8 -4
- package/lib/Types/Contact.d.ts +8 -1
- package/lib/Types/Contact.js +2 -2
- package/lib/Types/Events.d.ts +116 -17
- package/lib/Types/Events.js +2 -2
- package/lib/Types/GroupMetadata.d.ts +21 -5
- package/lib/Types/GroupMetadata.js +2 -2
- package/lib/Types/Label.d.ts +12 -0
- package/lib/Types/Label.js +3 -5
- package/lib/Types/LabelAssociation.d.ts +1 -0
- package/lib/Types/LabelAssociation.js +3 -5
- package/lib/Types/Message.d.ts +105 -58
- package/lib/Types/Message.js +11 -9
- package/lib/Types/Mex.d.ts +141 -0
- package/lib/Types/Mex.js +37 -0
- package/lib/Types/Product.d.ts +2 -1
- package/lib/Types/Product.js +2 -2
- package/lib/Types/Signal.d.ts +32 -2
- package/lib/Types/Signal.js +2 -2
- package/lib/Types/Socket.d.ts +50 -25
- package/lib/Types/Socket.js +3 -2
- package/lib/Types/State.d.ts +72 -2
- package/lib/Types/State.js +56 -2
- package/lib/Types/USync.d.ts +3 -2
- package/lib/Types/USync.js +2 -2
- package/lib/Types/index.d.ts +22 -14
- package/lib/Types/index.js +15 -31
- package/lib/Utils/auth-utils.d.ts +12 -6
- package/lib/Utils/auth-utils.js +239 -143
- package/lib/Utils/browser-utils.d.ts +4 -0
- package/lib/Utils/browser-utils.js +28 -0
- package/lib/Utils/business.d.ts +3 -2
- package/lib/Utils/business.js +66 -69
- package/lib/Utils/chat-utils.d.ts +52 -23
- package/lib/Utils/chat-utils.js +396 -253
- package/lib/Utils/companion-reg-client-utils.d.ts +17 -0
- package/lib/Utils/companion-reg-client-utils.js +35 -0
- package/lib/Utils/crypto.d.ts +18 -22
- package/lib/Utils/crypto.js +57 -90
- package/lib/Utils/decode-wa-message.d.ts +55 -8
- package/lib/Utils/decode-wa-message.js +203 -84
- package/lib/Utils/event-buffer.d.ts +9 -8
- package/lib/Utils/event-buffer.js +185 -77
- package/lib/Utils/generics.d.ts +28 -29
- package/lib/Utils/generics.js +180 -210
- package/lib/Utils/history.d.ts +18 -9
- package/lib/Utils/history.js +93 -55
- package/lib/Utils/identity-change-handler.d.ts +44 -0
- package/lib/Utils/identity-change-handler.js +50 -0
- package/lib/Utils/index.d.ts +22 -17
- package/lib/Utils/index.js +22 -33
- package/lib/Utils/link-preview.d.ts +5 -5
- package/lib/Utils/link-preview.js +16 -24
- package/lib/Utils/logger.d.ts +11 -3
- package/lib/Utils/logger.js +3 -7
- package/lib/Utils/lt-hash.d.ts +8 -12
- package/lib/Utils/lt-hash.js +3 -46
- package/lib/Utils/make-mutex.d.ts +4 -2
- package/lib/Utils/make-mutex.js +24 -34
- package/lib/Utils/message-retry-manager.d.ts +115 -0
- package/lib/Utils/message-retry-manager.js +265 -0
- package/lib/Utils/messages-media.d.ts +61 -44
- package/lib/Utils/messages-media.js +451 -482
- package/lib/Utils/messages.d.ts +32 -18
- package/lib/Utils/messages.js +458 -369
- package/lib/Utils/noise-handler.d.ts +13 -14
- package/lib/Utils/noise-handler.js +145 -99
- package/lib/Utils/offline-node-processor.d.ts +17 -0
- package/lib/Utils/offline-node-processor.js +40 -0
- package/lib/Utils/pre-key-manager.d.ts +28 -0
- package/lib/Utils/pre-key-manager.js +106 -0
- package/lib/Utils/process-message.d.ts +31 -12
- package/lib/Utils/process-message.js +459 -150
- package/lib/Utils/reporting-utils.d.ts +11 -0
- package/lib/Utils/reporting-utils.js +258 -0
- package/lib/Utils/signal.d.ts +20 -5
- package/lib/Utils/signal.js +120 -72
- package/lib/Utils/stanza-ack.d.ts +11 -0
- package/lib/Utils/stanza-ack.js +38 -0
- package/lib/Utils/sync-action-utils.d.ts +19 -0
- package/lib/Utils/sync-action-utils.js +49 -0
- package/lib/Utils/tc-token-utils.d.ts +37 -0
- package/lib/Utils/tc-token-utils.js +163 -0
- package/lib/Utils/use-multi-file-auth-state.d.ts +2 -2
- package/lib/Utils/use-multi-file-auth-state.js +29 -27
- package/lib/Utils/validate-connection.d.ts +7 -7
- package/lib/Utils/validate-connection.js +73 -99
- package/lib/WABinary/constants.d.ts +25 -27
- package/lib/WABinary/constants.js +1281 -20
- package/lib/WABinary/decode.d.ts +5 -5
- package/lib/WABinary/decode.js +52 -42
- package/lib/WABinary/encode.d.ts +3 -3
- package/lib/WABinary/encode.js +110 -155
- package/lib/WABinary/generic-utils.d.ts +8 -7
- package/lib/WABinary/generic-utils.js +48 -49
- package/lib/WABinary/index.d.ts +6 -5
- package/lib/WABinary/index.js +6 -21
- package/lib/WABinary/jid-utils.d.ts +25 -8
- package/lib/WABinary/jid-utils.js +74 -40
- package/lib/WABinary/types.d.ts +2 -1
- package/lib/WABinary/types.js +2 -2
- package/lib/WAM/BinaryInfo.d.ts +3 -11
- package/lib/WAM/BinaryInfo.js +2 -5
- package/lib/WAM/constants.d.ts +5 -3
- package/lib/WAM/constants.js +19071 -11568
- package/lib/WAM/encode.d.ts +3 -3
- package/lib/WAM/encode.js +17 -22
- package/lib/WAM/index.d.ts +4 -3
- package/lib/WAM/index.js +4 -19
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +4 -3
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +33 -13
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +3 -2
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +11 -14
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +3 -2
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +9 -12
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +3 -2
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +9 -13
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts +10 -0
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +25 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +4 -3
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +20 -22
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +5 -3
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +13 -8
- package/lib/WAUSync/Protocols/index.d.ts +6 -4
- package/lib/WAUSync/Protocols/index.js +6 -20
- package/lib/WAUSync/USyncQuery.d.ts +6 -4
- package/lib/WAUSync/USyncQuery.js +44 -35
- package/lib/WAUSync/USyncUser.d.ts +10 -5
- package/lib/WAUSync/USyncUser.js +10 -5
- package/lib/WAUSync/index.d.ts +4 -0
- package/lib/WAUSync/index.js +4 -19
- package/lib/index.d.ts +10 -9
- package/lib/index.js +12 -34
- package/package.json +84 -53
- package/WAProto/fix-import.js +0 -29
- package/lib/Defaults/baileys-version.json +0 -3
- package/lib/Defaults/phonenumber-mcc.json +0 -223
- package/lib/Signal/Group/queue-job.d.ts +0 -1
- package/lib/Signal/Group/queue-job.js +0 -57
- package/lib/Socket/Client/abstract-socket-client.js +0 -13
- package/lib/Socket/Client/mobile-socket-client.d.ts +0 -13
- package/lib/Socket/Client/mobile-socket-client.js +0 -65
- package/lib/Socket/Client/web-socket-client.js +0 -62
- package/lib/Socket/registration.d.ts +0 -267
- package/lib/Socket/registration.js +0 -166
- package/lib/Socket/usync.d.ts +0 -36
- package/lib/Socket/usync.js +0 -70
- package/lib/Types/Newsletter.d.ts +0 -103
- package/lib/Types/Newsletter.js +0 -38
- package/lib/Utils/baileys-event-stream.d.ts +0 -16
- package/lib/Utils/baileys-event-stream.js +0 -63
package/lib/WAM/encode.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { BinaryInfo } from './BinaryInfo.js';
|
|
2
|
+
export declare const encodeWAM: (binaryInfo: BinaryInfo) => Buffer<ArrayBuffer>;
|
|
3
|
+
//# sourceMappingURL=encode.d.ts.map
|
package/lib/WAM/encode.js
CHANGED
|
@@ -1,25 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.encodeWAM = void 0;
|
|
4
|
-
const constants_1 = require("./constants");
|
|
1
|
+
import { BinaryInfo } from './BinaryInfo.js';
|
|
2
|
+
import { FLAG_BYTE, FLAG_EVENT, FLAG_EXTENDED, FLAG_FIELD, FLAG_GLOBAL, WEB_EVENTS, WEB_GLOBALS } from './constants.js';
|
|
5
3
|
const getHeaderBitLength = (key) => (key < 256 ? 2 : 3);
|
|
6
|
-
const encodeWAM = (binaryInfo) => {
|
|
4
|
+
export const encodeWAM = (binaryInfo) => {
|
|
7
5
|
binaryInfo.buffer = [];
|
|
8
6
|
encodeWAMHeader(binaryInfo);
|
|
9
7
|
encodeEvents(binaryInfo);
|
|
10
|
-
|
|
11
|
-
const totalSize = binaryInfo.buffer
|
|
12
|
-
.map((a) => a.length)
|
|
13
|
-
.reduce((a, b) => a + b);
|
|
8
|
+
const totalSize = binaryInfo.buffer.map(a => a.length).reduce((a, b) => a + b);
|
|
14
9
|
const buffer = Buffer.alloc(totalSize);
|
|
15
10
|
let offset = 0;
|
|
16
|
-
binaryInfo.buffer
|
|
11
|
+
for (const buffer_ of binaryInfo.buffer) {
|
|
17
12
|
buffer_.copy(buffer, offset);
|
|
18
13
|
offset += buffer_.length;
|
|
19
|
-
}
|
|
14
|
+
}
|
|
20
15
|
return buffer;
|
|
21
16
|
};
|
|
22
|
-
exports.encodeWAM = encodeWAM;
|
|
23
17
|
function encodeWAMHeader(binaryInfo) {
|
|
24
18
|
const headerBuffer = Buffer.alloc(8); // starting buffer
|
|
25
19
|
headerBuffer.write('WAM', 0, 'utf8');
|
|
@@ -31,34 +25,34 @@ function encodeWAMHeader(binaryInfo) {
|
|
|
31
25
|
}
|
|
32
26
|
function encodeGlobalAttributes(binaryInfo, globals) {
|
|
33
27
|
for (const [key, _value] of Object.entries(globals)) {
|
|
34
|
-
const id =
|
|
28
|
+
const id = WEB_GLOBALS.find(a => a?.name === key).id;
|
|
35
29
|
let value = _value;
|
|
36
30
|
if (typeof value === 'boolean') {
|
|
37
31
|
value = value ? 1 : 0;
|
|
38
32
|
}
|
|
39
|
-
binaryInfo.buffer.push(serializeData(id, value,
|
|
33
|
+
binaryInfo.buffer.push(serializeData(id, value, FLAG_GLOBAL));
|
|
40
34
|
}
|
|
41
35
|
}
|
|
42
36
|
function encodeEvents(binaryInfo) {
|
|
43
|
-
for (const [name, { props, globals }
|
|
37
|
+
for (const [name, { props, globals }] of binaryInfo.events.map(a => Object.entries(a)[0])) {
|
|
44
38
|
encodeGlobalAttributes(binaryInfo, globals);
|
|
45
|
-
const event =
|
|
39
|
+
const event = WEB_EVENTS.find(a => a.name === name);
|
|
46
40
|
const props_ = Object.entries(props);
|
|
47
41
|
let extended = false;
|
|
48
42
|
for (const [, value] of props_) {
|
|
49
43
|
extended || (extended = value !== null);
|
|
50
44
|
}
|
|
51
|
-
const eventFlag = extended ?
|
|
45
|
+
const eventFlag = extended ? FLAG_EVENT : FLAG_EVENT | FLAG_EXTENDED;
|
|
52
46
|
binaryInfo.buffer.push(serializeData(event.id, -event.weight, eventFlag));
|
|
53
47
|
for (let i = 0; i < props_.length; i++) {
|
|
54
48
|
const [key, _value] = props_[i];
|
|
55
|
-
const id =
|
|
56
|
-
extended = i <
|
|
49
|
+
const id = event.props[key]?.[0];
|
|
50
|
+
extended = i < props_.length - 1;
|
|
57
51
|
let value = _value;
|
|
58
52
|
if (typeof value === 'boolean') {
|
|
59
53
|
value = value ? 1 : 0;
|
|
60
54
|
}
|
|
61
|
-
const fieldFlag = extended ?
|
|
55
|
+
const fieldFlag = extended ? FLAG_EVENT : FLAG_FIELD | FLAG_EXTENDED;
|
|
62
56
|
binaryInfo.buffer.push(serializeData(id, value, fieldFlag));
|
|
63
57
|
}
|
|
64
58
|
}
|
|
@@ -68,7 +62,7 @@ function serializeData(key, value, flag) {
|
|
|
68
62
|
let buffer;
|
|
69
63
|
let offset = 0;
|
|
70
64
|
if (value === null) {
|
|
71
|
-
if (flag ===
|
|
65
|
+
if (flag === FLAG_GLOBAL) {
|
|
72
66
|
buffer = Buffer.alloc(bufferLength);
|
|
73
67
|
offset = serializeHeader(buffer, offset, key, flag);
|
|
74
68
|
return buffer;
|
|
@@ -146,10 +140,11 @@ function serializeHeader(buffer, offset, key, flag) {
|
|
|
146
140
|
offset += 1;
|
|
147
141
|
}
|
|
148
142
|
else {
|
|
149
|
-
buffer.writeUInt8(flag |
|
|
143
|
+
buffer.writeUInt8(flag | FLAG_BYTE, offset);
|
|
150
144
|
offset += 1;
|
|
151
145
|
buffer.writeUInt16LE(key, offset);
|
|
152
146
|
offset += 2;
|
|
153
147
|
}
|
|
154
148
|
return offset;
|
|
155
149
|
}
|
|
150
|
+
//# sourceMappingURL=encode.js.map
|
package/lib/WAM/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export * from './constants';
|
|
2
|
-
export * from './encode';
|
|
3
|
-
export * from './BinaryInfo';
|
|
1
|
+
export * from './constants.js';
|
|
2
|
+
export * from './encode.js';
|
|
3
|
+
export * from './BinaryInfo.js';
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
package/lib/WAM/index.js
CHANGED
|
@@ -1,19 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./constants"), exports);
|
|
18
|
-
__exportStar(require("./encode"), exports);
|
|
19
|
-
__exportStar(require("./BinaryInfo"), exports);
|
|
1
|
+
export * from './constants.js';
|
|
2
|
+
export * from './encode.js';
|
|
3
|
+
export * from './BinaryInfo.js';
|
|
4
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../../WABinary';
|
|
3
|
-
import { USyncUser } from '../USyncUser';
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../../WABinary/index.js';
|
|
3
|
+
import { USyncUser } from '../USyncUser.js';
|
|
4
4
|
export declare class USyncContactProtocol implements USyncQueryProtocol {
|
|
5
5
|
name: string;
|
|
6
6
|
getQueryElement(): BinaryNode;
|
|
7
7
|
getUserElement(user: USyncUser): BinaryNode;
|
|
8
8
|
parser(node: BinaryNode): boolean;
|
|
9
9
|
}
|
|
10
|
+
//# sourceMappingURL=USyncContactProtocol.d.ts.map
|
|
@@ -1,32 +1,52 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const WABinary_1 = require("../../WABinary");
|
|
5
|
-
class USyncContactProtocol {
|
|
1
|
+
import { assertNodeErrorFree } from '../../WABinary/index.js';
|
|
2
|
+
import { USyncUser } from '../USyncUser.js';
|
|
3
|
+
export class USyncContactProtocol {
|
|
6
4
|
constructor() {
|
|
7
5
|
this.name = 'contact';
|
|
8
6
|
}
|
|
9
7
|
getQueryElement() {
|
|
10
8
|
return {
|
|
11
9
|
tag: 'contact',
|
|
12
|
-
attrs: {}
|
|
10
|
+
attrs: {}
|
|
13
11
|
};
|
|
14
12
|
}
|
|
15
13
|
getUserElement(user) {
|
|
16
|
-
|
|
14
|
+
if (user.phone) {
|
|
15
|
+
return {
|
|
16
|
+
tag: 'contact',
|
|
17
|
+
attrs: {},
|
|
18
|
+
content: user.phone
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
if (user.username) {
|
|
22
|
+
return {
|
|
23
|
+
tag: 'contact',
|
|
24
|
+
attrs: {
|
|
25
|
+
username: user.username,
|
|
26
|
+
...(user.usernameKey ? { pin: user.usernameKey } : {}),
|
|
27
|
+
...(user.lid ? { lid: user.lid } : {})
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
if (user.type) {
|
|
32
|
+
return {
|
|
33
|
+
tag: 'contact',
|
|
34
|
+
attrs: {
|
|
35
|
+
type: user.type
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
}
|
|
17
39
|
return {
|
|
18
40
|
tag: 'contact',
|
|
19
|
-
attrs: {}
|
|
20
|
-
content: user.phone,
|
|
41
|
+
attrs: {}
|
|
21
42
|
};
|
|
22
43
|
}
|
|
23
44
|
parser(node) {
|
|
24
|
-
var _a;
|
|
25
45
|
if (node.tag === 'contact') {
|
|
26
|
-
|
|
27
|
-
return
|
|
46
|
+
assertNodeErrorFree(node);
|
|
47
|
+
return node?.attrs?.type === 'in';
|
|
28
48
|
}
|
|
29
49
|
return false;
|
|
30
50
|
}
|
|
31
51
|
}
|
|
32
|
-
|
|
52
|
+
//# sourceMappingURL=USyncContactProtocol.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../../WABinary';
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../../WABinary/index.js';
|
|
3
3
|
export type KeyIndexData = {
|
|
4
4
|
timestamp: number;
|
|
5
5
|
signedKeyIndex?: Uint8Array;
|
|
@@ -20,3 +20,4 @@ export declare class USyncDeviceProtocol implements USyncQueryProtocol {
|
|
|
20
20
|
getUserElement(): BinaryNode | null;
|
|
21
21
|
parser(node: BinaryNode): ParsedDeviceInfo;
|
|
22
22
|
}
|
|
23
|
+
//# sourceMappingURL=USyncDeviceProtocol.d.ts.map
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.USyncDeviceProtocol = void 0;
|
|
4
|
-
const WABinary_1 = require("../../WABinary");
|
|
5
|
-
class USyncDeviceProtocol {
|
|
1
|
+
import { assertNodeErrorFree, getBinaryNodeChild } from '../../WABinary/index.js';
|
|
2
|
+
export class USyncDeviceProtocol {
|
|
6
3
|
constructor() {
|
|
7
4
|
this.name = 'devices';
|
|
8
5
|
}
|
|
@@ -10,8 +7,8 @@ class USyncDeviceProtocol {
|
|
|
10
7
|
return {
|
|
11
8
|
tag: 'devices',
|
|
12
9
|
attrs: {
|
|
13
|
-
version: '2'
|
|
14
|
-
}
|
|
10
|
+
version: '2'
|
|
11
|
+
}
|
|
15
12
|
};
|
|
16
13
|
}
|
|
17
14
|
getUserElement( /* user: USyncUser */) {
|
|
@@ -24,10 +21,10 @@ class USyncDeviceProtocol {
|
|
|
24
21
|
const deviceList = [];
|
|
25
22
|
let keyIndex = undefined;
|
|
26
23
|
if (node.tag === 'devices') {
|
|
27
|
-
|
|
28
|
-
const deviceListNode =
|
|
29
|
-
const keyIndexNode =
|
|
30
|
-
if (Array.isArray(deviceListNode
|
|
24
|
+
assertNodeErrorFree(node);
|
|
25
|
+
const deviceListNode = getBinaryNodeChild(node, 'device-list');
|
|
26
|
+
const keyIndexNode = getBinaryNodeChild(node, 'key-index-list');
|
|
27
|
+
if (Array.isArray(deviceListNode?.content)) {
|
|
31
28
|
for (const { tag, attrs } of deviceListNode.content) {
|
|
32
29
|
const id = +attrs.id;
|
|
33
30
|
const keyIndex = +attrs['key-index'];
|
|
@@ -40,10 +37,10 @@ class USyncDeviceProtocol {
|
|
|
40
37
|
}
|
|
41
38
|
}
|
|
42
39
|
}
|
|
43
|
-
if (
|
|
40
|
+
if (keyIndexNode?.tag === 'key-index-list') {
|
|
44
41
|
keyIndex = {
|
|
45
42
|
timestamp: +keyIndexNode.attrs['ts'],
|
|
46
|
-
signedKeyIndex: keyIndexNode
|
|
43
|
+
signedKeyIndex: keyIndexNode?.content,
|
|
47
44
|
expectedTimestamp: keyIndexNode.attrs['expected_ts'] ? +keyIndexNode.attrs['expected_ts'] : undefined
|
|
48
45
|
};
|
|
49
46
|
}
|
|
@@ -54,4 +51,4 @@ class USyncDeviceProtocol {
|
|
|
54
51
|
};
|
|
55
52
|
}
|
|
56
53
|
}
|
|
57
|
-
|
|
54
|
+
//# sourceMappingURL=USyncDeviceProtocol.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../../WABinary';
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../../WABinary/index.js';
|
|
3
3
|
export type DisappearingModeData = {
|
|
4
4
|
duration: number;
|
|
5
5
|
setAt?: Date;
|
|
@@ -10,3 +10,4 @@ export declare class USyncDisappearingModeProtocol implements USyncQueryProtocol
|
|
|
10
10
|
getUserElement(): null;
|
|
11
11
|
parser(node: BinaryNode): DisappearingModeData | undefined;
|
|
12
12
|
}
|
|
13
|
+
//# sourceMappingURL=USyncDisappearingModeProtocol.d.ts.map
|
|
@@ -1,30 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.USyncDisappearingModeProtocol = void 0;
|
|
4
|
-
const WABinary_1 = require("../../WABinary");
|
|
5
|
-
class USyncDisappearingModeProtocol {
|
|
1
|
+
import { assertNodeErrorFree } from '../../WABinary/index.js';
|
|
2
|
+
export class USyncDisappearingModeProtocol {
|
|
6
3
|
constructor() {
|
|
7
4
|
this.name = 'disappearing_mode';
|
|
8
5
|
}
|
|
9
6
|
getQueryElement() {
|
|
10
7
|
return {
|
|
11
8
|
tag: 'disappearing_mode',
|
|
12
|
-
attrs: {}
|
|
9
|
+
attrs: {}
|
|
13
10
|
};
|
|
14
11
|
}
|
|
15
12
|
getUserElement() {
|
|
16
13
|
return null;
|
|
17
14
|
}
|
|
18
15
|
parser(node) {
|
|
19
|
-
if (node.tag === '
|
|
20
|
-
|
|
21
|
-
const duration = +
|
|
22
|
-
const setAt = new Date(+(
|
|
16
|
+
if (node.tag === 'disappearing_mode') {
|
|
17
|
+
assertNodeErrorFree(node);
|
|
18
|
+
const duration = +node?.attrs.duration;
|
|
19
|
+
const setAt = new Date(+(node?.attrs.t || 0) * 1000);
|
|
23
20
|
return {
|
|
24
21
|
duration,
|
|
25
|
-
setAt
|
|
22
|
+
setAt
|
|
26
23
|
};
|
|
27
24
|
}
|
|
28
25
|
}
|
|
29
26
|
}
|
|
30
|
-
|
|
27
|
+
//# sourceMappingURL=USyncDisappearingModeProtocol.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../../WABinary';
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../../WABinary/index.js';
|
|
3
3
|
export type StatusData = {
|
|
4
4
|
status?: string | null;
|
|
5
5
|
setAt?: Date;
|
|
@@ -10,3 +10,4 @@ export declare class USyncStatusProtocol implements USyncQueryProtocol {
|
|
|
10
10
|
getUserElement(): null;
|
|
11
11
|
parser(node: BinaryNode): StatusData | undefined;
|
|
12
12
|
}
|
|
13
|
+
//# sourceMappingURL=USyncStatusProtocol.d.ts.map
|
|
@@ -1,28 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.USyncStatusProtocol = void 0;
|
|
4
|
-
const WABinary_1 = require("../../WABinary");
|
|
5
|
-
class USyncStatusProtocol {
|
|
1
|
+
import { assertNodeErrorFree } from '../../WABinary/index.js';
|
|
2
|
+
export class USyncStatusProtocol {
|
|
6
3
|
constructor() {
|
|
7
4
|
this.name = 'status';
|
|
8
5
|
}
|
|
9
6
|
getQueryElement() {
|
|
10
7
|
return {
|
|
11
8
|
tag: 'status',
|
|
12
|
-
attrs: {}
|
|
9
|
+
attrs: {}
|
|
13
10
|
};
|
|
14
11
|
}
|
|
15
12
|
getUserElement() {
|
|
16
13
|
return null;
|
|
17
14
|
}
|
|
18
15
|
parser(node) {
|
|
19
|
-
var _a, _b, _c;
|
|
20
16
|
if (node.tag === 'status') {
|
|
21
|
-
|
|
22
|
-
let status =
|
|
23
|
-
const setAt = new Date(+(
|
|
17
|
+
assertNodeErrorFree(node);
|
|
18
|
+
let status = node?.content?.toString() ?? null;
|
|
19
|
+
const setAt = new Date(+(node?.attrs.t || 0) * 1000);
|
|
24
20
|
if (!status) {
|
|
25
|
-
if (
|
|
21
|
+
if (node.attrs?.code && +node.attrs.code === 401) {
|
|
26
22
|
status = '';
|
|
27
23
|
}
|
|
28
24
|
else {
|
|
@@ -34,9 +30,9 @@ class USyncStatusProtocol {
|
|
|
34
30
|
}
|
|
35
31
|
return {
|
|
36
32
|
status,
|
|
37
|
-
setAt
|
|
33
|
+
setAt
|
|
38
34
|
};
|
|
39
35
|
}
|
|
40
36
|
}
|
|
41
37
|
}
|
|
42
|
-
|
|
38
|
+
//# sourceMappingURL=USyncStatusProtocol.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../../WABinary/index.js';
|
|
3
|
+
import { USyncUser } from '../USyncUser.js';
|
|
4
|
+
export declare class USyncUsernameProtocol implements USyncQueryProtocol {
|
|
5
|
+
name: string;
|
|
6
|
+
getQueryElement(): BinaryNode;
|
|
7
|
+
getUserElement(user: USyncUser): BinaryNode | null;
|
|
8
|
+
parser(node: BinaryNode): string | null;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=USyncUsernameProtocol.d.ts.map
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { assertNodeErrorFree } from '../../WABinary/index.js';
|
|
2
|
+
import { USyncUser } from '../USyncUser.js';
|
|
3
|
+
export class USyncUsernameProtocol {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.name = 'username';
|
|
6
|
+
}
|
|
7
|
+
getQueryElement() {
|
|
8
|
+
return {
|
|
9
|
+
tag: 'username',
|
|
10
|
+
attrs: {}
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
getUserElement(user) {
|
|
14
|
+
void user;
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
parser(node) {
|
|
18
|
+
if (node.tag === 'username') {
|
|
19
|
+
assertNodeErrorFree(node);
|
|
20
|
+
return typeof node.content === 'string' ? node.content : null;
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=USyncUsernameProtocol.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../../WABinary';
|
|
3
|
-
import { USyncUser } from '../USyncUser';
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../../WABinary/index.js';
|
|
3
|
+
import { USyncUser } from '../USyncUser.js';
|
|
4
4
|
export type BotProfileCommand = {
|
|
5
5
|
name: string;
|
|
6
6
|
description: string;
|
|
@@ -23,3 +23,4 @@ export declare class USyncBotProfileProtocol implements USyncQueryProtocol {
|
|
|
23
23
|
getUserElement(user: USyncUser): BinaryNode;
|
|
24
24
|
parser(node: BinaryNode): BotProfileInfo;
|
|
25
25
|
}
|
|
26
|
+
//# sourceMappingURL=UsyncBotProfileProtocol.d.ts.map
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const WABinary_1 = require("../../WABinary");
|
|
5
|
-
class USyncBotProfileProtocol {
|
|
1
|
+
import { getBinaryNodeChild, getBinaryNodeChildren, getBinaryNodeChildString } from '../../WABinary/index.js';
|
|
2
|
+
import { USyncUser } from '../USyncUser.js';
|
|
3
|
+
export class USyncBotProfileProtocol {
|
|
6
4
|
constructor() {
|
|
7
5
|
this.name = 'bot';
|
|
8
6
|
}
|
|
@@ -17,37 +15,37 @@ class USyncBotProfileProtocol {
|
|
|
17
15
|
return {
|
|
18
16
|
tag: 'bot',
|
|
19
17
|
attrs: {},
|
|
20
|
-
content: [{ tag: 'profile', attrs: {
|
|
18
|
+
content: [{ tag: 'profile', attrs: { persona_id: user.personaId } }]
|
|
21
19
|
};
|
|
22
20
|
}
|
|
23
21
|
parser(node) {
|
|
24
|
-
const botNode =
|
|
25
|
-
const profile =
|
|
26
|
-
const commandsNode =
|
|
27
|
-
const promptsNode =
|
|
22
|
+
const botNode = getBinaryNodeChild(node, 'bot');
|
|
23
|
+
const profile = getBinaryNodeChild(botNode, 'profile');
|
|
24
|
+
const commandsNode = getBinaryNodeChild(profile, 'commands');
|
|
25
|
+
const promptsNode = getBinaryNodeChild(profile, 'prompts');
|
|
28
26
|
const commands = [];
|
|
29
27
|
const prompts = [];
|
|
30
|
-
for (const command of
|
|
28
|
+
for (const command of getBinaryNodeChildren(commandsNode, 'command')) {
|
|
31
29
|
commands.push({
|
|
32
|
-
name:
|
|
33
|
-
description:
|
|
30
|
+
name: getBinaryNodeChildString(command, 'name'),
|
|
31
|
+
description: getBinaryNodeChildString(command, 'description')
|
|
34
32
|
});
|
|
35
33
|
}
|
|
36
|
-
for (const prompt of
|
|
37
|
-
prompts.push(`${
|
|
34
|
+
for (const prompt of getBinaryNodeChildren(promptsNode, 'prompt')) {
|
|
35
|
+
prompts.push(`${getBinaryNodeChildString(prompt, 'emoji')} ${getBinaryNodeChildString(prompt, 'text')}`);
|
|
38
36
|
}
|
|
39
37
|
return {
|
|
40
|
-
isDefault: !!
|
|
38
|
+
isDefault: !!getBinaryNodeChild(profile, 'default'),
|
|
41
39
|
jid: node.attrs.jid,
|
|
42
|
-
name:
|
|
43
|
-
attributes:
|
|
44
|
-
description:
|
|
45
|
-
category:
|
|
40
|
+
name: getBinaryNodeChildString(profile, 'name'),
|
|
41
|
+
attributes: getBinaryNodeChildString(profile, 'attributes'),
|
|
42
|
+
description: getBinaryNodeChildString(profile, 'description'),
|
|
43
|
+
category: getBinaryNodeChildString(profile, 'category'),
|
|
46
44
|
personaId: profile.attrs['persona_id'],
|
|
47
|
-
commandsDescription:
|
|
45
|
+
commandsDescription: getBinaryNodeChildString(commandsNode, 'description'),
|
|
48
46
|
commands,
|
|
49
47
|
prompts
|
|
50
48
|
};
|
|
51
49
|
}
|
|
52
50
|
}
|
|
53
|
-
|
|
51
|
+
//# sourceMappingURL=UsyncBotProfileProtocol.js.map
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../../WABinary';
|
|
1
|
+
import type { USyncQueryProtocol } from '../../Types/USync.js';
|
|
2
|
+
import type { BinaryNode } from '../../WABinary/index.js';
|
|
3
|
+
import type { USyncUser } from '../USyncUser.js';
|
|
3
4
|
export declare class USyncLIDProtocol implements USyncQueryProtocol {
|
|
4
5
|
name: string;
|
|
5
6
|
getQueryElement(): BinaryNode;
|
|
6
|
-
getUserElement(): null;
|
|
7
|
+
getUserElement(user: USyncUser): BinaryNode | null;
|
|
7
8
|
parser(node: BinaryNode): string | null;
|
|
8
9
|
}
|
|
10
|
+
//# sourceMappingURL=UsyncLIDProtocol.d.ts.map
|
|
@@ -1,18 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.USyncLIDProtocol = void 0;
|
|
4
|
-
class USyncLIDProtocol {
|
|
1
|
+
export class USyncLIDProtocol {
|
|
5
2
|
constructor() {
|
|
6
3
|
this.name = 'lid';
|
|
7
4
|
}
|
|
8
5
|
getQueryElement() {
|
|
9
6
|
return {
|
|
10
7
|
tag: 'lid',
|
|
11
|
-
attrs: {}
|
|
8
|
+
attrs: {}
|
|
12
9
|
};
|
|
13
10
|
}
|
|
14
|
-
getUserElement() {
|
|
15
|
-
|
|
11
|
+
getUserElement(user) {
|
|
12
|
+
if (user.lid) {
|
|
13
|
+
return {
|
|
14
|
+
tag: 'lid',
|
|
15
|
+
attrs: { jid: user.lid }
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
16
21
|
}
|
|
17
22
|
parser(node) {
|
|
18
23
|
if (node.tag === 'lid') {
|
|
@@ -21,4 +26,4 @@ class USyncLIDProtocol {
|
|
|
21
26
|
return null;
|
|
22
27
|
}
|
|
23
28
|
}
|
|
24
|
-
|
|
29
|
+
//# sourceMappingURL=UsyncLIDProtocol.js.map
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
export * from './USyncDeviceProtocol';
|
|
2
|
-
export * from './USyncContactProtocol';
|
|
3
|
-
export * from './USyncStatusProtocol';
|
|
4
|
-
export * from './USyncDisappearingModeProtocol';
|
|
1
|
+
export * from './USyncDeviceProtocol.js';
|
|
2
|
+
export * from './USyncContactProtocol.js';
|
|
3
|
+
export * from './USyncStatusProtocol.js';
|
|
4
|
+
export * from './USyncDisappearingModeProtocol.js';
|
|
5
|
+
export * from './USyncUsernameProtocol.js';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
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
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./USyncDeviceProtocol"), exports);
|
|
18
|
-
__exportStar(require("./USyncContactProtocol"), exports);
|
|
19
|
-
__exportStar(require("./USyncStatusProtocol"), exports);
|
|
20
|
-
__exportStar(require("./USyncDisappearingModeProtocol"), exports);
|
|
1
|
+
export * from './USyncDeviceProtocol.js';
|
|
2
|
+
export * from './USyncContactProtocol.js';
|
|
3
|
+
export * from './USyncStatusProtocol.js';
|
|
4
|
+
export * from './USyncDisappearingModeProtocol.js';
|
|
5
|
+
export * from './USyncUsernameProtocol.js';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { USyncQueryProtocol } from '../Types/USync';
|
|
2
|
-
import { BinaryNode } from '../WABinary';
|
|
3
|
-
import { USyncUser } from './USyncUser';
|
|
1
|
+
import type { USyncQueryProtocol } from '../Types/USync.js';
|
|
2
|
+
import { type BinaryNode } from '../WABinary/index.js';
|
|
3
|
+
import { USyncUser } from './USyncUser.js';
|
|
4
4
|
export type USyncQueryResultList = {
|
|
5
5
|
[protocol: string]: unknown;
|
|
6
6
|
id: string;
|
|
@@ -18,11 +18,13 @@ export declare class USyncQuery {
|
|
|
18
18
|
withMode(mode: string): this;
|
|
19
19
|
withContext(context: string): this;
|
|
20
20
|
withUser(user: USyncUser): this;
|
|
21
|
-
parseUSyncQueryResult(result: BinaryNode): USyncQueryResult | undefined;
|
|
21
|
+
parseUSyncQueryResult(result: BinaryNode | undefined): USyncQueryResult | undefined;
|
|
22
22
|
withDeviceProtocol(): this;
|
|
23
23
|
withContactProtocol(): this;
|
|
24
24
|
withStatusProtocol(): this;
|
|
25
25
|
withDisappearingModeProtocol(): this;
|
|
26
26
|
withBotProfileProtocol(): this;
|
|
27
27
|
withLIDProtocol(): this;
|
|
28
|
+
withUsernameProtocol(): this;
|
|
28
29
|
}
|
|
30
|
+
//# sourceMappingURL=USyncQuery.d.ts.map
|