@the-convocation/twitter-scraper 0.1.5 → 0.2.0

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/dist/search.js CHANGED
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.fetchSearchProfiles = exports.fetchSearchTweets = exports.searchProfiles = exports.searchTweets = exports.SearchMode = void 0;
13
4
  const api_1 = require("./api");
@@ -36,61 +27,55 @@ function searchProfiles(query, maxProfiles, auth) {
36
27
  });
37
28
  }
38
29
  exports.searchProfiles = searchProfiles;
39
- function fetchSearchTweets(query, maxTweets, includeReplies, searchMode, auth, cursor) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- const timeline = yield getSearchTimeline(query, maxTweets, includeReplies, searchMode, auth, cursor);
42
- return (0, timeline_1.parseTweets)(timeline);
43
- });
30
+ async function fetchSearchTweets(query, maxTweets, includeReplies, searchMode, auth, cursor) {
31
+ const timeline = await getSearchTimeline(query, maxTweets, includeReplies, searchMode, auth, cursor);
32
+ return (0, timeline_1.parseTweets)(timeline);
44
33
  }
45
34
  exports.fetchSearchTweets = fetchSearchTweets;
46
- function fetchSearchProfiles(query, maxProfiles, auth, cursor) {
47
- return __awaiter(this, void 0, void 0, function* () {
48
- const timeline = yield getSearchTimeline(query, maxProfiles, false, SearchMode.Users, auth, cursor);
49
- return (0, timeline_1.parseUsers)(timeline);
50
- });
35
+ async function fetchSearchProfiles(query, maxProfiles, auth, cursor) {
36
+ const timeline = await getSearchTimeline(query, maxProfiles, false, SearchMode.Users, auth, cursor);
37
+ return (0, timeline_1.parseUsers)(timeline);
51
38
  }
52
39
  exports.fetchSearchProfiles = fetchSearchProfiles;
53
- function getSearchTimeline(query, maxItems, includeReplies, searchMode, auth, cursor) {
54
- return __awaiter(this, void 0, void 0, function* () {
55
- if (!auth.isLoggedIn()) {
56
- throw new Error('Scraper is not logged-in for search.');
57
- }
58
- if (maxItems > 50) {
59
- maxItems = 50;
60
- }
61
- const params = new URLSearchParams();
62
- (0, api_1.addApiParams)(params, includeReplies);
63
- params.set('q', query);
64
- params.set('count', `${maxItems}`);
65
- params.set('query_source', 'typed_query');
66
- params.set('pc', '1');
67
- params.set('requestContext', 'launch');
68
- params.set('spelling_corrections', '1');
69
- params.set('include_ext_edit_control', 'true');
70
- if (cursor != null && cursor != '') {
71
- params.set('cursor', cursor);
72
- }
73
- switch (searchMode) {
74
- case SearchMode.Latest:
75
- params.set('tweet_search_mode', 'live');
76
- break;
77
- case SearchMode.Photos:
78
- params.set('result_filter', 'image');
79
- break;
80
- case SearchMode.Videos:
81
- params.set('result_filter', 'video');
82
- break;
83
- case SearchMode.Users:
84
- params.set('result_filter', 'user');
85
- break;
86
- default:
87
- break;
88
- }
89
- const res = yield (0, api_1.requestApi)(`https://twitter.com/i/api/2/search/adaptive.json?${params.toString()}`, auth);
90
- if (!res.success) {
91
- throw res.err;
92
- }
93
- return res.value;
94
- });
40
+ async function getSearchTimeline(query, maxItems, includeReplies, searchMode, auth, cursor) {
41
+ if (!auth.isLoggedIn()) {
42
+ throw new Error('Scraper is not logged-in for search.');
43
+ }
44
+ if (maxItems > 50) {
45
+ maxItems = 50;
46
+ }
47
+ const params = new URLSearchParams();
48
+ (0, api_1.addApiParams)(params, includeReplies);
49
+ params.set('q', query);
50
+ params.set('count', `${maxItems}`);
51
+ params.set('query_source', 'typed_query');
52
+ params.set('pc', '1');
53
+ params.set('requestContext', 'launch');
54
+ params.set('spelling_corrections', '1');
55
+ params.set('include_ext_edit_control', 'true');
56
+ if (cursor != null && cursor != '') {
57
+ params.set('cursor', cursor);
58
+ }
59
+ switch (searchMode) {
60
+ case SearchMode.Latest:
61
+ params.set('tweet_search_mode', 'live');
62
+ break;
63
+ case SearchMode.Photos:
64
+ params.set('result_filter', 'image');
65
+ break;
66
+ case SearchMode.Videos:
67
+ params.set('result_filter', 'video');
68
+ break;
69
+ case SearchMode.Users:
70
+ params.set('result_filter', 'user');
71
+ break;
72
+ default:
73
+ break;
74
+ }
75
+ const res = await (0, api_1.requestApi)(`https://twitter.com/i/api/2/search/adaptive.json?${params.toString()}`, auth);
76
+ if (!res.success) {
77
+ throw res.err;
78
+ }
79
+ return res.value;
95
80
  }
96
81
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":";;;AAAA,+BAAiD;AAGjD,yCAMoB;AACpB,qDAAqE;AAGrE;;GAEG;AACH,IAAY,UAMX;AAND,WAAY,UAAU;IACpB,yCAAG,CAAA;IACH,+CAAM,CAAA;IACN,+CAAM,CAAA;IACN,+CAAM,CAAA;IACN,6CAAK,CAAA;AACP,CAAC,EANW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAMrB;AAED,SAAgB,YAAY,CAC1B,KAAa,EACb,SAAiB,EACjB,cAAuB,EACvB,UAAsB,EACtB,IAAiB;IAEjB,OAAO,IAAA,iCAAgB,EAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QACrD,OAAO,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC;AAVD,oCAUC;AAED,SAAgB,cAAc,CAC5B,KAAa,EACb,WAAmB,EACnB,IAAiB;IAEjB,OAAO,IAAA,gCAAe,EAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QACtD,OAAO,mBAAmB,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC;AARD,wCAQC;AAEM,KAAK,UAAU,iBAAiB,CACrC,KAAa,EACb,SAAiB,EACjB,cAAuB,EACvB,UAAsB,EACtB,IAAiB,EACjB,MAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,KAAK,EACL,SAAS,EACT,cAAc,EACd,UAAU,EACV,IAAI,EACJ,MAAM,CACP,CAAC;IAEF,OAAO,IAAA,sBAAW,EAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAlBD,8CAkBC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAa,EACb,WAAmB,EACnB,IAAiB,EACjB,MAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CACtC,KAAK,EACL,WAAW,EACX,KAAK,EACL,UAAU,CAAC,KAAK,EAChB,IAAI,EACJ,MAAM,CACP,CAAC;IAEF,OAAO,IAAA,qBAAU,EAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAhBD,kDAgBC;AAED,KAAK,UAAU,iBAAiB,CAC9B,KAAa,EACb,QAAgB,EAChB,cAAuB,EACvB,UAAsB,EACtB,IAAiB,EACjB,MAAe;IAEf,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;KACzD;IAED,IAAI,QAAQ,GAAG,EAAE,EAAE;QACjB,QAAQ,GAAG,EAAE,CAAC;KACf;IAED,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAA,kBAAY,EAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAErC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACvB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACtB,MAAM,CAAC,GAAG,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IACvC,MAAM,CAAC,GAAG,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;IAC/C,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,EAAE;QAClC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;KAC9B;IAED,QAAQ,UAAU,EAAE;QAClB,KAAK,UAAU,CAAC,MAAM;YACpB,MAAM,CAAC,GAAG,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;YACxC,MAAM;QACR,KAAK,UAAU,CAAC,MAAM;YACpB,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,UAAU,CAAC,MAAM;YACpB,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrC,MAAM;QACR,KAAK,UAAU,CAAC,KAAK;YACnB,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YACpC,MAAM;QACR;YACE,MAAM;KACT;IAED,MAAM,GAAG,GAAG,MAAM,IAAA,gBAAU,EAC1B,oDAAoD,MAAM,CAAC,QAAQ,EAAE,EAAE,EACvE,IAAI,CACL,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;QAChB,MAAM,GAAG,CAAC,GAAG,CAAC;KACf;IAED,OAAO,GAAG,CAAC,KAAK,CAAC;AACnB,CAAC"}
@@ -1,64 +1,48 @@
1
1
  "use strict";
2
- var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
3
- var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
4
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
5
- var g = generator.apply(thisArg, _arguments || []), i, q = [];
6
- return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
7
- function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
8
- function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
9
- function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
10
- function fulfill(value) { resume("next", value); }
11
- function reject(value) { resume("throw", value); }
12
- function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
13
- };
14
2
  Object.defineProperty(exports, "__esModule", { value: true });
15
3
  exports.getTweetTimeline = exports.getUserTimeline = void 0;
16
- function getUserTimeline(query, maxProfiles, fetchFunc) {
17
- return __asyncGenerator(this, arguments, function* getUserTimeline_1() {
18
- let nProfiles = 0;
19
- let cursor = undefined;
20
- while (nProfiles < maxProfiles) {
21
- const batch = yield __await(fetchFunc(query, maxProfiles, cursor));
22
- const { profiles, next } = batch;
23
- if (profiles.length === 0) {
24
- break;
4
+ async function* getUserTimeline(query, maxProfiles, fetchFunc) {
5
+ let nProfiles = 0;
6
+ let cursor = undefined;
7
+ while (nProfiles < maxProfiles) {
8
+ const batch = await fetchFunc(query, maxProfiles, cursor);
9
+ const { profiles, next } = batch;
10
+ if (profiles.length === 0) {
11
+ break;
12
+ }
13
+ for (const profile of profiles) {
14
+ if (nProfiles < maxProfiles) {
15
+ cursor = next;
16
+ yield profile;
25
17
  }
26
- for (const profile of profiles) {
27
- if (nProfiles < maxProfiles) {
28
- cursor = next;
29
- yield yield __await(profile);
30
- }
31
- else {
32
- break;
33
- }
34
- nProfiles++;
18
+ else {
19
+ break;
35
20
  }
21
+ nProfiles++;
36
22
  }
37
- });
23
+ }
38
24
  }
39
25
  exports.getUserTimeline = getUserTimeline;
40
- function getTweetTimeline(query, maxTweets, fetchFunc) {
41
- return __asyncGenerator(this, arguments, function* getTweetTimeline_1() {
42
- let nTweets = 0;
43
- let cursor = undefined;
44
- while (nTweets < maxTweets) {
45
- const batch = yield __await(fetchFunc(query, maxTweets, cursor));
46
- const { tweets, next } = batch;
47
- if (tweets.length === 0) {
48
- break;
26
+ async function* getTweetTimeline(query, maxTweets, fetchFunc) {
27
+ let nTweets = 0;
28
+ let cursor = undefined;
29
+ while (nTweets < maxTweets) {
30
+ const batch = await fetchFunc(query, maxTweets, cursor);
31
+ const { tweets, next } = batch;
32
+ if (tweets.length === 0) {
33
+ break;
34
+ }
35
+ for (const tweet of tweets) {
36
+ if (nTweets < maxTweets) {
37
+ cursor = next;
38
+ yield tweet;
49
39
  }
50
- for (const tweet of tweets) {
51
- if (nTweets < maxTweets) {
52
- cursor = next;
53
- yield yield __await(tweet);
54
- }
55
- else {
56
- break;
57
- }
58
- nTweets++;
40
+ else {
41
+ break;
59
42
  }
43
+ nTweets++;
60
44
  }
61
- });
45
+ }
62
46
  }
63
47
  exports.getTweetTimeline = getTweetTimeline;
64
48
  //# sourceMappingURL=timeline-async.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"timeline-async.js","sourceRoot":"","sources":["../src/timeline-async.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAyBA,SAAuB,eAAe,CACpC,KAAa,EACb,WAAmB,EACnB,SAAwB;;QAExB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,MAAM,GAAuB,SAAS,CAAC;QAC3C,OAAO,SAAS,GAAG,WAAW,EAAE;YAC9B,MAAM,KAAK,GAA0B,cAAM,SAAS,CAClD,KAAK,EACL,WAAW,EACX,MAAM,CACP,CAAA,CAAC;YAEF,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;YAEjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,MAAM;aACP;YAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,IAAI,SAAS,GAAG,WAAW,EAAE;oBAC3B,MAAM,GAAG,IAAI,CAAC;oBACd,oBAAM,OAAO,CAAA,CAAC;iBACf;qBAAM;oBACL,MAAM;iBACP;gBAED,SAAS,EAAE,CAAC;aACb;SACF;IACH,CAAC;CAAA;AA/BD,0CA+BC;AAED,SAAuB,gBAAgB,CACrC,KAAa,EACb,SAAiB,EACjB,SAAsB;;QAEtB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,MAAM,GAAuB,SAAS,CAAC;QAC3C,OAAO,OAAO,GAAG,SAAS,EAAE;YAC1B,MAAM,KAAK,GAAwB,cAAM,SAAS,CAChD,KAAK,EACL,SAAS,EACT,MAAM,CACP,CAAA,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;YAE/B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBACvB,MAAM;aACP;YAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;gBAC1B,IAAI,OAAO,GAAG,SAAS,EAAE;oBACvB,MAAM,GAAG,IAAI,CAAC;oBACd,oBAAM,KAAK,CAAA,CAAC;iBACb;qBAAM;oBACL,MAAM;iBACP;gBAED,OAAO,EAAE,CAAC;aACX;SACF;IACH,CAAC;CAAA;AA/BD,4CA+BC"}
1
+ {"version":3,"file":"timeline-async.js","sourceRoot":"","sources":["../src/timeline-async.ts"],"names":[],"mappings":";;;AAyBO,KAAK,SAAS,CAAC,CAAC,eAAe,CACpC,KAAa,EACb,WAAmB,EACnB,SAAwB;IAExB,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,MAAM,GAAuB,SAAS,CAAC;IAC3C,OAAO,SAAS,GAAG,WAAW,EAAE;QAC9B,MAAM,KAAK,GAA0B,MAAM,SAAS,CAClD,KAAK,EACL,WAAW,EACX,MAAM,CACP,CAAC;QAEF,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QAEjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,MAAM;SACP;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,IAAI,SAAS,GAAG,WAAW,EAAE;gBAC3B,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM,OAAO,CAAC;aACf;iBAAM;gBACL,MAAM;aACP;YAED,SAAS,EAAE,CAAC;SACb;KACF;AACH,CAAC;AA/BD,0CA+BC;AAEM,KAAK,SAAS,CAAC,CAAC,gBAAgB,CACrC,KAAa,EACb,SAAiB,EACjB,SAAsB;IAEtB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,MAAM,GAAuB,SAAS,CAAC;IAC3C,OAAO,OAAO,GAAG,SAAS,EAAE;QAC1B,MAAM,KAAK,GAAwB,MAAM,SAAS,CAChD,KAAK,EACL,SAAS,EACT,MAAM,CACP,CAAC;QAEF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;QAE/B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,MAAM;SACP;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,IAAI,OAAO,GAAG,SAAS,EAAE;gBACvB,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM,KAAK,CAAC;aACb;iBAAM;gBACL,MAAM;aACP;YAED,OAAO,EAAE,CAAC;SACX;KACF;AACH,CAAC;AA/BD,4CA+BC"}
package/dist/timeline.js CHANGED
@@ -14,28 +14,27 @@ function isDefined(value) {
14
14
  return value != null;
15
15
  }
16
16
  function parseTweet(timeline, id) {
17
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
18
- const tweets = (_b = (_a = timeline.globalObjects) === null || _a === void 0 ? void 0 : _a.tweets) !== null && _b !== void 0 ? _b : {};
17
+ const tweets = timeline.globalObjects?.tweets ?? {};
19
18
  const tweet = tweets[id];
20
- if ((tweet === null || tweet === void 0 ? void 0 : tweet.user_id_str) == null) {
19
+ if (tweet?.user_id_str == null) {
21
20
  return {
22
21
  success: false,
23
22
  err: new Error(`Tweet "${id}" was not found in the timeline object.`),
24
23
  };
25
24
  }
26
- const users = (_d = (_c = timeline.globalObjects) === null || _c === void 0 ? void 0 : _c.users) !== null && _d !== void 0 ? _d : {};
25
+ const users = timeline.globalObjects?.users ?? {};
27
26
  const user = users[tweet.user_id_str];
28
- if ((user === null || user === void 0 ? void 0 : user.screen_name) == null) {
27
+ if (user?.screen_name == null) {
29
28
  return {
30
29
  success: false,
31
30
  err: new Error(`User "${tweet.user_id_str}" has no username data.`),
32
31
  };
33
32
  }
34
- const hashtags = (_f = (_e = tweet.entities) === null || _e === void 0 ? void 0 : _e.hashtags) !== null && _f !== void 0 ? _f : [];
35
- const mentions = (_h = (_g = tweet.entities) === null || _g === void 0 ? void 0 : _g.user_mentions) !== null && _h !== void 0 ? _h : [];
36
- const media = (_k = (_j = tweet.extended_entities) === null || _j === void 0 ? void 0 : _j.media) !== null && _k !== void 0 ? _k : [];
37
- const pinnedTweets = new Set((_l = user.pinned_tweet_ids_str) !== null && _l !== void 0 ? _l : []);
38
- const urls = (_o = (_m = tweet.entities) === null || _m === void 0 ? void 0 : _m.urls) !== null && _o !== void 0 ? _o : [];
33
+ const hashtags = tweet.entities?.hashtags ?? [];
34
+ const mentions = tweet.entities?.user_mentions ?? [];
35
+ const media = tweet.extended_entities?.media ?? [];
36
+ const pinnedTweets = new Set(user.pinned_tweet_ids_str ?? []);
37
+ const urls = tweet.entities?.urls ?? [];
39
38
  const { photos, videos, sensitiveContent } = parseMediaGroups(media);
40
39
  const tw = {
41
40
  id,
@@ -65,7 +64,7 @@ function parseTweet(timeline, id) {
65
64
  tw.timeParsed = new Date(Date.parse(tweet.created_at));
66
65
  tw.timestamp = Math.floor(tw.timeParsed.valueOf() / 1000);
67
66
  }
68
- if (((_p = tweet.place) === null || _p === void 0 ? void 0 : _p.id) != null) {
67
+ if (tweet.place?.id != null) {
69
68
  tw.place = tweet.place;
70
69
  }
71
70
  if (tweet.quoted_status_id_str != null) {
@@ -89,7 +88,7 @@ function parseTweet(timeline, id) {
89
88
  tw.retweetedStatus = retweetedStatusResult.tweet;
90
89
  }
91
90
  }
92
- const views = parseInt((_r = (_q = tweet.ext_views) === null || _q === void 0 ? void 0 : _q.count) !== null && _r !== void 0 ? _r : '');
91
+ const views = parseInt(tweet.ext_views?.count ?? '');
93
92
  if (!isNaN(views)) {
94
93
  tw.views = views;
95
94
  }
@@ -102,7 +101,7 @@ function parseTweet(timeline, id) {
102
101
  tw.sensitiveContent = true;
103
102
  }
104
103
  // HTML parsing with regex :)
105
- let html = (_s = tweet.full_text) !== null && _s !== void 0 ? _s : '';
104
+ let html = tweet.full_text ?? '';
106
105
  const foundedMedia = [];
107
106
  html = html.replace(reHashtag, linkHashtagHtml);
108
107
  html = html.replace(reUsername, linkUsernameHtml);
@@ -151,13 +150,12 @@ function parseMediaGroups(media) {
151
150
  return { sensitiveContent, photos, videos };
152
151
  }
153
152
  function parseVideo(m) {
154
- var _a, _b;
155
153
  const video = {
156
154
  id: m.id_str,
157
155
  preview: m.media_url_https,
158
156
  };
159
157
  let maxBitrate = 0;
160
- const variants = (_b = (_a = m.video_info) === null || _a === void 0 ? void 0 : _a.variants) !== null && _b !== void 0 ? _b : [];
158
+ const variants = m.video_info?.variants ?? [];
161
159
  for (const variant of variants) {
162
160
  const bitrate = variant.bitrate;
163
161
  if (bitrate != null && bitrate > maxBitrate && variant.url != null) {
@@ -181,13 +179,12 @@ function linkUsernameHtml(username) {
181
179
  }
182
180
  function unwrapTcoUrlHtml(tweet, foundedMedia) {
183
181
  return function (tco) {
184
- var _a, _b, _c, _d;
185
- for (const entity of (_b = (_a = tweet.entities) === null || _a === void 0 ? void 0 : _a.urls) !== null && _b !== void 0 ? _b : []) {
182
+ for (const entity of tweet.entities?.urls ?? []) {
186
183
  if (tco === entity.url && entity.expanded_url != null) {
187
184
  return `<a href="${entity.expanded_url}">${tco}</a>`;
188
185
  }
189
186
  }
190
- for (const entity of (_d = (_c = tweet.extended_entities) === null || _c === void 0 ? void 0 : _c.media) !== null && _d !== void 0 ? _d : []) {
187
+ for (const entity of tweet.extended_entities?.media ?? []) {
191
188
  if (tco === entity.url && entity.media_url_https != null) {
192
189
  foundedMedia.push(entity.media_url_https);
193
190
  return `<br><a href="${tco}"><img src="${entity.media_url_https}"/></a>`;
@@ -197,14 +194,13 @@ function unwrapTcoUrlHtml(tweet, foundedMedia) {
197
194
  };
198
195
  }
199
196
  function parseTweets(timeline) {
200
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
201
197
  let cursor;
202
198
  let pinnedTweet;
203
199
  let orderedTweets = [];
204
- for (const instruction of (_b = (_a = timeline.timeline) === null || _a === void 0 ? void 0 : _a.instructions) !== null && _b !== void 0 ? _b : []) {
200
+ for (const instruction of timeline.timeline?.instructions ?? []) {
205
201
  const { pinEntry, addEntries, replaceEntry } = instruction;
206
202
  // Handle pin instruction
207
- const pinnedTweetId = (_g = (_f = (_e = (_d = (_c = pinEntry === null || pinEntry === void 0 ? void 0 : pinEntry.entry) === null || _c === void 0 ? void 0 : _c.content) === null || _d === void 0 ? void 0 : _d.item) === null || _e === void 0 ? void 0 : _e.content) === null || _f === void 0 ? void 0 : _f.tweet) === null || _g === void 0 ? void 0 : _g.id;
203
+ const pinnedTweetId = pinEntry?.entry?.content?.item?.content?.tweet?.id;
208
204
  if (pinnedTweetId != null) {
209
205
  const tweetResult = parseTweet(timeline, pinnedTweetId);
210
206
  if (tweetResult.success) {
@@ -212,22 +208,22 @@ function parseTweets(timeline) {
212
208
  }
213
209
  }
214
210
  // Handle add instructions
215
- for (const { content } of (_h = addEntries === null || addEntries === void 0 ? void 0 : addEntries.entries) !== null && _h !== void 0 ? _h : []) {
216
- const tweetId = (_l = (_k = (_j = content === null || content === void 0 ? void 0 : content.item) === null || _j === void 0 ? void 0 : _j.content) === null || _k === void 0 ? void 0 : _k.tweet) === null || _l === void 0 ? void 0 : _l.id;
211
+ for (const { content } of addEntries?.entries ?? []) {
212
+ const tweetId = content?.item?.content?.tweet?.id;
217
213
  if (tweetId != null) {
218
214
  const tweetResult = parseTweet(timeline, tweetId);
219
215
  if (tweetResult.success) {
220
216
  orderedTweets.push(tweetResult.tweet);
221
217
  }
222
218
  }
223
- const operation = content === null || content === void 0 ? void 0 : content.operation;
224
- if (((_m = operation === null || operation === void 0 ? void 0 : operation.cursor) === null || _m === void 0 ? void 0 : _m.cursorType) === 'Bottom') {
225
- cursor = (_o = operation === null || operation === void 0 ? void 0 : operation.cursor) === null || _o === void 0 ? void 0 : _o.value;
219
+ const operation = content?.operation;
220
+ if (operation?.cursor?.cursorType === 'Bottom') {
221
+ cursor = operation?.cursor?.value;
226
222
  }
227
223
  }
228
224
  // Handle replace instruction
229
- const operation = (_q = (_p = replaceEntry === null || replaceEntry === void 0 ? void 0 : replaceEntry.entry) === null || _p === void 0 ? void 0 : _p.content) === null || _q === void 0 ? void 0 : _q.operation;
230
- if (((_r = operation === null || operation === void 0 ? void 0 : operation.cursor) === null || _r === void 0 ? void 0 : _r.cursorType) === 'Bottom') {
225
+ const operation = replaceEntry?.entry?.content?.operation;
226
+ if (operation?.cursor?.cursorType === 'Bottom') {
231
227
  cursor = operation.cursor.value;
232
228
  }
233
229
  }
@@ -241,9 +237,8 @@ function parseTweets(timeline) {
241
237
  }
242
238
  exports.parseTweets = parseTweets;
243
239
  function parseUsers(timeline) {
244
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
245
240
  const users = new Map();
246
- const userObjects = (_b = (_a = timeline.globalObjects) === null || _a === void 0 ? void 0 : _a.users) !== null && _b !== void 0 ? _b : {};
241
+ const userObjects = timeline.globalObjects?.users ?? {};
247
242
  for (const id in userObjects) {
248
243
  const legacy = userObjects[id];
249
244
  if (legacy == null) {
@@ -254,20 +249,20 @@ function parseUsers(timeline) {
254
249
  }
255
250
  let cursor;
256
251
  const orderedProfiles = [];
257
- for (const instruction of (_d = (_c = timeline.timeline) === null || _c === void 0 ? void 0 : _c.instructions) !== null && _d !== void 0 ? _d : []) {
258
- for (const entry of (_f = (_e = instruction.addEntries) === null || _e === void 0 ? void 0 : _e.entries) !== null && _f !== void 0 ? _f : []) {
259
- const userId = (_k = (_j = (_h = (_g = entry.content) === null || _g === void 0 ? void 0 : _g.item) === null || _h === void 0 ? void 0 : _h.content) === null || _j === void 0 ? void 0 : _j.user) === null || _k === void 0 ? void 0 : _k.id;
252
+ for (const instruction of timeline.timeline?.instructions ?? []) {
253
+ for (const entry of instruction.addEntries?.entries ?? []) {
254
+ const userId = entry.content?.item?.content?.user?.id;
260
255
  const profile = users.get(userId);
261
256
  if (profile != null) {
262
257
  orderedProfiles.push(profile);
263
258
  }
264
- const operation = (_l = entry.content) === null || _l === void 0 ? void 0 : _l.operation;
265
- if (((_m = operation === null || operation === void 0 ? void 0 : operation.cursor) === null || _m === void 0 ? void 0 : _m.cursorType) === 'Bottom') {
266
- cursor = (_o = operation === null || operation === void 0 ? void 0 : operation.cursor) === null || _o === void 0 ? void 0 : _o.value;
259
+ const operation = entry.content?.operation;
260
+ if (operation?.cursor?.cursorType === 'Bottom') {
261
+ cursor = operation?.cursor?.value;
267
262
  }
268
263
  }
269
- const operation = (_r = (_q = (_p = instruction.replaceEntry) === null || _p === void 0 ? void 0 : _p.entry) === null || _q === void 0 ? void 0 : _q.content) === null || _r === void 0 ? void 0 : _r.operation;
270
- if (((_s = operation === null || operation === void 0 ? void 0 : operation.cursor) === null || _s === void 0 ? void 0 : _s.cursorType) === 'Bottom') {
264
+ const operation = instruction.replaceEntry?.entry?.content?.operation;
265
+ if (operation?.cursor?.cursorType === 'Bottom') {
271
266
  cursor = operation.cursor.value;
272
267
  }
273
268
  }
@@ -1 +1 @@
1
- {"version":3,"file":"timeline.js","sourceRoot":"","sources":["../src/timeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"timeline.js","sourceRoot":"","sources":["../src/timeline.ts"],"names":[],"mappings":"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"}
package/dist/trends.js CHANGED
@@ -1,50 +1,39 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.getTrends = void 0;
13
4
  const api_1 = require("./api");
14
- function getTrends(auth) {
15
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
16
- return __awaiter(this, void 0, void 0, function* () {
17
- const params = new URLSearchParams();
18
- (0, api_1.addApiParams)(params, false);
19
- params.set('count', '20');
20
- params.set('candidate_source', 'trends');
21
- params.set('include_page_configuration', 'false');
22
- params.set('entity_tokens', 'false');
23
- const res = yield (0, api_1.requestApi)(`https://twitter.com/i/api/2/guide.json?${params.toString()}`, auth);
24
- if (!res.success) {
25
- throw res.err;
5
+ async function getTrends(auth) {
6
+ const params = new URLSearchParams();
7
+ (0, api_1.addApiParams)(params, false);
8
+ params.set('count', '20');
9
+ params.set('candidate_source', 'trends');
10
+ params.set('include_page_configuration', 'false');
11
+ params.set('entity_tokens', 'false');
12
+ const res = await (0, api_1.requestApi)(`https://api.twitter.com/2/guide.json?${params.toString()}`, auth);
13
+ if (!res.success) {
14
+ throw res.err;
15
+ }
16
+ const instructions = res.value.timeline?.instructions ?? [];
17
+ if (instructions.length < 2) {
18
+ throw new Error('No trend entries found.');
19
+ }
20
+ // Some of this is silly, but for now we're assuming we know nothing about the
21
+ // data, and that anything can be missing. Go has non-nilable strings and empty
22
+ // slices are nil, so it largely doesn't need to worry about this.
23
+ const entries = instructions[1].addEntries?.entries ?? [];
24
+ if (entries.length < 2) {
25
+ throw new Error('No trend entries found.');
26
+ }
27
+ const items = entries[1].content?.timelineModule?.items ?? [];
28
+ const trends = [];
29
+ for (const item of items) {
30
+ const trend = item.item?.clientEventInfo?.details?.guideDetails?.transparentGuideDetails
31
+ ?.trendMetadata?.trendName;
32
+ if (trend != null) {
33
+ trends.push(trend);
26
34
  }
27
- const instructions = (_b = (_a = res.value.timeline) === null || _a === void 0 ? void 0 : _a.instructions) !== null && _b !== void 0 ? _b : [];
28
- if (instructions.length < 2) {
29
- throw new Error('No trend entries found.');
30
- }
31
- // Some of this is silly, but for now we're assuming we know nothing about the
32
- // data, and that anything can be missing. Go has non-nilable strings and empty
33
- // slices are nil, so it largely doesn't need to worry about this.
34
- const entries = (_d = (_c = instructions[1].addEntries) === null || _c === void 0 ? void 0 : _c.entries) !== null && _d !== void 0 ? _d : [];
35
- if (entries.length < 2) {
36
- throw new Error('No trend entries found.');
37
- }
38
- const items = (_g = (_f = (_e = entries[1].content) === null || _e === void 0 ? void 0 : _e.timelineModule) === null || _f === void 0 ? void 0 : _f.items) !== null && _g !== void 0 ? _g : [];
39
- const trends = [];
40
- for (const item of items) {
41
- const trend = (_o = (_m = (_l = (_k = (_j = (_h = item.item) === null || _h === void 0 ? void 0 : _h.clientEventInfo) === null || _j === void 0 ? void 0 : _j.details) === null || _k === void 0 ? void 0 : _k.guideDetails) === null || _l === void 0 ? void 0 : _l.transparentGuideDetails) === null || _m === void 0 ? void 0 : _m.trendMetadata) === null || _o === void 0 ? void 0 : _o.trendName;
42
- if (trend != null) {
43
- trends.push(trend);
44
- }
45
- }
46
- return trends;
47
- });
35
+ }
36
+ return trends;
48
37
  }
49
38
  exports.getTrends = getTrends;
50
39
  //# sourceMappingURL=trends.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"trends.js","sourceRoot":"","sources":["../src/trends.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAAiD;AAIjD,SAAsB,SAAS,CAAC,IAAiB;;;QAC/C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAA,kBAAY,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE5B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;QACzC,MAAM,CAAC,GAAG,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAErC,MAAM,GAAG,GAAG,MAAM,IAAA,gBAAU,EAC1B,0CAA0C,MAAM,CAAC,QAAQ,EAAE,EAAE,EAC7D,IAAI,CACL,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,MAAM,GAAG,CAAC,GAAG,CAAC;SACf;QAED,MAAM,YAAY,GAAG,MAAA,MAAA,GAAG,CAAC,KAAK,CAAC,QAAQ,0CAAE,YAAY,mCAAI,EAAE,CAAC;QAC5D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QAED,8EAA8E;QAC9E,+EAA+E;QAC/E,kEAAkE;QAClE,MAAM,OAAO,GAAG,MAAA,MAAA,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,0CAAE,OAAO,mCAAI,EAAE,CAAC;QAC1D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QAED,MAAM,KAAK,GAAG,MAAA,MAAA,MAAA,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,0CAAE,cAAc,0CAAE,KAAK,mCAAI,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,MAAM,KAAK,GACT,MAAA,MAAA,MAAA,MAAA,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,eAAe,0CAAE,OAAO,0CAAE,YAAY,0CAAE,uBAAuB,0CACtE,aAAa,0CAAE,SAAS,CAAC;YAC/B,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACpB;SACF;QAED,OAAO,MAAM,CAAC;;CACf;AA1CD,8BA0CC"}
1
+ {"version":3,"file":"trends.js","sourceRoot":"","sources":["../src/trends.ts"],"names":[],"mappings":";;;AAAA,+BAAiD;AAI1C,KAAK,UAAU,SAAS,CAAC,IAAiB;IAC/C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAA,kBAAY,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAE5B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;IACzC,MAAM,CAAC,GAAG,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;IAClD,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAErC,MAAM,GAAG,GAAG,MAAM,IAAA,gBAAU,EAC1B,wCAAwC,MAAM,CAAC,QAAQ,EAAE,EAAE,EAC3D,IAAI,CACL,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;QAChB,MAAM,GAAG,CAAC,GAAG,CAAC;KACf;IAED,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,YAAY,IAAI,EAAE,CAAC;IAC5D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;KAC5C;IAED,8EAA8E;IAC9E,+EAA+E;IAC/E,kEAAkE;IAClE,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;KAC5C;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC;IAC9D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,EAAE,uBAAuB;YACxE,EAAE,aAAa,EAAE,SAAS,CAAC;QAC/B,IAAI,KAAK,IAAI,IAAI,EAAE;YACjB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AA1CD,8BA0CC"}