bb-fca 2.0.2 → 2.0.4

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.
Files changed (49) hide show
  1. package/dist/deltas/apis/posting/friend.js +84 -0
  2. package/dist/deltas/apis/posting/friend.js.map +1 -1
  3. package/dist/deltas/apis/users/changeBio.js +61 -0
  4. package/dist/deltas/apis/users/changeBio.js.map +1 -0
  5. package/dist/deltas/apis/users/getUserFriends.js +285 -0
  6. package/dist/deltas/apis/users/getUserFriends.js.map +1 -0
  7. package/dist/deltas/apis/users/searchCity.js +91 -0
  8. package/dist/deltas/apis/users/searchCity.js.map +1 -0
  9. package/dist/deltas/apis/users/searchCompany.js +86 -0
  10. package/dist/deltas/apis/users/searchCompany.js.map +1 -0
  11. package/dist/deltas/apis/users/searchJobTitle.js +85 -0
  12. package/dist/deltas/apis/users/searchJobTitle.js.map +1 -0
  13. package/dist/deltas/apis/users/updateCity.js +98 -0
  14. package/dist/deltas/apis/users/updateCity.js.map +1 -0
  15. package/dist/deltas/apis/users/updateHometown.js +97 -0
  16. package/dist/deltas/apis/users/updateHometown.js.map +1 -0
  17. package/dist/deltas/apis/users/updateWorkExperience.js +131 -0
  18. package/dist/deltas/apis/users/updateWorkExperience.js.map +1 -0
  19. package/dist/deltas/apis/users/uploadAvatar.js +174 -0
  20. package/dist/deltas/apis/users/uploadAvatar.js.map +1 -0
  21. package/dist/deltas/apis/users/uploadCover.js +165 -0
  22. package/dist/deltas/apis/users/uploadCover.js.map +1 -0
  23. package/dist/index.d.ts +115 -0
  24. package/dist/types/deltas/apis/posting/friend.d.ts +16 -0
  25. package/dist/types/deltas/apis/users/changeBio.d.ts +10 -0
  26. package/dist/types/deltas/apis/users/getUserFriends.d.ts +30 -0
  27. package/dist/types/deltas/apis/users/searchCity.d.ts +10 -0
  28. package/dist/types/deltas/apis/users/searchCompany.d.ts +10 -0
  29. package/dist/types/deltas/apis/users/searchJobTitle.d.ts +10 -0
  30. package/dist/types/deltas/apis/users/updateCity.d.ts +10 -0
  31. package/dist/types/deltas/apis/users/updateHometown.d.ts +10 -0
  32. package/dist/types/deltas/apis/users/updateWorkExperience.d.ts +30 -0
  33. package/dist/types/deltas/apis/users/uploadAvatar.d.ts +11 -0
  34. package/dist/types/deltas/apis/users/uploadCover.d.ts +15 -0
  35. package/friend.html +534 -0
  36. package/package.json +1 -1
  37. package/proflie.html +527 -0
  38. package/src/deltas/apis/posting/friend.ts +90 -0
  39. package/src/deltas/apis/users/changeBio.ts +68 -0
  40. package/src/deltas/apis/users/getUserFriends.ts +373 -0
  41. package/src/deltas/apis/users/searchCity.ts +106 -0
  42. package/src/deltas/apis/users/searchCompany.ts +100 -0
  43. package/src/deltas/apis/users/searchJobTitle.ts +99 -0
  44. package/src/deltas/apis/users/updateCity.ts +113 -0
  45. package/src/deltas/apis/users/updateHometown.ts +112 -0
  46. package/src/deltas/apis/users/updateWorkExperience.ts +160 -0
  47. package/src/deltas/apis/users/uploadAvatar.ts +172 -0
  48. package/src/deltas/apis/users/uploadCover.ts +167 -0
  49. package/src/types/index.d.ts +115 -0
@@ -269,6 +269,90 @@ function default_1(defaultFuncs, api, ctx) {
269
269
  throw err;
270
270
  }
271
271
  },
