bb-fca 2.0.0 → 2.0.1

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.
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = default_1;
4
+ const utils = require("../../../utils");
4
5
  /**
5
6
  * @ChoruOfficial
6
7
  * @description A module for managing friend-related actions like listing friends, handling requests, and getting suggestions.
@@ -26,20 +27,24 @@ function default_1(defaultFuncs, api, ctx) {
26
27
  else if (type === 'suggestions' && viewer?.people_you_may_know?.edges) {
27
28
  edges = viewer.people_you_may_know.edges;
28
29
  }
29
- else if (type === 'list' && data?.data?.node?.all_collections?.nodes[0]?.style_renderer?.collection?.pageItems?.edges) {
30
- edges = data.data.node.all_collections.nodes[0].style_renderer.collection.pageItems.edges;
30
+ else if (type === 'list' &&
31
+ data?.data?.node?.all_collections?.nodes[0]?.style_renderer?.collection
32
+ ?.pageItems?.edges) {
33
+ edges =
34
+ data.data.node.all_collections.nodes[0].style_renderer.collection
35
+ .pageItems.edges;
31
36
  }
32
37
  else {
33
38
  return [];
34
39
  }
35
- return edges.map(edge => {
40
+ return edges.map((edge) => {
36
41
  const node = edge.node;
37
42
  return {
38
43
  userID: node.id || node.node?.id,
39
44
  name: node.name || node.title?.text,
40
45
  profilePicture: node.profile_picture?.uri || node.image?.uri,
41
46
  socialContext: node.social_context?.text || node.subtitle_text?.text,
42
- url: node.url
47
+ url: node.url,
43
48
  };
44
49
  });
45
50
  }
@@ -51,83 +56,124 @@ function default_1(defaultFuncs, api, ctx) {
51
56
  * @author ChoruOfficial
52
57
  */
53
58
  /**
54
- * Fetches the list of incoming friend requests.
59
+ * Fetches the list of incoming friend requests by parsing the /friends/requests page.
55
60
  * @async
56
61
  * @returns {Promise<Array<Object>>} A promise that resolves to an array of friend request objects.
57
- * @throws {Error} If the API request fails or returns an error.
62
+ * @throws {Error} If the API request fails or HTML parsing fails.
58
63
  */
59
64
  requests: async function () {
60
65
  try {
66
+ const url = 'https://www.facebook.com/friends/requests';
67
+ const resData = await utils.get(url, ctx.jar, {}, ctx.globalOptions, ctx);
68
+ const html = resData.body.toString();
69
+ return extractFriendRequestsFromHTML(html);
70
+ }
71
+ catch (err) {
72
+ utils.error('friend.requests', err);
73
+ throw err;
74
+ }
75
+ },
76
+ /**
77
+ * Accepts a friend request.
78
+ * @async
79
+ * @param {string} identifier The user ID or name of the person whose friend request is to be accepted. If a name is provided, the function will search through pending requests.
80
+ * @returns {Promise<Object>} A promise that resolves to the API response data upon successful acceptance.
81
+ * @throws {Error} If the identifier is missing, the user is not found in requests, or the API call fails.
82
+ */
83
+ accept: async function (identifier) {
84
+ try {
85
+ if (!identifier)
86
+ throw new Error('A name or user ID is required.');
87
+ let targetUserID = identifier;
88
+ if (isNaN(identifier)) {
89
+ const requests = await friendModule.requests();
90
+ const found = requests.find((req) => req.name.toLowerCase().includes(identifier.toLowerCase()));
91
+ if (!found)
92
+ throw new Error(`Could not find any friend request matching "${identifier}".`);
93
+ targetUserID = found.userID;
94
+ }
95
+ const variables = {
96
+ input: {
97
+ friend_requester_id: targetUserID,
98
+ friending_channel: 'FRIENDS_HOME_MAIN',
99
+ actor_id: ctx.userID,
100
+ client_mutation_id: Math.floor(Math.random() * 10 + 1).toString(),
101
+ },
102
+ scale: 3,
103
+ };
61
104
  const form = {
62
105
  av: ctx.userID,
63
106
  __user: ctx.userID,
64
- __a: "1",
107
+ __a: '1',
65
108
  fb_dtsg: ctx.fb_dtsg,
66
109
  jazoest: ctx.jazoest,
67
110
  lsd: ctx.lsd,
68
- fb_api_caller_class: "RelayModern",
69
- fb_api_req_friendly_name: "FriendingCometRootContentQuery",
70
- variables: JSON.stringify({ scale: 3 }),
71
- doc_id: "9103543533085580"
111
+ fb_api_caller_class: 'RelayModern',
112
+ fb_api_req_friendly_name: 'FriendingCometFriendRequestConfirmMutation',
113
+ variables: JSON.stringify(variables),
114
+ doc_id: '24630768433181357',
72
115
  };
73
- const res = await defaultFuncs.post("https://www.facebook.com/api/graphql/", ctx.jar, form, {});
116
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
74
117
  if (res.data.errors)
75
118
  throw new Error(JSON.stringify(res.data.errors));
76
- return formatFriends(res.data, 'requests');
119
+ return res.data.data;
77
120
  }
78
121
  catch (err) {
122
+ if (err.message?.includes('1431004')) {
123
+ throw new Error('I cannot accept this friend request right now. There might be a problem with the account or you need to wait.');
124
+ }
79
125
  throw err;
80
126
  }
81
127
  },
