@badzz88/baileys 8.5.6 → 8.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.
- package/README.md +337 -1055
- package/WAProto/WAProto.proto +28 -1189
- package/WAProto/fix-imports.js +79 -69
- package/WAProto/index.d.ts +71491 -15254
- package/WAProto/index.js +126436 -19814
- package/engine-requirements.js +8 -15
- package/lib/Defaults/index.js +130 -0
- package/{src → lib}/Signal/Group/ciphertext-message.js +2 -5
- package/lib/Signal/Group/group-session-builder.js +30 -0
- package/{src → lib}/Signal/Group/group_cipher.js +11 -11
- package/lib/Signal/Group/index.js +12 -0
- package/lib/Signal/Group/keyhelper.js +18 -0
- package/{src → lib}/Signal/Group/sender-chain-key.js +6 -9
- package/{src → lib}/Signal/Group/sender-key-distribution-message.js +6 -9
- package/{src → lib}/Signal/Group/sender-key-message.js +9 -12
- package/{src → lib}/Signal/Group/sender-key-name.js +2 -5
- package/{src → lib}/Signal/Group/sender-key-record.js +8 -11
- package/{src → lib}/Signal/Group/sender-key-state.js +6 -9
- package/lib/Signal/Group/sender-message-key.js +26 -0
- package/{src → lib}/Signal/libsignal.js +131 -155
- package/{src → lib}/Signal/lid-mapping.js +27 -23
- package/lib/Socket/Client/index.js +3 -0
- package/lib/Socket/Client/types.js +11 -0
- package/{src → lib}/Socket/Client/websocket.js +11 -18
- package/{src → lib}/Socket/business.js +35 -67
- package/{src → lib}/Socket/chats.js +294 -550
- package/{src → lib}/Socket/communities.js +82 -114
- package/lib/Socket/graphql.js +716 -0
- package/lib/Socket/groups.js +374 -0
- package/lib/Socket/index.js +18 -0
- package/lib/Socket/interop.js +463 -0
- package/{src → lib}/Socket/luxu.js +120 -82
- package/lib/Socket/messages-recv.js +1916 -0
- package/lib/Socket/messages-send.js +1436 -0
- package/lib/Socket/mex.js +54 -0
- package/lib/Socket/newsletter.js +757 -0
- package/lib/Socket/privacy.js +318 -0
- package/{src → lib}/Socket/socket.js +356 -244
- package/lib/Socket/username.js +236 -0
- package/lib/Store/index.js +10 -0
- package/{src → lib}/Store/keyed-db.js +11 -21
- package/lib/Store/make-cache-manager-store.js +85 -0
- package/lib/Store/make-in-memory-store.js +244 -0
- package/{src → lib}/Store/make-ordered-dictionary.js +19 -25
- package/{src → lib}/Store/object-repository.js +11 -5
- package/lib/Types/Auth.js +2 -0
- package/lib/Types/Bussines.js +2 -0
- package/lib/Types/Call.js +2 -0
- package/lib/Types/Chat.js +8 -0
- package/lib/Types/Contact.js +2 -0
- package/lib/Types/Events.js +2 -0
- package/lib/Types/GroupMetadata.js +2 -0
- package/lib/Types/Label.js +25 -0
- package/lib/Types/LabelAssociation.js +7 -0
- package/lib/Types/Message.js +11 -0
- package/lib/Types/Mex.js +111 -0
- package/lib/Types/Product.js +2 -0
- package/lib/Types/Signal.js +2 -0
- package/lib/Types/Socket.js +3 -0
- package/lib/Types/State.js +56 -0
- package/lib/Types/USync.js +2 -0
- package/lib/Types/index.js +26 -0
- package/{src → lib}/Utils/auth-utils.js +91 -43
- package/lib/Utils/browser-utils.js +48 -0
- package/lib/Utils/business.js +231 -0
- package/lib/Utils/chat-utils.js +872 -0
- package/lib/Utils/companion-reg-client-utils.js +35 -0
- package/lib/Utils/crypto.js +118 -0
- package/lib/Utils/decode-wa-message.js +350 -0
- package/{src → lib}/Utils/event-buffer.js +81 -39
- package/lib/Utils/generics.js +403 -0
- package/lib/Utils/history.js +134 -0
- package/{src → lib}/Utils/identity-change-handler.js +9 -11
- package/lib/Utils/index.js +23 -0
- package/lib/Utils/link-preview.js +85 -0
- package/lib/Utils/logger.js +3 -0
- package/lib/Utils/lt-hash.js +8 -0
- package/{src → lib}/Utils/make-mutex.js +7 -10
- package/lib/Utils/message-composer.js +273 -0
- package/{src → lib}/Utils/message-retry-manager.js +76 -28
- package/lib/Utils/messages-media.js +870 -0
- package/lib/Utils/messages.js +1337 -0
- package/lib/Utils/noise-handler.js +201 -0
- package/{src → lib}/Utils/offline-node-processor.js +10 -4
- package/{src → lib}/Utils/pre-key-manager.js +27 -11
- package/lib/Utils/process-message.js +630 -0
- package/{src → lib}/Utils/reporting-utils.js +12 -15
- package/lib/Utils/signal.js +201 -0
- package/{src → lib}/Utils/stanza-ack.js +12 -4
- package/lib/Utils/sticker.js +110 -0
- package/{src → lib}/Utils/sync-action-utils.js +14 -10
- package/{src → lib}/Utils/tc-token-utils.js +48 -43
- package/{src → lib}/Utils/use-multi-file-auth-state.js +35 -25
- package/lib/Utils/validate-connection.js +203 -0
- package/{src → lib}/WABinary/constants.js +9 -12
- package/{src → lib}/WABinary/decode.js +38 -118
- package/{src → lib}/WABinary/encode.js +6 -11
- package/lib/WABinary/generic-utils.js +204 -0
- package/lib/WABinary/index.js +6 -0
- package/lib/WABinary/jid-utils.js +98 -0
- package/lib/WABinary/types.js +2 -0
- package/{src → lib}/WAM/BinaryInfo.js +2 -5
- package/{src → lib}/WAM/constants.js +4 -16635
- package/{src → lib}/WAM/encode.js +18 -17
- package/lib/WAM/index.js +4 -0
- package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +53 -0
- package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +43 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +54 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +57 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +30 -0
- package/lib/WAUSync/Protocols/USyncFeatureProtocol.js +58 -0
- package/lib/WAUSync/Protocols/USyncLIDProtocol.js +30 -0
- package/lib/WAUSync/Protocols/USyncPictureProtocol.js +32 -0
- package/lib/WAUSync/Protocols/USyncSidelistProtocol.js +28 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +39 -0
- package/lib/WAUSync/Protocols/USyncTextStatusProtocol.js +38 -0
- package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +27 -0
- package/lib/WAUSync/Protocols/index.js +12 -0
- package/lib/WAUSync/USyncQuery.js +151 -0
- package/lib/WAUSync/USyncUser.js +56 -0
- package/lib/WAUSync/index.js +3 -0
- package/{src → lib}/index.js +16 -51
- package/package.json +129 -99
- package/LICENSE +0 -21
- package/src/Defaults/index.js +0 -186
- package/src/Defaults/phonenumber-mcc.json +0 -223
- package/src/Signal/Group/group-session-builder.js +0 -86
- package/src/Signal/Group/index.js +0 -140
- package/src/Signal/Group/keyhelper.js +0 -77
- package/src/Signal/Group/sender-message-key.js +0 -29
- package/src/Socket/Client/index.js +0 -31
- package/src/Socket/Client/types.js +0 -13
- package/src/Socket/aigroups.js +0 -221
- package/src/Socket/graphql.js +0 -523
- package/src/Socket/groups.js +0 -516
- package/src/Socket/index.js +0 -31
- package/src/Socket/interactive-handler.js +0 -527
- package/src/Socket/interop.js +0 -339
- package/src/Socket/managed-account.js +0 -98
- package/src/Socket/messages-recv.js +0 -2685
- package/src/Socket/messages-send.js +0 -2047
- package/src/Socket/mex.js +0 -57
- package/src/Socket/newsletter.js +0 -455
- package/src/Socket/privacy.js +0 -125
- package/src/Socket/registration.js +0 -236
- package/src/Socket/text-router.js +0 -65
- package/src/Socket/username.js +0 -130
- package/src/Store/index.js +0 -33
- package/src/Store/make-cache-manager-store.js +0 -84
- package/src/Store/make-in-memory-store.js +0 -551
- package/src/Types/Auth.js +0 -31
- package/src/Types/Bussines.js +0 -2
- package/src/Types/Call.js +0 -2
- package/src/Types/Chat.js +0 -4
- package/src/Types/Contact.js +0 -2
- package/src/Types/Events.js +0 -2
- package/src/Types/GroupMetadata.js +0 -2
- package/src/Types/Label.js +0 -26
- package/src/Types/LabelAssociation.js +0 -8
- package/src/Types/Message.js +0 -93
- package/src/Types/Mex.js +0 -112
- package/src/Types/Newsletter.js +0 -109
- package/src/Types/Product.js +0 -2
- package/src/Types/Signal.js +0 -2
- package/src/Types/Socket.js +0 -2
- package/src/Types/State.js +0 -62
- package/src/Types/USync.js +0 -2
- package/src/Types/index.js +0 -56
- package/src/Utils/browser-utils.js +0 -112
- package/src/Utils/business.js +0 -240
- package/src/Utils/chat-utils.js +0 -1230
- package/src/Utils/command-loader.d.ts +0 -27
- package/src/Utils/command-loader.js +0 -89
- package/src/Utils/companion-reg-client-utils.js +0 -40
- package/src/Utils/consumer-application.js +0 -105
- package/src/Utils/crypto.js +0 -118
- package/src/Utils/curve25519-js.js +0 -242
- package/src/Utils/decode-wa-message.js +0 -529
- package/src/Utils/generics.js +0 -483
- package/src/Utils/group-history.js +0 -44
- package/src/Utils/history.js +0 -232
- package/src/Utils/index.js +0 -58
- package/src/Utils/jid-display-normalization.js +0 -195
- package/src/Utils/link-preview.js +0 -135
- package/src/Utils/logger.js +0 -8
- package/src/Utils/lt-hash.js +0 -25
- package/src/Utils/message-composer.js +0 -471
- package/src/Utils/messages-media.js +0 -843
- package/src/Utils/messages.js +0 -2817
- package/src/Utils/meta-ai-msmsg.js +0 -222
- package/src/Utils/native-bridge.js +0 -68
- package/src/Utils/noise-handler.js +0 -169
- package/src/Utils/process-message.js +0 -950
- package/src/Utils/session-pool.d.ts +0 -14
- package/src/Utils/session-pool.js +0 -70
- package/src/Utils/signal.js +0 -217
- package/src/Utils/sticker.d.ts +0 -13
- package/src/Utils/sticker.js +0 -123
- package/src/Utils/validate-connection.js +0 -209
- package/src/Utils/view-once-cache.d.ts +0 -12
- package/src/Utils/view-once-cache.js +0 -63
- package/src/Utils/voip-rekey.js +0 -22
- package/src/WABinary/generic-utils.js +0 -238
- package/src/WABinary/index.js +0 -34
- package/src/WABinary/jid-utils.js +0 -351
- package/src/WABinary/types.js +0 -2
- package/src/WAM/index.js +0 -32
- package/src/WAUSync/Protocols/USyncBotProfileProtocol.js +0 -53
- package/src/WAUSync/Protocols/USyncBusinessProtocol.js +0 -44
- package/src/WAUSync/Protocols/USyncContactProtocol.js +0 -55
- package/src/WAUSync/Protocols/USyncDeviceProtocol.js +0 -55
- package/src/WAUSync/Protocols/USyncDisappearingModeProtocol.js +0 -31
- package/src/WAUSync/Protocols/USyncFeatureProtocol.js +0 -54
- package/src/WAUSync/Protocols/USyncLIDProtocol.js +0 -32
- package/src/WAUSync/Protocols/USyncNewsletterProtocol.js +0 -473
- package/src/WAUSync/Protocols/USyncPictureProtocol.js +0 -34
- package/src/WAUSync/Protocols/USyncSidelistProtocol.js +0 -29
- package/src/WAUSync/Protocols/USyncStatusProtocol.js +0 -42
- package/src/WAUSync/Protocols/USyncTextStatusProtocol.js +0 -38
- package/src/WAUSync/Protocols/USyncUsernameProtocol.js +0 -28
- package/src/WAUSync/Protocols/index.js +0 -40
- package/src/WAUSync/USyncQuery.js +0 -126
- package/src/WAUSync/USyncUser.js +0 -50
- package/src/WAUSync/index.js +0 -32
- package/src/antiban.js +0 -4152
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
import { URL } from 'url';
|
|
3
|
+
export class AbstractSocketClient extends EventEmitter {
|
|
4
|
+
constructor(url, config) {
|
|
5
|
+
super();
|
|
6
|
+
this.url = url;
|
|
7
|
+
this.config = config;
|
|
8
|
+
this.setMaxListeners(0);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -1,36 +1,29 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
6
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
7
|
-
exports.WebSocketClient = void 0;
|
|
8
|
-
const ws_1 = __importDefault(require('ws'));
|
|
9
|
-
const Defaults_1 = require('../../Defaults');
|
|
10
|
-
const types_1 = require('./types');
|
|
11
|
-
class WebSocketClient extends types_1.AbstractSocketClient {
|
|
1
|
+
import WebSocket from 'ws';
|
|
2
|
+
import { DEFAULT_ORIGIN } from '../../Defaults/index.js';
|
|
3
|
+
import { AbstractSocketClient } from './types.js';
|
|
4
|
+
export class WebSocketClient extends AbstractSocketClient {
|
|
12
5
|
constructor() {
|
|
13
6
|
super(...arguments);
|
|
14
7
|
this.socket = null;
|
|
15
8
|
}
|
|
16
9
|
get isOpen() {
|
|
17
|
-
return this.socket?.readyState ===
|
|
10
|
+
return this.socket?.readyState === WebSocket.OPEN;
|
|
18
11
|
}
|
|
19
12
|
get isClosed() {
|
|
20
|
-
return this.socket === null || this.socket?.readyState ===
|
|
13
|
+
return this.socket === null || this.socket?.readyState === WebSocket.CLOSED;
|
|
21
14
|
}
|
|
22
15
|
get isClosing() {
|
|
23
|
-
return this.socket === null || this.socket?.readyState ===
|
|
16
|
+
return this.socket === null || this.socket?.readyState === WebSocket.CLOSING;
|
|
24
17
|
}
|
|
25
18
|
get isConnecting() {
|
|
26
|
-
return this.socket?.readyState ===
|
|
19
|
+
return this.socket?.readyState === WebSocket.CONNECTING;
|
|
27
20
|
}
|
|
28
21
|
connect() {
|
|
29
22
|
if (this.socket) {
|
|
30
23
|
return;
|
|
31
24
|
}
|
|
32
|
-
this.socket = new
|
|
33
|
-
origin:
|
|
25
|
+
this.socket = new WebSocket(this.url, {
|
|
26
|
+
origin: DEFAULT_ORIGIN,
|
|
34
27
|
headers: this.config.options?.headers,
|
|
35
28
|
handshakeTimeout: this.config.connectTimeoutMs,
|
|
36
29
|
timeout: this.config.connectTimeoutMs,
|
|
@@ -58,4 +51,4 @@ class WebSocketClient extends types_1.AbstractSocketClient {
|
|
|
58
51
|
return Boolean(this.socket);
|
|
59
52
|
}
|
|
60
53
|
}
|
|
61
|
-
|
|
54
|
+
//# sourceMappingURL=websocket.js.map
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const messages_recv_1 = require('./messages-recv');
|
|
9
|
-
const makeBusinessSocket = config => {
|
|
10
|
-
const sock = (0, messages_recv_1.makeMessagesRecvSocket)(config);
|
|
1
|
+
import { getRawMediaUploadData } from '../Utils/index.js';
|
|
2
|
+
import { parseCatalogNode, parseCollectionsNode, parseOrderDetailsNode, parseProductNode, toProductNode, uploadingNecessaryImagesOfProduct } from '../Utils/business.js';
|
|
3
|
+
import { jidNormalizedUser, S_WHATSAPP_NET } from '../WABinary/index.js';
|
|
4
|
+
import { getBinaryNodeChild } from '../WABinary/generic-utils.js';
|
|
5
|
+
import { makeMessagesRecvSocket } from './messages-recv.js';
|
|
6
|
+
export const makeBusinessSocket = (config) => {
|
|
7
|
+
const sock = makeMessagesRecvSocket(config);
|
|
11
8
|
const { authState, query, waUploadToServer } = sock;
|
|
12
9
|
const updateBussinesProfile = async (args) => {
|
|
13
10
|
const node = [];
|
|
@@ -55,7 +52,7 @@ const makeBusinessSocket = config => {
|
|
|
55
52
|
const result = await query({
|
|
56
53
|
tag: 'iq',
|
|
57
54
|
attrs: {
|
|
58
|
-
to:
|
|
55
|
+
to: S_WHATSAPP_NET,
|
|
59
56
|
type: 'set',
|
|
60
57
|
xmlns: 'w:biz'
|
|
61
58
|
},
|
|
@@ -73,7 +70,7 @@ const makeBusinessSocket = config => {
|
|
|
73
70
|
return result;
|
|
74
71
|
};
|
|
75
72
|
const updateCoverPhoto = async (photo) => {
|
|
76
|
-
const { fileSha256, filePath } = await
|
|
73
|
+
const { fileSha256, filePath } = await getRawMediaUploadData(photo, 'biz-cover-photo');
|
|
77
74
|
const fileSha256B64 = fileSha256.toString('base64');
|
|
78
75
|
const { meta_hmac, fbid, ts } = await waUploadToServer(filePath, {
|
|
79
76
|
fileEncSha256B64: fileSha256B64,
|
|
@@ -82,7 +79,7 @@ const makeBusinessSocket = config => {
|
|
|
82
79
|
await query({
|
|
83
80
|
tag: 'iq',
|
|
84
81
|
attrs: {
|
|
85
|
-
to:
|
|
82
|
+
to: S_WHATSAPP_NET,
|
|
86
83
|
type: 'set',
|
|
87
84
|
xmlns: 'w:biz'
|
|
88
85
|
},
|
|
@@ -108,7 +105,7 @@ const makeBusinessSocket = config => {
|
|
|
108
105
|
return await query({
|
|
109
106
|
tag: 'iq',
|
|
110
107
|
attrs: {
|
|
111
|
-
to:
|
|
108
|
+
to: S_WHATSAPP_NET,
|
|
112
109
|
type: 'set',
|
|
113
110
|
xmlns: 'w:biz'
|
|
114
111
|
},
|
|
@@ -131,7 +128,7 @@ const makeBusinessSocket = config => {
|
|
|
131
128
|
};
|
|
132
129
|
const getCatalog = async ({ jid, limit, cursor }) => {
|
|
133
130
|
jid = jid || authState.creds.me?.id;
|
|
134
|
-
jid =
|
|
131
|
+
jid = jidNormalizedUser(jid);
|
|
135
132
|
const queryParamNodes = [
|
|
136
133
|
{
|
|
137
134
|
tag: 'limit',
|
|
@@ -159,7 +156,7 @@ const makeBusinessSocket = config => {
|
|
|
159
156
|
const result = await query({
|
|
160
157
|
tag: 'iq',
|
|
161
158
|
attrs: {
|
|
162
|
-
to:
|
|
159
|
+
to: S_WHATSAPP_NET,
|
|
163
160
|
type: 'get',
|
|
164
161
|
xmlns: 'w:biz:catalog'
|
|
165
162
|
},
|
|
@@ -174,15 +171,15 @@ const makeBusinessSocket = config => {
|
|
|
174
171
|
}
|
|
175
172
|
]
|
|
176
173
|
});
|
|
177
|
-
return
|
|
174
|
+
return parseCatalogNode(result);
|
|
178
175
|
};
|
|
179
176
|
const getCollections = async (jid, limit = 51) => {
|
|
180
177
|
jid = jid || authState.creds.me?.id;
|
|
181
|
-
jid =
|
|
178
|
+
jid = jidNormalizedUser(jid);
|
|
182
179
|
const result = await query({
|
|
183
180
|
tag: 'iq',
|
|
184
181
|
attrs: {
|
|
185
|
-
to:
|
|
182
|
+
to: S_WHATSAPP_NET,
|
|
186
183
|
type: 'get',
|
|
187
184
|
xmlns: 'w:biz:catalog',
|
|
188
185
|
smax_id: '35'
|
|
@@ -218,13 +215,13 @@ const makeBusinessSocket = config => {
|
|
|
218
215
|
}
|
|
219
216
|
]
|
|
220
217
|
});
|
|
221
|
-
return
|
|
218
|
+
return parseCollectionsNode(result);
|
|
222
219
|
};
|
|
223
220
|
const getOrderDetails = async (orderId, tokenBase64) => {
|
|
224
221
|
const result = await query({
|
|
225
222
|
tag: 'iq',
|
|
226
223
|
attrs: {
|
|
227
|
-
to:
|
|
224
|
+
to: S_WHATSAPP_NET,
|
|
228
225
|
type: 'get',
|
|
229
226
|
xmlns: 'fb:thrift_iq',
|
|
230
227
|
smax_id: '5'
|
|
@@ -262,43 +259,15 @@ const makeBusinessSocket = config => {
|
|
|
262
259
|
}
|
|
263
260
|
]
|
|
264
261
|
});
|
|
265
|
-
return
|
|
266
|
-
};
|
|
267
|
-
const getLinkedAccounts = async () => {
|
|
268
|
-
const result = await query({
|
|
269
|
-
tag: 'iq',
|
|
270
|
-
attrs: { to: WABinary_1.S_WHATSAPP_NET, type: 'get', xmlns: 'fb:thrift_iq', smax_id: '42' },
|
|
271
|
-
content: [{ tag: 'linked_accounts', attrs: {} }]
|
|
272
|
-
});
|
|
273
|
-
const fbPage = (0, WABinary_1.getBinaryNodeChild)(result, 'fb_page');
|
|
274
|
-
if (!fbPage)
|
|
275
|
-
return undefined;
|
|
276
|
-
const button = (0, WABinary_1.getBinaryNodeChild)(fbPage, 'whatsapp_as_page_button');
|
|
277
|
-
return { pageInfo: fbPage.attrs, linkState: button?.attrs?.state, node: fbPage };
|
|
278
|
-
};
|
|
279
|
-
const getBusinessEligibility = async (features = {}) => {
|
|
280
|
-
const attrs = {};
|
|
281
|
-
if (features.metaVerified !== undefined)
|
|
282
|
-
attrs.meta_verified = String(features.metaVerified);
|
|
283
|
-
if (features.marketingMessages !== undefined)
|
|
284
|
-
attrs.marketing_messages = String(features.marketingMessages);
|
|
285
|
-
if (features.genai !== undefined)
|
|
286
|
-
attrs.genai = String(features.genai);
|
|
287
|
-
const result = await query({
|
|
288
|
-
tag: 'iq',
|
|
289
|
-
attrs: { to: WABinary_1.S_WHATSAPP_NET, type: 'get', xmlns: 'w:biz', smax_id: '139' },
|
|
290
|
-
content: [{ tag: 'features', attrs }]
|
|
291
|
-
});
|
|
292
|
-
const mv = (0, WABinary_1.getBinaryNodeChild)(result, 'meta_verified');
|
|
293
|
-
return mv ? { status: mv.attrs?.status, ...mv.attrs } : undefined;
|
|
262
|
+
return parseOrderDetailsNode(result);
|
|
294
263
|
};
|
|
295
264
|
const productUpdate = async (productId, update) => {
|
|
296
|
-
update = await
|
|
297
|
-
const editNode =
|
|
265
|
+
update = await uploadingNecessaryImagesOfProduct(update, waUploadToServer);
|
|
266
|
+
const editNode = toProductNode(productId, update);
|
|
298
267
|
const result = await query({
|
|
299
268
|
tag: 'iq',
|
|
300
269
|
attrs: {
|
|
301
|
-
to:
|
|
270
|
+
to: S_WHATSAPP_NET,
|
|
302
271
|
type: 'set',
|
|
303
272
|
xmlns: 'w:biz:catalog'
|
|
304
273
|
},
|
|
@@ -322,18 +291,19 @@ const makeBusinessSocket = config => {
|
|
|
322
291
|
}
|
|
323
292
|
]
|
|
324
293
|
});
|
|
325
|
-
const productCatalogEditNode =
|
|
326
|
-
const productNode =
|
|
327
|
-
return
|
|
294
|
+
const productCatalogEditNode = getBinaryNodeChild(result, 'product_catalog_edit');
|
|
295
|
+
const productNode = getBinaryNodeChild(productCatalogEditNode, 'product');
|
|
296
|
+
return parseProductNode(productNode);
|
|
328
297
|
};
|
|
329
298
|
const productCreate = async (create) => {
|
|
299
|
+
// ensure isHidden is defined
|
|
330
300
|
create.isHidden = !!create.isHidden;
|
|
331
|
-
create = await
|
|
332
|
-
const createNode =
|
|
301
|
+
create = await uploadingNecessaryImagesOfProduct(create, waUploadToServer);
|
|
302
|
+
const createNode = toProductNode(undefined, create);
|
|
333
303
|
const result = await query({
|
|
334
304
|
tag: 'iq',
|
|
335
305
|
attrs: {
|
|
336
|
-
to:
|
|
306
|
+
to: S_WHATSAPP_NET,
|
|
337
307
|
type: 'set',
|
|
338
308
|
xmlns: 'w:biz:catalog'
|
|
339
309
|
},
|
|
@@ -357,15 +327,15 @@ const makeBusinessSocket = config => {
|
|
|
357
327
|
}
|
|
358
328
|
]
|
|
359
329
|
});
|
|
360
|
-
const productCatalogAddNode =
|
|
361
|
-
const productNode =
|
|
362
|
-
return
|
|
330
|
+
const productCatalogAddNode = getBinaryNodeChild(result, 'product_catalog_add');
|
|
331
|
+
const productNode = getBinaryNodeChild(productCatalogAddNode, 'product');
|
|
332
|
+
return parseProductNode(productNode);
|
|
363
333
|
};
|
|
364
334
|
const productDelete = async (productIds) => {
|
|
365
335
|
const result = await query({
|
|
366
336
|
tag: 'iq',
|
|
367
337
|
attrs: {
|
|
368
|
-
to:
|
|
338
|
+
to: S_WHATSAPP_NET,
|
|
369
339
|
type: 'set',
|
|
370
340
|
xmlns: 'w:biz:catalog'
|
|
371
341
|
},
|
|
@@ -387,7 +357,7 @@ const makeBusinessSocket = config => {
|
|
|
387
357
|
}
|
|
388
358
|
]
|
|
389
359
|
});
|
|
390
|
-
const productCatalogDelNode =
|
|
360
|
+
const productCatalogDelNode = getBinaryNodeChild(result, 'product_catalog_delete');
|
|
391
361
|
return {
|
|
392
362
|
deleted: +(productCatalogDelNode?.attrs.deleted_count || 0)
|
|
393
363
|
};
|
|
@@ -396,8 +366,6 @@ const makeBusinessSocket = config => {
|
|
|
396
366
|
...sock,
|
|
397
367
|
logger: config.logger,
|
|
398
368
|
getOrderDetails,
|
|
399
|
-
getLinkedAccounts,
|
|
400
|
-
getBusinessEligibility,
|
|
401
369
|
getCatalog,
|
|
402
370
|
getCollections,
|
|
403
371
|
productCreate,
|
|
@@ -408,4 +376,4 @@ const makeBusinessSocket = config => {
|
|
|
408
376
|
removeCoverPhoto
|
|
409
377
|
};
|
|
410
378
|
};
|
|
411
|
-
|
|
379
|
+
//# sourceMappingURL=business.js.map
|