272
+ /**
273
+ * Cancels a sent friend request (hủy lời mời kết bạn đã gửi).
274
+ * @async
275
+ * @param {string} userID The ID of the user whose friend request is to be cancelled.
276
+ * @returns {Promise<Object>} A promise that resolves to the API response data upon successful cancellation.
277
+ * @throws {Error} If the userID is missing or the API request fails.
278
+ */
279
+ cancelRequest: async function (userID) {
280
+ try {
281
+ if (!userID)
282
+ throw new Error('userID is required.');
283
+ const variables = {
284
+ input: {
285
+ cancelled_friend_requestee_id: userID,
286
+ click_correlation_id: Date.now().toString(),
287
+ click_proof_validation_result: '{"validated":true}',
288
+ friending_channel: 'PROFILE_BUTTON',
289
+ actor_id: ctx.userID,
290
+ client_mutation_id: Math.floor(Math.random() * 10 + 1).toString(),
291
+ },
292
+ scale: 1,
293
+ };
294
+ const form = {
295
+ av: ctx.userID,
296
+ __user: ctx.userID,
297
+ __a: '1',
298
+ fb_dtsg: ctx.fb_dtsg,
299
+ jazoest: ctx.jazoest,
300
+ lsd: ctx.lsd,
301
+ fb_api_caller_class: 'RelayModern',
302
+ fb_api_req_friendly_name: 'FriendingCometFriendRequestCancelMutation',
303
+ variables: JSON.stringify(variables),
304
+ doc_id: '24453541284254355',
305
+ };
306
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
307
+ if (res.data.errors)
308
+ throw new Error(JSON.stringify(res.data.errors));
309
+ return res.data.data;
310
+ }
311
+ catch (err) {
312
+ throw err;
313
+ }
314
+ },
315
+ /**
316
+ * Unfriends a user (hủy kết bạn).
317
+ * @async
318
+ * @param {string} userID The ID of the user to unfriend.
319
+ * @returns {Promise<Object>} A promise that resolves to the API response data upon successful unfriending.
320
+ * @throws {Error} If the userID is missing or the API request fails.
321
+ */
322
+ unfriend: async function (userID) {
323
+ try {
324
+ if (!userID)
325
+ throw new Error('userID is required.');
326
+ const variables = {
327
+ input: {
328
+ source: 'bd_profile_button',
329
+ unfriended_user_id: userID,
330
+ actor_id: ctx.userID,
331
+ client_mutation_id: Math.floor(Math.random() * 10 + 1).toString(),
332
+ },
333
+ scale: 1,
334
+ };
335
+ const form = {
336
+ av: ctx.userID,
337
+ __user: ctx.userID,
338
+ __a: '1',
339
+ fb_dtsg: ctx.fb_dtsg,
340
+ jazoest: ctx.jazoest,
341
+ lsd: ctx.lsd,
342
+ fb_api_caller_class: 'RelayModern',
343
+ fb_api_req_friendly_name: 'FriendingCometUnfriendMutation',
344
+ variables: JSON.stringify(variables),
345
+ doc_id: '24028849793460009',
346
+ };
347
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
348
+ if (res.data.errors)
349
+ throw new Error(JSON.stringify(res.data.errors));
350
+ return res.data.data;
351
+ }
352
+ catch (err) {
353
+ throw err;
354
+ }
355
+ },
272
356
  suggest: {
273
357
  /**
274
358
  * Fetches a list of suggested friends (People You May Know).
@@ -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":"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"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = default_1;
4
+ /**
5
+ * @ChoruOfficial
6
+ * @description A module for updating the Facebook profile bio (tiểu sử).
7
+ * Calls ProfileCometBioFieldSaveMutation via /api/graphql/.
8
+ * @param {Object} defaultFuncs The default functions provided by the API wrapper.
9
+ * @param {Object} api The full API object.
10
+ * @param {Object} ctx The context object containing the user's session state.
11
+ * @returns {Function} An async function that updates the account's bio.
12
+ */
13
+ function default_1(defaultFuncs, api, ctx) {
14
+ /**
15
+ * Updates the profile bio (tiểu sử) of the logged-in user.
16
+ * @async
17
+ * @param {string} bio The new bio text to set. Pass an empty string to clear the bio.
18
+ * @returns {Promise<Object>} A promise that resolves to the API response data on success.
19
+ * @throws {Error} If the API request fails.
20
+ *
21
+ * @example
22
+ * await api.changeBio('day la tieu su doi toi');
23
+ * await api.changeBio(''); // clear bio
24
+ */
25
+ return async function changeBio(bio) {
26
+ if (bio === undefined || bio === null) {
27
+ throw new Error('bio is required. Pass an empty string to clear it.');
28
+ }
29
+ // sectionToken = base64("app_section:<userID>:2327158227")
30
+ const sectionToken = Buffer.from(`app_section:${ctx.userID}:2327158227`).toString('base64');
31
+ const variables = {
32
+ collectionToken: 'UNKNOWN',
33
+ input: {
34
+ bio: bio,
35
+ profile_field_section_type: 'DIRECTORY_BIO',
36
+ actor_id: ctx.userID,
37
+ client_mutation_id: Math.floor(Math.random() * 10 + 1).toString(),
38
+ },
39
+ scale: 1,
40
+ sectionToken: sectionToken,
41
+ };
42
+ const form = {
43
+ av: ctx.userID,
44
+ __user: ctx.userID,
45
+ __a: '1',
46
+ fb_dtsg: ctx.fb_dtsg,
47
+ jazoest: ctx.jazoest,
48
+ lsd: ctx.lsd,
49
+ fb_api_caller_class: 'RelayModern',
50
+ fb_api_req_friendly_name: 'ProfileCometBioFieldSaveMutation',
51
+ variables: JSON.stringify(variables),
52
+ server_timestamps: 'true',
53
+ doc_id: '26787878704133086',
54
+ };
55
+ const res = await defaultFuncs.post('https://www.facebook.com/api/graphql/', ctx.jar, form, {});
56
+ if (res.data.errors)
57
+ throw new Error(JSON.stringify(res.data.errors));
58
+ return res.data.data;
59
+ };
60
+ }
61
+ //# sourceMappingURL=changeBio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changeBio.js","sourceRoot":"","sources":["../../../../src/deltas/apis/users/changeBio.ts"],"names":[],"mappings":";;AASA,4BA0DC;AAnED;;;;;;;;GAQG;AACH,mBAAyB,YAAiB,EAAE,GAAQ,EAAE,GAAQ;IAC5D;;;;;;;;;;OAUG;IACH,OAAO,KAAK,UAAU,SAAS,CAAC,GAAW;QACzC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,2DAA2D;QAC3D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAC9B,eAAe,GAAG,CAAC,MAAM,aAAa,CACvC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErB,MAAM,SAAS,GAAG;YAChB,eAAe,EAAE,SAAS;YAC1B,KAAK,EAAE;gBACL,GAAG,EAAE,GAAG;gBACR,0BAA0B,EAAE,eAAe;gBAC3C,QAAQ,EAAE,GAAG,CAAC,MAAM;gBACpB,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE;aAClE;YACD,KAAK,EAAE,CAAC;YACR,YAAY,EAAE,YAAY;SAC3B,CAAC;QAEF,MAAM,IAAI,GAAG;YACX,EAAE,EAAE,GAAG,CAAC,MAAM;YACd,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,GAAG,EAAE,GAAG;YACR,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,mBAAmB,EAAE,aAAa;YAClC,wBAAwB,EAAE,kCAAkC;YAC5D,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;YACpC,iBAAiB,EAAE,MAAM;YACzB,MAAM,EAAE,mBAAmB;SAC5B,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CACjC,uCAAuC,EACvC,GAAG,CAAC,GAAG,EACP,IAAI,EACJ,EAAE,CACH,CAAC;QAEF,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACtE,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;IACvB,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,285 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = getUserFriendsModule;
4
+ const utils = require("../../../utils");
5
+ /**
6
+ * @ChoruOfficial
7
+ * @description A module for fetching a user's friend list via Facebook's GraphQL API.
8
+ * First resolves the user's friends page to extract the dynamic collection ID,
9
+ * then calls ProfileCometAppCollectionNonSelfFriendsListRendererPaginationQuery via /api/graphql/.
10
+ * Supports cursor-based pagination without re-fetching HTML on subsequent pages.
11
+ * @param {Object} defaultFuncs The default functions provided by the API wrapper.
12
+ * @param {Object} api The full API object.
13
+ * @param {Object} ctx The context object containing the user's session state.
14
+ * @returns {Function} An async function that fetches a user's friend list.
15
+ */
16
+ function getUserFriendsModule(defaultFuncs, api, ctx) {
17
+ /**
18
+ * Deep-searches an object/array tree for the first value matching a predicate.
19
+ */
20
+ function deepFind(obj, predicate, visited = new WeakSet()) {
21
+ if (obj === null || obj === undefined)
22
+ return null;
23
+ if (typeof obj === 'object') {
24
+ if (visited.has(obj))
25
+ return null;
26
+ visited.add(obj);
27
+ }
28
+ if (typeof obj === 'object') {
29
+ for (const key in obj) {
30
+ if (!Object.prototype.hasOwnProperty.call(obj, key))
31
+ continue;
32
+ const val = obj[key];
33
+ if (predicate(val, key))
34
+ return val;
35
+ const found = deepFind(val, predicate, visited);
36
+ if (found !== null)
37
+ return found;
38
+ }
39
+ }
40
+ return null;
41
+ }
42
+ /**
43
+ * Deep-searches for all values matching a predicate and collects them.
44
+ */
45
+ function deepFindAll(obj, predicate, results = [], visited = new WeakSet()) {
46
+ if (obj === null || obj === undefined)
47
+ return results;
48
+ if (typeof obj === 'object') {
49
+ if (visited.has(obj))
50
+ return results;
51
+ visited.add(obj);
52
+ }
53
+ if (typeof obj === 'object') {
54
+ for (const key in obj) {
55
+ if (!Object.prototype.hasOwnProperty.call(obj, key))
56
+ continue;
57
+ const val = obj[key];
58
+ if (predicate(val, key))
59
+ results.push(val);
60
+ deepFindAll(val, predicate, results, visited);
61
+ }
62
+ }
63
+ return results;
64
+ }
65
+ /**
66
+ * Extracts the friends collection ID from the embedded JSON data on a user's friends page.
67
+ *
68
+ * The correct ID lives on the same node as `pageItems` (sibling), e.g.:
69
+ * { pageItems: { edges: [...], page_info: {...} }, id: "YXBwX2NvbGxlY3Rpb24..." }
70
+ * Decodes to `app_collection:...`.
71
+ */
72
+ function extractCollectionId(allJsonData) {
73
+ // Strategy 1 (most reliable): find a node that has BOTH `pageItems.page_info`
74
+ // and a sibling `id` field. This is exactly the shape Facebook returns for
75
+ // the friends collection renderer.
76
+ const pageItemsParent = deepFind(allJsonData, (val, _key) => val &&
77
+ typeof val === 'object' &&
78
+ val.pageItems &&
79
+ val.pageItems.page_info &&
80
+ typeof val.id === 'string' &&
81
+ val.id.length > 40);
82
+ if (pageItemsParent?.id) {
83
+ try {
84
+ const decoded = Buffer.from(pageItemsParent.id, 'base64').toString('utf-8');
85
+ if (decoded.startsWith('app_collection:')) {
86
+ return pageItemsParent.id;
87
+ }
88
+ }
89
+ catch {
90
+ /* not base64, fall through */
91
+ }
92
+ // Even if it doesn't decode to app_collection, it's still the
93
+ // best candidate because it sits next to pageItems.
94
+ return pageItemsParent.id;
95
+ }
96
+ // Strategy 2: all_collections → edges → node with tab_key "friends"
97
+ const allCollections = deepFindAll(allJsonData, (_val, key) => key === 'all_collections');
98
+ for (const collection of allCollections) {
99
+ const edges = collection?.edges;
100
+ if (!Array.isArray(edges))
101
+ continue;
102
+ for (const edge of edges) {
103
+ const node = edge?.node;
104
+ if (!node)
105
+ continue;
106
+ if (node.tab_key === 'friends') {
107
+ if (node.id)
108
+ return node.id;
109
+ }
110
+ }
111
+ }
112
+ // Strategy 3: any base64 id that decodes to "app_collection:..."
113
+ const candidates = deepFindAll(allJsonData, (val, key) => key === 'id' && typeof val === 'string' && val.length > 40);
114
+ for (const candidate of candidates) {
115
+ try {
116
+ const decoded = Buffer.from(candidate, 'base64').toString('utf-8');
117
+ if (decoded.startsWith('app_collection:')) {
118
+ return candidate;
119
+ }
120
+ }
121
+ catch {
122
+ // Not valid base64, skip
123
+ }
124
+ }
125
+ return null;
126
+ }
127
+ /**
128
+ * Maps a raw pageItems edge node to a FriendEntry.
129
+ */
130
+ function mapEdgeToFriend(edge) {
131
+ const item = edge.node;
132
+ const actionOwner = item?.actions_renderer?.action?.client_handler?.profile_action
133
+ ?.restrictable_profile_owner || {};
134
+ return {
135
+ id: item?.node?.id || actionOwner?.id || '',
136
+ name: item?.title?.text || '',
137
+ avatarUri: item?.image_v2?.uri || '',
138
+ profileUrl: item?.url || item?.node?.url || '',
139
+ mutualFriendsText: item?.subtitle_text?.text || '',
140
+ friendshipStatus: item?.actions_renderer?.action?.profile_owner?.friendship_status || '',
141
+ gender: actionOwner?.gender || '',
142
+ };
143
+ }
144
+ /**
145
+ * Extracts the initial friends list and page_info directly from the embedded
146
+ * HTML JSON data (the data Facebook ships with the first page load).
147
+ *
148
+ * The cursor pattern in the HTML:
149
+ * ],"page_info":{"end_cursor":"AQHS...","has_next_page":true}
150
+ */
151
+ function extractInitialFriendsData(allJsonData) {
152
+ const pageItemsNode = deepFind(allJsonData, (val, key) => key === 'pageItems' &&
153
+ val &&
154
+ typeof val === 'object' &&
155
+ Array.isArray(val.edges) &&
156
+ val.page_info);
157
+ if (!pageItemsNode)
158
+ return null;
159
+ const edges = pageItemsNode.edges || [];
160
+ const pageInfo = pageItemsNode.page_info || {};
161
+ return {
162
+ friends: edges.map(mapEdgeToFriend),
163
+ endCursor: pageInfo.end_cursor || null,
164
+ hasNextPage: pageInfo.has_next_page || false,
165
+ };
166
+ }
167
+ /**
168
+ * Builds the GraphQL POST form matching the proven working pattern
169
+ * used by changeBio, uploadAvatar, and other GraphQL APIs.
170
+ * `defaultFuncs.post()` auto-injects `__req`, `__rev`, `__a`,
171
+ * `fb_dtsg`, `jazoest`, so we only add the query-specific fields.
172
+ */
173
+ function buildGraphQLForm(variables, ctx) {
174
+ return {
175
+ av: ctx.userID,
176
+ __user: ctx.userID,
177
+ __a: '1',
178
+ fb_dtsg: ctx.fb_dtsg,
179
+ jazoest: ctx.jazoest,
180
+ lsd: ctx.lsd,
181
+ fb_api_caller_class: 'RelayModern',
182
+ fb_api_req_friendly_name: 'ProfileCometAppCollectionNonSelfFriendsListRendererPaginationQuery',
183
+ variables: JSON.stringify(variables),
184
+ server_timestamps: 'true',
185
+ doc_id: '34081659828149039',
186
+ };
187
+ }
188
+ /**
189
+ * Fetches the friend list of a given user with cursor-based pagination.
190
+ *
191
+ * @param {string} userID The Facebook user ID whose friends to fetch.
192
+ * @param {string|null} [cursor=null] Pagination cursor from the previous result's `endCursor`.
193
+ * Pass `null` (or omit) for the first page.
194
+ * @param {number} [count=8] Number of friends to fetch per page.
195
+ * @param {string} [collectionId] The collection ID from a previous result.
196
+ * Pass this to skip the HTML re-fetch on page 2 onward — avoids an extra network round-trip.
197
+ *
198
+ * @returns {Promise<FriendsResult>} Friends list, pagination info, and the `collectionId`
199
+ * to reuse on subsequent calls.
200
+ *
201
+ * @example
202
+ * // Page 1 — fetches HTML, reads friends + cursor from embedded data
203
+ * const page1 = await api.getUserFriends('100005706074199');
204
+ * console.log(page1.friends); // Array of FriendEntry
205
+ * console.log(page1.endCursor); // cursor string for next page
206
+ * console.log(page1.collectionId); // reuse this to skip HTML fetch on page 2+
207
+ *
208
+ * // Page 2+ — pass cursor AND collectionId to skip the HTML round-trip
209
+ * const page2 = await api.getUserFriends(
210
+ * '100005706074199',
211
+ * page1.endCursor,
212
+ * 8,
213
+ * page1.collectionId,
214
+ * );
215
+ */
216
+ return async function getUserFriends(userID, cursor = null, collectionId, count = 8) {
217
+ if (!userID) {
218
+ throw new Error('userID is required.');
219
+ }
220
+ let resolvedCollectionId = collectionId || null;
221
+ // Step 1: Fetch the friends page HTML only when we don't have a collectionId.
222
+ // On page 2+ the caller should pass collectionId from the previous result
223
+ // to skip this round-trip (mirroring real browser behaviour).
224
+ if (!resolvedCollectionId) {
225
+ const friendsPageUrl = `https://www.facebook.com/profile.php?id=${userID}&sk=friends`;
226
+ const allJsonData = await utils.json(friendsPageUrl, ctx.jar, null, ctx.globalOptions, ctx);
227
+ if (!allJsonData || allJsonData.length === 0) {
228
+ throw new Error(`Could not fetch friends page data for user ${userID}.`);
229
+ }
230
+ resolvedCollectionId = extractCollectionId(allJsonData);
231
+ if (!resolvedCollectionId) {
232
+ throw new Error(`Could not extract friends collection ID for user ${userID}. ` +
233
+ `The user may have their friends list set to private.`);
234
+ }
235
+ // First page: try to read friends + page_info directly from the HTML data.
236
+ // The HTML ships with the initial batch and the cursor for the next page,
237
+ // matching: ],"page_info":{"end_cursor":"AQHS...","has_next_page":true}
238
+ if (cursor === null) {
239
+ const initialData = extractInitialFriendsData(allJsonData);
240
+ if (initialData) {
241
+ return { ...initialData, collectionId: resolvedCollectionId };
242
+ }
243
+ // Fallthrough: HTML extraction failed — use GraphQL with null cursor
244
+ }
245
+ }
246
+ // Step 2: GraphQL pagination request (page 2+ or first-page fallback).
247
+ // Variables match the real browser request exactly.
248
+ const variables = {
249
+ count,
250
+ cursor,
251
+ scale: 1,
252
+ search: null,
253
+ id: resolvedCollectionId,
254
+ __relay_internal__pv__FBProfile_enable_perf_improv_gkrelayprovider: true,
255
+ };
256
+ const form = buildGraphQLForm(variables, ctx);
257
+ const res = await utils.post('https://www.facebook.com/api/graphql/', ctx.jar, form, ctx.globalOptions, ctx);
258
+ let data;
259
+ if (typeof res.body === 'object' && res.body !== null) {
260
+ data = res.body;
261
+ }
262
+ else {
263
+ const body = typeof res.body === 'string' ? res.body : String(res.body);
264
+ try {
265
+ data = JSON.parse(body);
266
+ }
267
+ catch {
268
+ const lines = body.split('\n').filter(Boolean);
269
+ data = JSON.parse(lines[0]);
270
+ }
271
+ }
272
+ if (data.errors)
273
+ throw new Error(JSON.stringify(data.errors));
274
+ const pageItems = data?.data?.node?.pageItems;
275
+ const edges = pageItems?.edges || [];
276
+ const pageInfo = pageItems?.page_info || {};
277
+ return {
278
+ friends: edges.map(mapEdgeToFriend),
279
+ endCursor: pageInfo.end_cursor || null,
280
+ hasNextPage: pageInfo.has_next_page || false,
281
+ collectionId: resolvedCollectionId,
282
+ };
283
+ };
284
+ }
285
+ //# sourceMappingURL=getUserFriends.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserFriends.js","sourceRoot":"","sources":["../../../../src/deltas/apis/users/getUserFriends.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = default_1;
4
+ const utils = require("../../../utils");
5
+ /**
6
+ * @ChoruOfficial
7
+ * @description A module for searching cities via Facebook's Directory Typeahead API.
8
+ * Calls useProfileCometDirectoryTypeaheadDataSourceQuery via /api/graphql/.
9
+ * @param {Object} defaultFuncs The default functions provided by the API wrapper.
10
+ * @param {Object} api The full API object.
11
+ * @param {Object} ctx The context object containing the user's session state.
12
+ * @returns {Function} An async function that searches for cities by name.
13
+ */
14
+ function default_1(defaultFuncs, api, ctx) {
15
+ /**
16
+ * Searches for cities matching the given query string.
17
+ * Uses Facebook's Directory Typeahead data source to find city results.
18
+ * @async
19
+ * @param {string} query The search query (city name or partial name).
20
+ * @param {string} [searchCategory='CURRENT_CITY'] The category to search.
21
+ * Supported values: 'CURRENT_CITY', 'HOMETOWN', etc.
22
+ * @returns {Promise<Array<Object>>} A promise that resolves to an array of city objects.
23
+ * @throws {Error} If the query is missing or the API request fails.
24
+ *
25
+ * @example
26
+ * const cities = await api.searchCity('vinh');
27
+ * const hometowns = await api.searchCity('ha noi', 'HOMETOWN');
28
+ */
29
+ return async function searchCity(query, searchCategory = 'CURRENT_CITY') {
30
+ if (!query) {
31
+ throw new Error('query is required.');
32
+ }
33
+ const variables = {
34
+ search_category: searchCategory,
35
+ query: query,
36
+ };
37
+ const form = {
38
+ av: ctx.userID,
39
+ __user: ctx.userID,
40
+ __a: '1',
41
+ fb_dtsg: ctx.fb_dtsg,
42
+ jazoest: ctx.jazoest,
43
+ lsd: ctx.lsd,
44
+ fb_api_caller_class: 'RelayModern',
45
+ fb_api_req_friendly_name: 'useProfileCometDirectoryTypeaheadDataSourceQuery',
46
+ variables: JSON.stringify(variables),
47
+ server_timestamps: 'true',
48
+ doc_id: '24825162803742896',
49
+ };
50
+ const customHeader = {
51
+ 'x-fb-friendly-name': 'useProfileCometDirectoryTypeaheadDataSourceQuery',
52
+ 'x-fb-lsd': ctx.lsd,
53
+ 'x-asbd-id': '359341',
54
+ origin: 'https://www.facebook.com',
55
+ referer: `https://www.facebook.com/profile.php?id=${ctx.userID}&sk=directory_personal_details`,
56
+ };
57
+ const resData = await utils.post('https://www.facebook.com/api/graphql/', ctx.jar, form, ctx.globalOptions, ctx, customHeader);
58
+ // resData.body may already be a parsed object (axios auto-parses JSON)
59
+ // or it may be a string/Buffer — handle both cases
60
+ let data;
61
+ if (typeof resData.body === 'object' && resData.body !== null && !Buffer.isBuffer(resData.body)) {
62
+ data = resData.body;
63
+ }
64
+ else {
65
+ const body = typeof resData.body === 'string' ? resData.body : resData.body.toString();
66
+ try {
67
+ data = JSON.parse(body);
68
+ }
69
+ catch {
70
+ // Facebook sometimes returns multiple JSON lines
71
+ const lines = body.split('\n').filter(Boolean);
72
+ data = JSON.parse(lines[0]);
73
+ }
74
+ }
75
+ if (data.errors)
76
+ throw new Error(JSON.stringify(data.errors));
77
+ // Extract city suggestions from: data.viewer.profile_directory_typeahead_suggestions
78
+ const suggestions = data?.data?.viewer?.profile_directory_typeahead_suggestions || [];
79
+ return suggestions
80
+ .filter((item) => item.fbid !== '-1')
81
+ .map((item) => ({
82
+ fbid: item.fbid,
83
+ title: item.title,
84
+ value: item.value,
85
+ photoUri: item.photo_uri,
86
+ subtitle: item.subtitle,
87
+ secondSubtitle: item.second_subtitle,
88
+ }));
89
+ };
90
+ }
91
+ //# sourceMappingURL=searchCity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchCity.js","sourceRoot":"","sources":["../../../../src/deltas/apis/users/searchCity.ts"],"names":[],"mappings":"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"}