82
128
  /**
83
- * Accepts a friend request.
129
+ * Deletes/rejects a friend request.
84
130
  * @async
85
- * @param {string} identifier The user ID or name of the person whose friend request is to be accepted. If a name is provided, the function will search through pending requests.
86
- * @returns {Promise<Object>} A promise that resolves to the API response data upon successful acceptance.
131
+ * @param {string} identifier The user ID or name of the person whose friend request is to be deleted. If a name is provided, the function will search through pending requests.
132
+ * @returns {Promise<Object>} A promise that resolves to the API response data upon successful deletion.
87
133
  * @throws {Error} If the identifier is missing, the user is not found in requests, or the API call fails.
88
134
  */
89
- accept: async function (identifier) {
135
+ delete: async function (identifier) {
90
136
  try {
91
137
  if (!identifier)
92
- throw new Error("A name or user ID is required.");
138
+ throw new Error('A name or user ID is required.');
93
139
  let targetUserID = identifier;
94
140
  if (isNaN(identifier)) {
95
141
  const requests = await friendModule.requests();
96
- const found = requests.find(req => req.name.toLowerCase().includes(identifier.toLowerCase()));
142
+ const found = requests.find((req) => req.name.toLowerCase().includes(identifier.toLowerCase()));
97
143
  if (!found)
98
144
  throw new Error(`Could not find any friend request matching "${identifier}".`);
99
145
  targetUserID = found.userID;
100
146
  }
101
147
  const variables = {
102
148
  input: {
149
+ click_correlation_id: Date.now().toString(),
150
+ click_proof_validation_result: '{"validated":true}',
103
151
  friend_requester_id: targetUserID,
104
- friending_channel: "FRIENDS_HOME_MAIN",
152
+ friending_channel: 'FRIENDS_HOME_REQUESTS',
105
153
  actor_id: ctx.userID,
106
- client_mutation_id: Math.floor(Math.random() * 10 + 1).toString()
154
+ client_mutation_id: Math.floor(Math.random() * 10 + 1).toString(),
107
155
  },
108
- scale: 3
156
+ scale: 1,
157
+ refresh_num: 0,
109
158
  };
110
159
  const form = {
111
160
  av: ctx.userID,
112
161
  __user: ctx.userID,
113
- __a: "1",
162
+ __a: '1',
114
163
  fb_dtsg: ctx.fb_dtsg,
115
164
  jazoest: ctx.jazoest,
116
165
  lsd: ctx.lsd,
117
- fb_api_caller_class: "RelayModern",
118
- fb_api_req_friendly_name: "FriendingCometFriendRequestConfirmMutation",
166
+ fb_api_caller_class: 'RelayModern',
167
+ fb_api_req_friendly_name: 'FriendingCometFriendRequestDeleteMutation',
119
168
  variables: JSON.stringify(variables),
120
- doc_id: "24630768433181357"
169
+ doc_id: '25693816160239288',
121
170
  };
122
- const res = await defaultFuncs.post("https://www.facebook.com/api/graphql/", ctx.jar, form, {});
171
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
123
172
  if (res.data.errors)
124
173
  throw new Error(JSON.stringify(res.data.errors));
125
174
  return res.data.data;
126
175
  }
127
176
  catch (err) {
128
- if (err.message?.includes("1431004")) {
129
- throw new Error("I cannot accept this friend request right now. There might be a problem with the account or you need to wait.");
130
- }
131
177
  throw err;
132
178
  }
133
179
  },
@@ -146,21 +192,21 @@ function default_1(defaultFuncs, api, ctx) {
146
192
  scale: 2,
147
193
  sectionToken: sectionToken,
148
194
  useDefaultActor: false,
149
- userID: userID
195
+ userID: userID,
150
196
  };
151
197
  const form = {
152
198
  av: ctx.userID,
153
199
  __user: ctx.userID,
154
- __a: "1",
200
+ __a: '1',
155
201
  fb_dtsg: ctx.fb_dtsg,
156
202
  jazoest: ctx.jazoest,
157
203
  lsd: ctx.lsd,
158
- fb_api_caller_class: "RelayModern",
159
- fb_api_req_friendly_name: "ProfileCometTopAppSectionQuery",
204
+ fb_api_caller_class: 'RelayModern',
205
+ fb_api_req_friendly_name: 'ProfileCometTopAppSectionQuery',
160
206
  variables: JSON.stringify(variables),
161
- doc_id: "24492266383698794"
207
+ doc_id: '24492266383698794',
162
208
  };
163
- const res = await defaultFuncs.post("https://www.facebook.com/api/graphql/", ctx.jar, form, {});
209
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
164
210
  if (res.data.errors)
165
211
  throw new Error(JSON.stringify(res.data.errors));
166
212
  return formatFriends(res.data, 'list');
@@ -173,6 +219,7 @@ function default_1(defaultFuncs, api, ctx) {
173
219
  * @namespace api.friend.suggest
174
220
  * @description Functions for managing friend suggestions.
175
221
  */
222
+ getCurrentFriends: getCurrentFriends,
176
223
  suggest: {
177
224
  /**
178
225
  * Fetches a list of suggested friends (People You May Know).
@@ -186,16 +233,16 @@ function default_1(defaultFuncs, api, ctx) {
186
233
  const form = {
187
234
  av: ctx.userID,
188
235
  __user: ctx.userID,
189
- __a: "1",
236
+ __a: '1',
190
237
  fb_dtsg: ctx.fb_dtsg,
191
238
  jazoest: ctx.jazoest,
192
239
  lsd: ctx.lsd,
193
- fb_api_caller_class: "RelayModern",
194
- fb_api_req_friendly_name: "FriendingCometPYMKPanelPaginationQuery",
240
+ fb_api_caller_class: 'RelayModern',
241
+ fb_api_req_friendly_name: 'FriendingCometPYMKPanelPaginationQuery',
195
242
  variables: JSON.stringify({ count: limit, cursor: null, scale: 3 }),
196
- doc_id: "9917809191634193"
243
+ doc_id: '9917809191634193',
197
244
  };
198
- const res = await defaultFuncs.post("https://www.facebook.com/api/graphql/", ctx.jar, form, {});
245
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
199
246
  if (res.data.errors)
200
247
  throw new Error(JSON.stringify(res.data.errors));
201
248
  return formatFriends(res.data, 'suggestions');
@@ -214,29 +261,29 @@ function default_1(defaultFuncs, api, ctx) {
214
261
  request: async function (userID) {
215
262
  try {
216
263
  if (!userID)
217
- throw new Error("userID is required.");
264
+ throw new Error('userID is required.');
218
265
  const variables = {
219
266
  input: {
220
267
  friend_requestee_ids: [userID],
221
- friending_channel: "FRIENDS_HOME_MAIN",
268
+ friending_channel: 'FRIENDS_HOME_MAIN',
222
269
  actor_id: ctx.userID,
223
- client_mutation_id: Math.floor(Math.random() * 10 + 1).toString()
270
+ client_mutation_id: Math.floor(Math.random() * 10 + 1).toString(),
224
271
  },
225
- scale: 3
272
+ scale: 3,
226
273
  };
227
274
  const form = {
228
275
  av: ctx.userID,
229
276
  __user: ctx.userID,
230
- __a: "1",
277
+ __a: '1',
231
278
  fb_dtsg: ctx.fb_dtsg,
232
279
  jazoest: ctx.jazoest,
233
280
  lsd: ctx.lsd,
234
- fb_api_caller_class: "RelayModern",
235
- fb_api_req_friendly_name: "FriendingCometFriendRequestSendMutation",
281
+ fb_api_caller_class: 'RelayModern',
282
+ fb_api_req_friendly_name: 'FriendingCometFriendRequestSendMutation',
236
283
  variables: JSON.stringify(variables),
237
- doc_id: "23982103144788355"
284
+ doc_id: '23982103144788355',
238
285
  };
239
- const res = await defaultFuncs.post("https://www.facebook.com/api/graphql/", ctx.jar, form, {});
286
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
240
287
  if (res.data.errors)
241
288
  throw new Error(JSON.stringify(res.data.errors));
242
289
  return res.data.data;
@@ -244,10 +291,230 @@ function default_1(defaultFuncs, api, ctx) {
244
291
  catch (err) {
245
292
  throw err;
246
293
  }
294
+ },
295
+ },
296
+ };
297
+ /**
298
+ * Gets current user's friends list by fetching the friends/list page
299
+ * and extracting all_friends data from the embedded JSON.
300
+ * @async
301
+ * @param {Function} [callback] - Optional callback function.
302
+ * @returns {Promise<Array<Object>>} A promise that resolves to an array of friend objects.
303
+ */
304
+ async function getCurrentFriends(callback) {
305
+ let resolveFunc = function () { };
306
+ let rejectFunc = function () { };
307
+ const returnPromise = new Promise(function (resolve, reject) {
308
+ resolveFunc = resolve;
309
+ rejectFunc = reject;
310
+ });
311
+ callback =
312
+ callback ||
313
+ function (err, data) {
314
+ if (err)
315
+ return rejectFunc(err);
316
+ resolveFunc(data);
317
+ };
318
+ try {
319
+ const url = 'https://www.facebook.com/friends/list';
320
+ const resData = await utils.get(url, ctx.jar, {}, ctx.globalOptions, ctx);
321
+ const html = resData.body.toString();
322
+ const friends = extractFriendsFromHTML(html);
323
+ callback(null, friends);
324
+ }
325
+ catch (err) {
326
+ utils.error('getCurrentFriends', err);
327
+ callback(err);
328
+ }
329
+ return returnPromise;
330
+ }
331
+ /**
332
+ * Extracts all_friends data from the friends/list HTML page.
333
+ * Parses embedded <script type="application/json" data-sjs> tags
334
+ * to find the RelayPrefetchedStreamCache containing all_friends.
335
+ * @private
336
+ */
337
+ function extractFriendsFromHTML(htmlContent) {
338
+ const friends = [];
339
+ try {
340
+ const scriptMatches = htmlContent.match(/<script type="application\/json"\s+data-content-len="\d+"\s+data-sjs>(.*?)<\/script>/gs);
341
+ if (!scriptMatches)
342
+ return friends;
343
+ for (const scriptMatch of scriptMatches) {
344
+ try {
345
+ const jsonMatch = scriptMatch.match(/<script[^>]*>(.*?)<\/script>/s);
346
+ if (!jsonMatch)
347
+ continue;
348
+ const jsonData = JSON.parse(jsonMatch[1]);
349
+ if (!jsonData.require || !Array.isArray(jsonData.require))
350
+ continue;
351
+ for (const req of jsonData.require) {
352
+ if (!Array.isArray(req))
353
+ continue;
354
+ if (req[0] === 'ScheduledServerJS' && req[1] === 'handle') {
355
+ const payload = req[3];
356
+ if (!payload || !Array.isArray(payload))
357
+ continue;
358
+ for (const item of payload) {
359
+ if (!item.__bbox || !item.__bbox.require)
360
+ continue;
361
+ for (const bboxReq of item.__bbox.require) {
362
+ if (!Array.isArray(bboxReq))
363
+ continue;
364
+ if (bboxReq[0] === 'RelayPrefetchedStreamCache' &&
365
+ bboxReq[1] === 'next') {
366
+ const streamData = bboxReq[3];
367
+ if (!streamData ||
368
+ !Array.isArray(streamData) ||
369
+ streamData.length < 2)
370
+ continue;
371
+ const cacheKey = streamData[0];
372
+ if (typeof cacheKey !== 'string' ||
373
+ !cacheKey.includes('FriendingCometAllFriendsRootQuery'))
374
+ continue;
375
+ const bboxData = streamData[1];
376
+ if (!bboxData ||
377
+ !bboxData.__bbox ||
378
+ !bboxData.__bbox.result)
379
+ continue;
380
+ const viewer = bboxData.__bbox.result?.data?.viewer;
381
+ if (!viewer || !viewer.all_friends)
382
+ continue;
383
+ const allFriends = viewer.all_friends;
384
+ const friendCount = viewer.all_friends_data?.friend_count ||
385
+ viewer.all_friends_data?.count ||
386
+ 0;
387
+ if (allFriends.edges && Array.isArray(allFriends.edges)) {
388
+ for (const edge of allFriends.edges) {
389
+ if (!edge.node)
390
+ continue;
391
+ const node = edge.node;
392
+ friends.push({
393
+ userID: node.id,
394
+ name: node.name,
395
+ shortName: node.short_name,
396
+ gender: node.gender,
397
+ profilePicture: node.profile_picture?.uri,
398
+ profileUrl: node.url,
399
+ friendshipStatus: node.friendship_status,
400
+ subscribeStatus: node.subscribe_status,
401
+ socialContext: node.social_context?.text,
402
+ mutualFriends: node.social_context_top_mutual_friends || [],
403
+ });
404
+ }
405
+ }
406
+ // Attach pagination and count info
407
+ friends.totalCount = friendCount;
408
+ friends.pageInfo = allFriends.page_info || null;
409
+ }
410
+ }
411
+ }
412
+ }
413
+ }
414
+ }
415
+ catch (e) {
416
+ continue;
417
+ }
247
418
  }
248
419
  }
249
- };
420
+ catch (error) {
421
+ utils.error('extractFriendsFromHTML', error);
422
+ }
423
+ return friends;
424
+ }
425
+ /**
426
+ * Extracts friending_possibilities data from the friends/requests HTML page.
427
+ * Parses embedded <script type="application/json" data-sjs> tags
428
+ * to find the RelayPrefetchedStreamCache containing friend requests.
429
+ * @private
430
+ */
431
+ function extractFriendRequestsFromHTML(htmlContent) {
432
+ const requests = [];
433
+ try {
434
+ const scriptMatches = htmlContent.match(/<script type="application\/json"\s+data-content-len="\d+"\s+data-sjs>(.*?)<\/script>/gs);
435
+ if (!scriptMatches)
436
+ return requests;
437
+ for (const scriptMatch of scriptMatches) {
438
+ try {
439
+ const jsonMatch = scriptMatch.match(/<script[^>]*>(.*?)<\/script>/s);
440
+ if (!jsonMatch)
441
+ continue;
442
+ const jsonData = JSON.parse(jsonMatch[1]);
443
+ if (!jsonData.require || !Array.isArray(jsonData.require))
444
+ continue;
445
+ for (const req of jsonData.require) {
446
+ if (!Array.isArray(req))
447
+ continue;
448
+ if (req[0] === 'ScheduledServerJS' && req[1] === 'handle') {
449
+ const payload = req[3];
450
+ if (!payload || !Array.isArray(payload))
451
+ continue;
452
+ for (const item of payload) {
453
+ if (!item.__bbox || !item.__bbox.require)
454
+ continue;
455
+ for (const bboxReq of item.__bbox.require) {
456
+ if (!Array.isArray(bboxReq))
457
+ continue;
458
+ if (bboxReq[0] === 'RelayPrefetchedStreamCache' &&
459
+ bboxReq[1] === 'next') {
460
+ const streamData = bboxReq[3];
461
+ if (!streamData ||
462
+ !Array.isArray(streamData) ||
463
+ streamData.length < 2)
464
+ continue;
465
+ const cacheKey = streamData[0];
466
+ if (typeof cacheKey !== 'string' ||
467
+ !cacheKey.includes('FriendingCometFriendRequestsRootQuery'))
468
+ continue;
469
+ const bboxData = streamData[1];
470
+ if (!bboxData ||
471
+ !bboxData.__bbox ||
472
+ !bboxData.__bbox.result)
473
+ continue;
474
+ const viewer = bboxData.__bbox.result?.data?.viewer;
475
+ if (!viewer || !viewer.friending_possibilities)
476
+ continue;
477
+ const friendingPossibilities = viewer.friending_possibilities;
478
+ const requestCount = friendingPossibilities.count || 0;
479
+ if (friendingPossibilities.edges &&
480
+ Array.isArray(friendingPossibilities.edges)) {
481
+ for (const edge of friendingPossibilities.edges) {
482
+ if (!edge.node)
483
+ continue;
484
+ const node = edge.node;
485
+ requests.push({
486
+ userID: node.id,
487
+ name: node.name,
488
+ profilePicture: node.profile_picture?.uri,
489
+ profileUrl: node.url,
490
+ friendshipStatus: node.friendship_status,
491
+ socialContext: node.social_context?.text,
492
+ mutualFriends: node.social_context_top_mutual_friends || [],
493
+ time: edge.time,
494
+ isSeen: edge.is_seen,
495
+ });
496
+ }
497
+ }
498
+ // Attach count and pagination info
499
+ requests.totalCount = requestCount;
500
+ requests.pageInfo =
501
+ friendingPossibilities.page_info || null;
502
+ }
503
+ }
504
+ }
505
+ }
506
+ }
507
+ }
508
+ catch (e) {
509
+ continue;
510
+ }
511
+ }
512
+ }
513
+ catch (error) {
514
+ utils.error('extractFriendRequestsFromHTML', error);
515
+ }
516
+ return requests;
517
+ }
250
518
  return friendModule;
251
519
  }
252
- ;
253
520
  //# sourceMappingURL=friend.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"friend.js","sourceRoot":"","sources":["../../../../src/deltas/apis/posting/friend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"friend.js","sourceRoot":"","sources":["../../../../src/deltas/apis/posting/friend.ts"],"names":[],"mappings":";;AAUA,4BA8kBC;AAxlBD,wCAAyC;AAEzC;;;;;;;GAOG;AACH,mBAAwB,YAAiB,EAAE,GAAQ,EAAE,GAAQ;IAC3D;;;;;;OAMG;IACH,SAAS,aAAa,CAAC,IAAI,EAAE,IAAI;QAC/B,MAAM,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC;QAClC,IAAI,KAAK,CAAC;QACV,IAAI,IAAI,KAAK,UAAU,IAAI,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;YAC1D,KAAK,GAAG,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC;QACvC,CAAC;aAAM,IAAI,IAAI,KAAK,aAAa,IAAI,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;YACxE,KAAK,GAAG,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC;QAC3C,CAAC;aAAM,IACL,IAAI,KAAK,MAAM;YACf,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU;gBACrE,EAAE,SAAS,EAAE,KAAK,EACpB,CAAC;YACD,KAAK;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU;qBAC9D,SAAS,CAAC,KAAK,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACvB,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;gBAChC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI;gBACnC,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG;gBAC5D,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,IAAI;gBACpE,GAAG,EAAE,IAAI,CAAC,GAAG;aACd,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,YAAY,GAAG;QACnB;;;;;WAKG;QAEH;;;;;WAKG;QACH,QAAQ,EAAE,KAAK;YACb,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,2CAA2C,CAAC;gBACxD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAC7B,GAAG,EACH,GAAG,CAAC,GAAG,EACP,EAAE,EACF,GAAG,CAAC,aAAa,EACjB,GAAG,CACJ,CAAC;gBACF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACrC,OAAO,6BAA6B,CAAC,IAAI,CAAC,CAAC;YAC7C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,CAAC,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;gBACpC,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED;;;;;;WAMG;QACH,MAAM,EAAE,KAAK,WAAU,UAAU;YAC/B,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBACnE,IAAI,YAAY,GAAG,UAAU,CAAC;gBAC9B,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;oBACtB,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;oBAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAC1D,CAAC;oBACF,IAAI,CAAC,KAAK;wBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,UAAU,IAAI,CAC9D,CAAC;oBACJ,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC9B,CAAC;gBACD,MAAM,SAAS,GAAG;oBAChB,KAAK,EAAE;wBACL,mBAAmB,EAAE,YAAY;wBACjC,iBAAiB,EAAE,mBAAmB;wBACtC,QAAQ,EAAE,GAAG,CAAC,MAAM;wBACpB,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE;qBAClE;oBACD,KAAK,EAAE,CAAC;iBACT,CAAC;gBACF,MAAM,IAAI,GAAG;oBACX,EAAE,EAAE,GAAG,CAAC,MAAM;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,GAAG,EAAE,GAAG;oBACR,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,mBAAmB,EAAE,aAAa;oBAClC,wBAAwB,EACtB,4CAA4C;oBAC9C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;oBACpC,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;gBACF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CACjC,uCAAuC,EACvC,GAAG,CAAC,GAAG,EACP,IAAI,EACJ,EAAE,CACH,CAAC;gBACF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACtE,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YACvB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBACrC,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED;;;;;;WAMG;QACH,MAAM,EAAE,KAAK,WAAU,UAAU;YAC/B,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBACnE,IAAI,YAAY,GAAG,UAAU,CAAC;gBAC9B,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;oBACtB,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE,CAAC;oBAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAClC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAC1D,CAAC;oBACF,IAAI,CAAC,KAAK;wBACR,MAAM,IAAI,KAAK,CACb,+CAA+C,UAAU,IAAI,CAC9D,CAAC;oBACJ,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC9B,CAAC;gBACD,MAAM,SAAS,GAAG;oBAChB,KAAK,EAAE;wBACL,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;wBAC3C,6BAA6B,EAAE,oBAAoB;wBACnD,mBAAmB,EAAE,YAAY;wBACjC,iBAAiB,EAAE,uBAAuB;wBAC1C,QAAQ,EAAE,GAAG,CAAC,MAAM;wBACpB,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE;qBAClE;oBACD,KAAK,EAAE,CAAC;oBACR,WAAW,EAAE,CAAC;iBACf,CAAC;gBACF,MAAM,IAAI,GAAG;oBACX,EAAE,EAAE,GAAG,CAAC,MAAM;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,GAAG,EAAE,GAAG;oBACR,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,mBAAmB,EAAE,aAAa;oBAClC,wBAAwB,EAAE,2CAA2C;oBACrE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;oBACpC,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;gBACF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CACjC,uCAAuC,EACvC,GAAG,CAAC,GAAG,EACP,IAAI,EACJ,EAAE,CACH,CAAC;gBACF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACtE,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;YACvB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED;;;;;;WAMG;QACH,IAAI,EAAE,KAAK,WAAU,MAAM,GAAG,GAAG,CAAC,MAAM;YACtC,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAC9B,eAAe,MAAM,aAAa,CACnC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBACrB,MAAM,SAAS,GAAG;oBAChB,eAAe,EAAE,IAAI;oBACrB,KAAK,EAAE,CAAC;oBACR,YAAY,EAAE,YAAY;oBAC1B,eAAe,EAAE,KAAK;oBACtB,MAAM,EAAE,MAAM;iBACf,CAAC;gBACF,MAAM,IAAI,GAAG;oBACX,EAAE,EAAE,GAAG,CAAC,MAAM;oBACd,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,GAAG,EAAE,GAAG;oBACR,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,mBAAmB,EAAE,aAAa;oBAClC,wBAAwB,EAAE,gCAAgC;oBAC1D,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;oBACpC,MAAM,EAAE,mBAAmB;iBAC5B,CAAC;gBACF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CACjC,uCAAuC,EACvC,GAAG,CAAC,GAAG,EACP,IAAI,EACJ,EAAE,CACH,CAAC;gBACF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACtE,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED;;;WAGG;QACH,iBAAiB,EAAE,iBAAiB;QAEpC,OAAO,EAAE;YACP;;;;;;eAMG;YACH,IAAI,EAAE,KAAK,WAAU,KAAK,GAAG,EAAE;gBAC7B,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG;wBACX,EAAE,EAAE,GAAG,CAAC,MAAM;wBACd,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,GAAG,EAAE,GAAG;wBACR,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,GAAG,EAAE,GAAG,CAAC,GAAG;wBACZ,mBAAmB,EAAE,aAAa;wBAClC,wBAAwB,EAAE,wCAAwC;wBAClE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;wBACnE,MAAM,EAAE,kBAAkB;qBAC3B,CAAC;oBACF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CACjC,uCAAuC,EACvC,GAAG,CAAC,GAAG,EACP,IAAI,EACJ,EAAE,CACH,CAAC;oBACF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;wBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;oBACtE,OAAO,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;gBAChD,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;YACD;;;;;;eAMG;YACH,OAAO,EAAE,KAAK,WAAU,MAAM;gBAC5B,IAAI,CAAC;oBACH,IAAI,CAAC,MAAM;wBAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;oBACpD,MAAM,SAAS,GAAG;wBAChB,KAAK,EAAE;4BACL,oBAAoB,EAAE,CAAC,MAAM,CAAC;4BAC9B,iBAAiB,EAAE,mBAAmB;4BACtC,QAAQ,EAAE,GAAG,CAAC,MAAM;4BACpB,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE;yBAClE;wBACD,KAAK,EAAE,CAAC;qBACT,CAAC;oBACF,MAAM,IAAI,GAAG;wBACX,EAAE,EAAE,GAAG,CAAC,MAAM;wBACd,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,GAAG,EAAE,GAAG;wBACR,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,GAAG,EAAE,GAAG,CAAC,GAAG;wBACZ,mBAAmB,EAAE,aAAa;wBAClC,wBAAwB,EAAE,yCAAyC;wBACnE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;wBACpC,MAAM,EAAE,mBAAmB;qBAC5B,CAAC;oBACF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CACjC,uCAAuC,EACvC,GAAG,CAAC,GAAG,EACP,IAAI,EACJ,EAAE,CACH,CAAC;oBACF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;wBAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;oBACtE,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;gBACvB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;SACF;KACF,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,UAAU,iBAAiB,CAAC,QAAS;QACxC,IAAI,WAAW,GAAa,cAAY,CAAC,CAAC;QAC1C,IAAI,UAAU,GAAa,cAAY,CAAC,CAAC;QAEzC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAM,UAAS,OAAO,EAAE,MAAM;YAC7D,WAAW,GAAG,OAAO,CAAC;YACtB,UAAU,GAAG,MAAM,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,QAAQ;YACN,QAAQ;gBACR,UAAS,GAAG,EAAE,IAAI;oBAChB,IAAI,GAAG;wBAAE,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;oBAChC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC,CAAC;QAEJ,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,uCAAuC,CAAC;YACpD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;YAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAErC,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC7C,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;YACtC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACH,SAAS,sBAAsB,CAAC,WAAW;QACzC,MAAM,OAAO,GAAU,EAAE,CAAC;QAE1B,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CACrC,wFAAwF,CACzF,CAAC;YAEF,IAAI,CAAC,aAAa;gBAAE,OAAO,OAAO,CAAC;YAEnC,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;gBACxC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;oBACrE,IAAI,CAAC,SAAS;wBAAE,SAAS;oBAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1C,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;wBAAE,SAAS;oBAEpE,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;wBACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;4BAAE,SAAS;wBAElC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,mBAAmB,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;4BAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;4BACvB,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gCAAE,SAAS;4BAElD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;gCAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO;oCAAE,SAAS;gCAEnD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oCAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;wCAAE,SAAS;oCAEtC,IACE,OAAO,CAAC,CAAC,CAAC,KAAK,4BAA4B;wCAC3C,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EACrB,CAAC;wCACD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wCAC9B,IACE,CAAC,UAAU;4CACX,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;4CAC1B,UAAU,CAAC,MAAM,GAAG,CAAC;4CAErB,SAAS;wCAEX,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;wCAC/B,IACE,OAAO,QAAQ,KAAK,QAAQ;4CAC5B,CAAC,QAAQ,CAAC,QAAQ,CAAC,mCAAmC,CAAC;4CAEvD,SAAS;wCAEX,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;wCAC/B,IACE,CAAC,QAAQ;4CACT,CAAC,QAAQ,CAAC,MAAM;4CAChB,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM;4CAEvB,SAAS;wCAEX,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;wCACpD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW;4CAAE,SAAS;wCAE7C,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC;wCACtC,MAAM,WAAW,GACf,MAAM,CAAC,gBAAgB,EAAE,YAAY;4CACrC,MAAM,CAAC,gBAAgB,EAAE,KAAK;4CAC9B,CAAC,CAAC;wCAEJ,IAAI,UAAU,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;4CACxD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;gDACpC,IAAI,CAAC,IAAI,CAAC,IAAI;oDAAE,SAAS;gDAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gDACvB,OAAO,CAAC,IAAI,CAAC;oDACX,MAAM,EAAE,IAAI,CAAC,EAAE;oDACf,IAAI,EAAE,IAAI,CAAC,IAAI;oDACf,SAAS,EAAE,IAAI,CAAC,UAAU;oDAC1B,MAAM,EAAE,IAAI,CAAC,MAAM;oDACnB,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG;oDACzC,UAAU,EAAE,IAAI,CAAC,GAAG;oDACpB,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;oDACxC,eAAe,EAAE,IAAI,CAAC,gBAAgB;oDACtC,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI;oDACxC,aAAa,EACX,IAAI,CAAC,iCAAiC,IAAI,EAAE;iDAC/C,CAAC,CAAC;4CACL,CAAC;wCACH,CAAC;wCAED,mCAAmC;wCAClC,OAAe,CAAC,UAAU,GAAG,WAAW,CAAC;wCACzC,OAAe,CAAC,QAAQ,GAAG,UAAU,CAAC,SAAS,IAAI,IAAI,CAAC;oCAC3D,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACH,SAAS,6BAA6B,CAAC,WAAW;QAChD,MAAM,QAAQ,GAAU,EAAE,CAAC;QAE3B,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CACrC,wFAAwF,CACzF,CAAC;YAEF,IAAI,CAAC,aAAa;gBAAE,OAAO,QAAQ,CAAC;YAEpC,KAAK,MAAM,WAAW,IAAI,aAAa,EAAE,CAAC;gBACxC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;oBACrE,IAAI,CAAC,SAAS;wBAAE,SAAS;oBAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oBAE1C,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;wBAAE,SAAS;oBAEpE,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;wBACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;4BAAE,SAAS;wBAElC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,mBAAmB,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;4BAC1D,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;4BACvB,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gCAAE,SAAS;4BAElD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;gCAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO;oCAAE,SAAS;gCAEnD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oCAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;wCAAE,SAAS;oCAEtC,IACE,OAAO,CAAC,CAAC,CAAC,KAAK,4BAA4B;wCAC3C,OAAO,CAAC,CAAC,CAAC,KAAK,MAAM,EACrB,CAAC;wCACD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wCAC9B,IACE,CAAC,UAAU;4CACX,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;4CAC1B,UAAU,CAAC,MAAM,GAAG,CAAC;4CAErB,SAAS;wCAEX,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;wCAC/B,IACE,OAAO,QAAQ,KAAK,QAAQ;4CAC5B,CAAC,QAAQ,CAAC,QAAQ,CAChB,uCAAuC,CACxC;4CAED,SAAS;wCAEX,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;wCAC/B,IACE,CAAC,QAAQ;4CACT,CAAC,QAAQ,CAAC,MAAM;4CAChB,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM;4CAEvB,SAAS;wCAEX,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;wCACpD,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,uBAAuB;4CAAE,SAAS;wCAEzD,MAAM,sBAAsB,GAC1B,MAAM,CAAC,uBAAuB,CAAC;wCACjC,MAAM,YAAY,GAAG,sBAAsB,CAAC,KAAK,IAAI,CAAC,CAAC;wCAEvD,IACE,sBAAsB,CAAC,KAAK;4CAC5B,KAAK,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAC3C,CAAC;4CACD,KAAK,MAAM,IAAI,IAAI,sBAAsB,CAAC,KAAK,EAAE,CAAC;gDAChD,IAAI,CAAC,IAAI,CAAC,IAAI;oDAAE,SAAS;gDAEzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gDACvB,QAAQ,CAAC,IAAI,CAAC;oDACZ,MAAM,EAAE,IAAI,CAAC,EAAE;oDACf,IAAI,EAAE,IAAI,CAAC,IAAI;oDACf,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,GAAG;oDACzC,UAAU,EAAE,IAAI,CAAC,GAAG;oDACpB,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;oDACxC,aAAa,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI;oDACxC,aAAa,EACX,IAAI,CAAC,iCAAiC,IAAI,EAAE;oDAC9C,IAAI,EAAE,IAAI,CAAC,IAAI;oDACf,MAAM,EAAE,IAAI,CAAC,OAAO;iDACrB,CAAC,CAAC;4CACL,CAAC;wCACH,CAAC;wCAED,mCAAmC;wCAClC,QAAgB,CAAC,UAAU,GAAG,YAAY,CAAC;wCAC3C,QAAgB,CAAC,QAAQ;4CACxB,sBAAsB,CAAC,SAAS,IAAI,IAAI,CAAC;oCAC7C,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -123,6 +123,27 @@ export interface UploadPhotoResult {
123
123
  data: any;
124
124
  }
125
125
 
126
+ export interface CurrentFriendInfo {
127
+ userID: string;
128
+ name: string;
129
+ shortName: string;
130
+ gender: string;
131
+ profilePicture: string;
132
+ profileUrl: string;
133
+ friendshipStatus: string;
134
+ subscribeStatus: string;
135
+ socialContext: string;
136
+ mutualFriends: any[];
137
+ }
138
+
139
+ export interface FriendListItem {
140
+ userID: string;
141
+ name: string;
142
+ profilePicture: string;
143
+ socialContext: string;
144
+ url: string;
145
+ }
146
+
126
147
  export interface Attachment {
127
148
  type:
128
149
  | 'photo'
@@ -604,8 +625,26 @@ export interface API {
604
625
  /** Follow or unfollow a user. */
605
626
  follow(senderID: UserID, follow: boolean, callback?: Callback): void;
606
627
 
607
- /** Send or cancel a friend request. */
608
- friend(action: 'add' | 'cancel', userID: UserID, callback?: Callback): void;
628
+ /** Friend-related API methods. */
629
+ friend: {
630
+ requests(callback?: Callback<FriendListItem[]>): Promise<FriendListItem[]>;
631
+ accept(identifier: string, callback?: Callback): Promise<any>;
632
+ delete(identifier: string, callback?: Callback): Promise<any>;
633
+ list(
634
+ userID?: UserID,
635
+ callback?: Callback<FriendListItem[]>,
636
+ ): Promise<FriendListItem[]>;
637
+ getCurrentFriends(
638
+ callback?: Callback<CurrentFriendInfo[]>,
639
+ ): Promise<CurrentFriendInfo[]>;
640
+ suggest: {
641
+ list(
642
+ limit?: number,
643
+ callback?: Callback<FriendListItem[]>,
644
+ ): Promise<FriendListItem[]>;
645
+ request(userID: UserID, callback?: Callback): Promise<any>;
646
+ };
647
+ };
609
648
 
610
649
  // ── Stickers ───────────────────────────────────────────────────
611
650