@the-convocation/twitter-scraper 0.1.0 → 0.1.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.
- package/dist/api.js +11 -6
- package/dist/api.js.map +1 -1
- package/dist/auth.js +7 -3
- package/dist/auth.js.map +1 -1
- package/dist/profile.js +11 -5
- package/dist/profile.js.map +1 -1
- package/dist/scraper.js +23 -19
- package/dist/scraper.js.map +1 -1
- package/dist/search.js +22 -15
- package/dist/search.js.map +1 -1
- package/dist/timeline-async.js +7 -2
- package/dist/timeline-async.js.map +1 -1
- package/dist/timeline.js +11 -5
- package/dist/timeline.js.map +1 -1
- package/dist/trends.js +8 -4
- package/dist/trends.js.map +1 -1
- package/dist/tweets.js +21 -15
- package/dist/tweets.js.map +1 -1
- package/package.json +1 -1
package/dist/api.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,16 +8,18 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.addApiParams = exports.requestApi = exports.bearerToken2 = exports.bearerToken = void 0;
|
|
13
|
+
const got_scraping_1 = require("got-scraping");
|
|
14
|
+
exports.bearerToken = 'AAAAAAAAAAAAAAAAAAAAAPYXBAAAAAAACLXUNDekMxqa8h%2F40K4moUkGsoc%3DTYfbDKbT3jJPCEVnMYqilB28NHfOPqkca3qaAxGfsyKCs0wRbw';
|
|
15
|
+
exports.bearerToken2 = 'AAAAAAAAAAAAAAAAAAAAANRILgAAAAAAnNwIzUejRCOuH5E6I8xnZz4puTs%3D1Zv7ttfk8LF81IUq16cHjhLTvJu4FA33AGWWjCpTnA';
|
|
16
|
+
function requestApi(url, auth) {
|
|
14
17
|
return __awaiter(this, void 0, void 0, function* () {
|
|
15
18
|
const headers = {};
|
|
16
19
|
yield auth.installTo(headers);
|
|
17
20
|
let res;
|
|
18
21
|
try {
|
|
19
|
-
res = yield gotScraping.get({
|
|
22
|
+
res = yield got_scraping_1.gotScraping.get({
|
|
20
23
|
url,
|
|
21
24
|
headers,
|
|
22
25
|
});
|
|
@@ -46,7 +49,8 @@ export function requestApi(url, auth) {
|
|
|
46
49
|
}
|
|
47
50
|
});
|
|
48
51
|
}
|
|
49
|
-
|
|
52
|
+
exports.requestApi = requestApi;
|
|
53
|
+
function addApiParams(params, includeTweetReplies) {
|
|
50
54
|
params.set('include_profile_interstitial_type', '1');
|
|
51
55
|
params.set('include_blocking', '1');
|
|
52
56
|
params.set('include_blocked_by', '1');
|
|
@@ -74,4 +78,5 @@ export function addApiParams(params, includeTweetReplies) {
|
|
|
74
78
|
params.set('ext', 'mediaStats,highlightedLabel,hasNftAvatar,voiceInfo,superFollowMetadata');
|
|
75
79
|
return params;
|
|
76
80
|
}
|
|
81
|
+
exports.addApiParams = addApiParams;
|
|
77
82
|
//# sourceMappingURL=api.js.map
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,11 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.TwitterGuestAuth = void 0;
|
|
13
|
+
const got_scraping_1 = require("got-scraping");
|
|
11
14
|
/**
|
|
12
15
|
* A guest authentication token manager. Automatically handles token refreshes.
|
|
13
16
|
*/
|
|
14
|
-
|
|
17
|
+
class TwitterGuestAuth {
|
|
15
18
|
constructor(bearerToken, cookie, xCsrfToken) {
|
|
16
19
|
this.bearerToken = bearerToken;
|
|
17
20
|
this.cookie = cookie;
|
|
@@ -84,7 +87,7 @@ export class TwitterGuestAuth {
|
|
|
84
87
|
*/
|
|
85
88
|
updateToken() {
|
|
86
89
|
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
-
const res = yield gotScraping.post({
|
|
90
|
+
const res = yield got_scraping_1.gotScraping.post({
|
|
88
91
|
url: 'https://api.twitter.com/1.1/guest/activate.json',
|
|
89
92
|
headers: {
|
|
90
93
|
Authorization: `Bearer ${this.bearerToken}`,
|
|
@@ -116,4 +119,5 @@ export class TwitterGuestAuth {
|
|
|
116
119
|
new Date(new Date().valueOf() - 3 * 60 * 60 * 1000)));
|
|
117
120
|
}
|
|
118
121
|
}
|
|
122
|
+
exports.TwitterGuestAuth = TwitterGuestAuth;
|
|
119
123
|
//# sourceMappingURL=auth.js.map
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/profile.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,8 +8,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getUserIdByScreenName = exports.getProfile = exports.parseProfile = void 0;
|
|
13
|
+
const api_1 = require("./api");
|
|
14
|
+
function parseProfile(user) {
|
|
12
15
|
var _a, _b;
|
|
13
16
|
const profile = {
|
|
14
17
|
avatar: user.profile_image_url_https,
|
|
@@ -38,9 +41,10 @@ export function parseProfile(user) {
|
|
|
38
41
|
}
|
|
39
42
|
return profile;
|
|
40
43
|
}
|
|
41
|
-
|
|
44
|
+
exports.parseProfile = parseProfile;
|
|
45
|
+
function getProfile(username, auth) {
|
|
42
46
|
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
-
const res = yield requestApi('https://api.twitter.com/graphql/4S2ihIKfF3xhp-ENxvUAfQ/UserByScreenName?variables=%7B%22screen_name%22%3A%22' +
|
|
47
|
+
const res = yield (0, api_1.requestApi)('https://api.twitter.com/graphql/4S2ihIKfF3xhp-ENxvUAfQ/UserByScreenName?variables=%7B%22screen_name%22%3A%22' +
|
|
44
48
|
username +
|
|
45
49
|
'%22%2C%22withHighlightedLabel%22%3Atrue%7D', auth);
|
|
46
50
|
if (!res.success) {
|
|
@@ -75,8 +79,9 @@ export function getProfile(username, auth) {
|
|
|
75
79
|
};
|
|
76
80
|
});
|
|
77
81
|
}
|
|
82
|
+
exports.getProfile = getProfile;
|
|
78
83
|
const idCache = new Map();
|
|
79
|
-
|
|
84
|
+
function getUserIdByScreenName(screenName, auth) {
|
|
80
85
|
return __awaiter(this, void 0, void 0, function* () {
|
|
81
86
|
const cached = idCache.get(screenName);
|
|
82
87
|
if (cached != null) {
|
|
@@ -100,4 +105,5 @@ export function getUserIdByScreenName(screenName, auth) {
|
|
|
100
105
|
};
|
|
101
106
|
});
|
|
102
107
|
}
|
|
108
|
+
exports.getUserIdByScreenName = getUserIdByScreenName;
|
|
103
109
|
//# sourceMappingURL=profile.js.map
|
package/dist/profile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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"}
|
package/dist/scraper.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,24 +8,26 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.Scraper = void 0;
|
|
13
|
+
const api_1 = require("./api");
|
|
14
|
+
const auth_1 = require("./auth");
|
|
15
|
+
const profile_1 = require("./profile");
|
|
16
|
+
const search_1 = require("./search");
|
|
17
|
+
const trends_1 = require("./trends");
|
|
18
|
+
const tweets_1 = require("./tweets");
|
|
16
19
|
/**
|
|
17
20
|
* An interface to Twitter's undocumented API.
|
|
18
21
|
* Reusing Scraper objects is recommended to minimize the time spent authenticating unnecessarily.
|
|
19
22
|
*/
|
|
20
|
-
|
|
23
|
+
class Scraper {
|
|
21
24
|
/**
|
|
22
25
|
* Creates a new Scraper object. Scrapers maintain their own guest tokens for Twitter's internal API.
|
|
23
26
|
* Reusing Scraper objects is recommended to minimize the time spent authenticating unnecessarily.
|
|
24
27
|
*/
|
|
25
28
|
constructor() {
|
|
26
|
-
this.auth = new TwitterGuestAuth(bearerToken);
|
|
27
|
-
this.authTrends = new TwitterGuestAuth(bearerToken2);
|
|
29
|
+
this.auth = new auth_1.TwitterGuestAuth(api_1.bearerToken);
|
|
30
|
+
this.authTrends = new auth_1.TwitterGuestAuth(api_1.bearerToken2);
|
|
28
31
|
}
|
|
29
32
|
/**
|
|
30
33
|
* Fetches a Twitter profile.
|
|
@@ -33,7 +36,7 @@ export class Scraper {
|
|
|
33
36
|
*/
|
|
34
37
|
getProfile(username) {
|
|
35
38
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
|
-
const res = yield getProfile(username, this.auth);
|
|
39
|
+
const res = yield (0, profile_1.getProfile)(username, this.auth);
|
|
37
40
|
return this.handleResponse(res);
|
|
38
41
|
});
|
|
39
42
|
}
|
|
@@ -44,7 +47,7 @@ export class Scraper {
|
|
|
44
47
|
*/
|
|
45
48
|
getUserIdByScreenName(screenName) {
|
|
46
49
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
-
const res = yield getUserIdByScreenName(screenName, this.auth);
|
|
50
|
+
const res = yield (0, profile_1.getUserIdByScreenName)(screenName, this.auth);
|
|
48
51
|
return this.handleResponse(res);
|
|
49
52
|
});
|
|
50
53
|
}
|
|
@@ -56,8 +59,8 @@ export class Scraper {
|
|
|
56
59
|
* @param searchMode The category filter to apply to the search. Defaults to `Top`.
|
|
57
60
|
* @returns An async generator of tweets matching the provided filters.
|
|
58
61
|
*/
|
|
59
|
-
searchTweets(query, maxTweets, includeReplies, searchMode = SearchMode.Top) {
|
|
60
|
-
return searchTweets(query, maxTweets, includeReplies, searchMode, this.auth);
|
|
62
|
+
searchTweets(query, maxTweets, includeReplies, searchMode = search_1.SearchMode.Top) {
|
|
63
|
+
return (0, search_1.searchTweets)(query, maxTweets, includeReplies, searchMode, this.auth);
|
|
61
64
|
}
|
|
62
65
|
/**
|
|
63
66
|
* Fetches profiles from Twitter.
|
|
@@ -66,7 +69,7 @@ export class Scraper {
|
|
|
66
69
|
* @returns An async generator of tweets matching the provided filters.
|
|
67
70
|
*/
|
|
68
71
|
searchProfiles(query, maxProfiles) {
|
|
69
|
-
return searchProfiles(query, maxProfiles, this.auth);
|
|
72
|
+
return (0, search_1.searchProfiles)(query, maxProfiles, this.auth);
|
|
70
73
|
}
|
|
71
74
|
/**
|
|
72
75
|
* Fetches tweets from Twitter.
|
|
@@ -78,7 +81,7 @@ export class Scraper {
|
|
|
78
81
|
* @returns A page of results, containing a cursor that can be used in further requests.
|
|
79
82
|
*/
|
|
80
83
|
fetchSearchTweets(query, maxTweets, includeReplies, searchMode, cursor) {
|
|
81
|
-
return fetchSearchTweets(query, maxTweets, includeReplies, searchMode, this.auth, cursor);
|
|
84
|
+
return (0, search_1.fetchSearchTweets)(query, maxTweets, includeReplies, searchMode, this.auth, cursor);
|
|
82
85
|
}
|
|
83
86
|
/**
|
|
84
87
|
* Fetches profiles from Twitter.
|
|
@@ -88,14 +91,14 @@ export class Scraper {
|
|
|
88
91
|
* @returns A page of results, containing a cursor that can be used in further requests.
|
|
89
92
|
*/
|
|
90
93
|
fetchSearchProfiles(query, maxProfiles, cursor) {
|
|
91
|
-
return fetchSearchProfiles(query, maxProfiles, this.auth, cursor);
|
|
94
|
+
return (0, search_1.fetchSearchProfiles)(query, maxProfiles, this.auth, cursor);
|
|
92
95
|
}
|
|
93
96
|
/**
|
|
94
97
|
* Fetches the current trends from Twitter.
|
|
95
98
|
* @returns The current list of trends.
|
|
96
99
|
*/
|
|
97
100
|
getTrends() {
|
|
98
|
-
return getTrends(this.authTrends);
|
|
101
|
+
return (0, trends_1.getTrends)(this.authTrends);
|
|
99
102
|
}
|
|
100
103
|
/**
|
|
101
104
|
* Fetches tweets from a Twitter user.
|
|
@@ -105,7 +108,7 @@ export class Scraper {
|
|
|
105
108
|
* @returns An async generator of tweets from the provided user.
|
|
106
109
|
*/
|
|
107
110
|
getTweets(user, maxTweets, includeReplies) {
|
|
108
|
-
return getTweets(user, maxTweets, includeReplies, this.auth);
|
|
111
|
+
return (0, tweets_1.getTweets)(user, maxTweets, includeReplies, this.auth);
|
|
109
112
|
}
|
|
110
113
|
/**
|
|
111
114
|
* Fetches a single tweet.
|
|
@@ -114,7 +117,7 @@ export class Scraper {
|
|
|
114
117
|
* @returns The request tweet, or `null` if it couldn't be fetched.
|
|
115
118
|
*/
|
|
116
119
|
getTweet(id, includeReplies) {
|
|
117
|
-
return getTweet(id, includeReplies, this.auth);
|
|
120
|
+
return (0, tweets_1.getTweet)(id, includeReplies, this.auth);
|
|
118
121
|
}
|
|
119
122
|
/**
|
|
120
123
|
* Returns if the scraper has a guest token. The token may not be valid.
|
|
@@ -150,4 +153,5 @@ export class Scraper {
|
|
|
150
153
|
return res.value;
|
|
151
154
|
}
|
|
152
155
|
}
|
|
156
|
+
exports.Scraper = Scraper;
|
|
153
157
|
//# sourceMappingURL=scraper.js.map
|
package/dist/scraper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scraper.js","sourceRoot":"","sources":["../src/scraper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scraper.js","sourceRoot":"","sources":["../src/scraper.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAAoE;AACpE,iCAA0C;AAC1C,uCAAuE;AACvE,qCAMkB;AAElB,qCAAqC;AACrC,qCAAsD;AAEtD;;;GAGG;AACH,MAAa,OAAO;IAIlB;;;OAGG;IACH;QACE,IAAI,CAAC,IAAI,GAAG,IAAI,uBAAgB,CAAC,iBAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAgB,CAAC,kBAAY,CAAC,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACU,UAAU,CAAC,QAAgB;;YACtC,MAAM,GAAG,GAAG,MAAM,IAAA,oBAAU,EAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;KAAA;IAED;;;;OAIG;IACU,qBAAqB,CAAC,UAAkB;;YACnD,MAAM,GAAG,GAAG,MAAM,IAAA,+BAAqB,EAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;KAAA;IAED;;;;;;;OAOG;IACI,YAAY,CACjB,KAAa,EACb,SAAiB,EACjB,cAAuB,EACvB,aAAyB,mBAAU,CAAC,GAAG;QAEvC,OAAO,IAAA,qBAAY,EACjB,KAAK,EACL,SAAS,EACT,cAAc,EACd,UAAU,EACV,IAAI,CAAC,IAAI,CACV,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,cAAc,CACnB,KAAa,EACb,WAAmB;QAEnB,OAAO,IAAA,uBAAc,EAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;OAQG;IACI,iBAAiB,CACtB,KAAa,EACb,SAAiB,EACjB,cAAuB,EACvB,UAAsB,EACtB,MAAe;QAEf,OAAO,IAAA,0BAAiB,EACtB,KAAK,EACL,SAAS,EACT,cAAc,EACd,UAAU,EACV,IAAI,CAAC,IAAI,EACT,MAAM,CACP,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,mBAAmB,CACxB,KAAa,EACb,WAAmB,EACnB,MAAe;QAEf,OAAO,IAAA,4BAAmB,EAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAED;;;OAGG;IACI,SAAS;QACd,OAAO,IAAA,kBAAS,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED;;;;;;OAMG;IACI,SAAS,CACd,IAAY,EACZ,SAAiB,EACjB,cAAuB;QAEvB,OAAO,IAAA,kBAAS,EAAC,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,EAAU,EAAE,cAAuB;QACjD,OAAO,IAAA,iBAAQ,EAAC,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACI,aAAa;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACI,UAAU,CAAC,MAAc;QAC9B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,KAAa;QACjC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC9B,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,cAAc,CAAI,GAAwB;QAChD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,MAAM,GAAG,CAAC,GAAG,CAAC;SACf;QAED,OAAO,GAAG,CAAC,KAAK,CAAC;IACnB,CAAC;CACF;AApLD,0BAoLC"}
|
package/dist/search.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,49 +8,55 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.fetchSearchProfiles = exports.fetchSearchTweets = exports.searchProfiles = exports.searchTweets = exports.SearchMode = void 0;
|
|
13
|
+
const api_1 = require("./api");
|
|
14
|
+
const timeline_1 = require("./timeline");
|
|
15
|
+
const timeline_async_1 = require("./timeline-async");
|
|
13
16
|
/**
|
|
14
17
|
* The categories that can be used in Twitter searches.
|
|
15
18
|
*/
|
|
16
|
-
|
|
19
|
+
var SearchMode;
|
|
17
20
|
(function (SearchMode) {
|
|
18
21
|
SearchMode[SearchMode["Top"] = 0] = "Top";
|
|
19
22
|
SearchMode[SearchMode["Latest"] = 1] = "Latest";
|
|
20
23
|
SearchMode[SearchMode["Photos"] = 2] = "Photos";
|
|
21
24
|
SearchMode[SearchMode["Videos"] = 3] = "Videos";
|
|
22
25
|
SearchMode[SearchMode["Users"] = 4] = "Users";
|
|
23
|
-
})(SearchMode || (SearchMode = {}));
|
|
24
|
-
|
|
25
|
-
return getTweetTimeline(query, maxTweets, (q, mt, c) => {
|
|
26
|
+
})(SearchMode = exports.SearchMode || (exports.SearchMode = {}));
|
|
27
|
+
function searchTweets(query, maxTweets, includeReplies, searchMode, auth) {
|
|
28
|
+
return (0, timeline_async_1.getTweetTimeline)(query, maxTweets, (q, mt, c) => {
|
|
26
29
|
return fetchSearchTweets(q, mt, includeReplies, searchMode, auth, c);
|
|
27
30
|
});
|
|
28
31
|
}
|
|
29
|
-
|
|
30
|
-
|
|
32
|
+
exports.searchTweets = searchTweets;
|
|
33
|
+
function searchProfiles(query, maxProfiles, auth) {
|
|
34
|
+
return (0, timeline_async_1.getUserTimeline)(query, maxProfiles, (q, mt, c) => {
|
|
31
35
|
return fetchSearchProfiles(q, mt, auth, c);
|
|
32
36
|
});
|
|
33
37
|
}
|
|
34
|
-
|
|
38
|
+
exports.searchProfiles = searchProfiles;
|
|
39
|
+
function fetchSearchTweets(query, maxTweets, includeReplies, searchMode, auth, cursor) {
|
|
35
40
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
41
|
const timeline = yield getSearchTimeline(query, maxTweets, includeReplies, searchMode, auth, cursor);
|
|
37
|
-
return parseTweets(timeline);
|
|
42
|
+
return (0, timeline_1.parseTweets)(timeline);
|
|
38
43
|
});
|
|
39
44
|
}
|
|
40
|
-
|
|
45
|
+
exports.fetchSearchTweets = fetchSearchTweets;
|
|
46
|
+
function fetchSearchProfiles(query, maxProfiles, auth, cursor) {
|
|
41
47
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
48
|
const timeline = yield getSearchTimeline(query, maxProfiles, false, SearchMode.Users, auth, cursor);
|
|
43
|
-
return parseUsers(timeline);
|
|
49
|
+
return (0, timeline_1.parseUsers)(timeline);
|
|
44
50
|
});
|
|
45
51
|
}
|
|
52
|
+
exports.fetchSearchProfiles = fetchSearchProfiles;
|
|
46
53
|
function getSearchTimeline(query, maxItems, includeReplies, searchMode, auth, cursor) {
|
|
47
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
48
55
|
if (maxItems > 50) {
|
|
49
56
|
maxItems = 50;
|
|
50
57
|
}
|
|
51
58
|
const params = new URLSearchParams();
|
|
52
|
-
addApiParams(params, includeReplies);
|
|
59
|
+
(0, api_1.addApiParams)(params, includeReplies);
|
|
53
60
|
params.set('q', query);
|
|
54
61
|
params.set('count', `${maxItems}`);
|
|
55
62
|
params.set('query_source', 'typed_query');
|
|
@@ -74,7 +81,7 @@ function getSearchTimeline(query, maxItems, includeReplies, searchMode, auth, cu
|
|
|
74
81
|
default:
|
|
75
82
|
break;
|
|
76
83
|
}
|
|
77
|
-
const res = yield requestApi(`https://twitter.com/i/api/2/search/adaptive.json?${params.toString()}`, auth);
|
|
84
|
+
const res = yield (0, api_1.requestApi)(`https://twitter.com/i/api/2/search/adaptive.json?${params.toString()}`, auth);
|
|
78
85
|
if (!res.success) {
|
|
79
86
|
throw res.err;
|
|
80
87
|
}
|
package/dist/search.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
|
package/dist/timeline-async.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
|
|
2
3
|
var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
|
|
3
4
|
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
@@ -10,7 +11,9 @@ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _ar
|
|
|
10
11
|
function reject(value) { resume("throw", value); }
|
|
11
12
|
function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
|
|
12
13
|
};
|
|
13
|
-
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.getTweetTimeline = exports.getUserTimeline = void 0;
|
|
16
|
+
function getUserTimeline(query, maxProfiles, fetchFunc) {
|
|
14
17
|
return __asyncGenerator(this, arguments, function* getUserTimeline_1() {
|
|
15
18
|
let nProfiles = 0;
|
|
16
19
|
let cursor = undefined;
|
|
@@ -33,7 +36,8 @@ export function getUserTimeline(query, maxProfiles, fetchFunc) {
|
|
|
33
36
|
}
|
|
34
37
|
});
|
|
35
38
|
}
|
|
36
|
-
|
|
39
|
+
exports.getUserTimeline = getUserTimeline;
|
|
40
|
+
function getTweetTimeline(query, maxTweets, fetchFunc) {
|
|
37
41
|
return __asyncGenerator(this, arguments, function* getTweetTimeline_1() {
|
|
38
42
|
let nTweets = 0;
|
|
39
43
|
let cursor = undefined;
|
|
@@ -56,4 +60,5 @@ export function getTweetTimeline(query, maxTweets, fetchFunc) {
|
|
|
56
60
|
}
|
|
57
61
|
});
|
|
58
62
|
}
|
|
63
|
+
exports.getTweetTimeline = getTweetTimeline;
|
|
59
64
|
//# sourceMappingURL=timeline-async.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline-async.js","sourceRoot":"","sources":["../src/timeline-async.ts"],"names":[],"mappings":"
|
|
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"}
|
package/dist/timeline.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseUsers = exports.parseTweets = exports.parseTweet = void 0;
|
|
4
|
+
const profile_1 = require("./profile");
|
|
2
5
|
const reHashtag = /\B(\#\S+\b)/g;
|
|
3
6
|
const reTwitterUrl = /https:(\/\/t\.co\/([A-Za-z0-9]|[A-Za-z]){10})/g;
|
|
4
7
|
const reUsername = /\B(\@\S{1,15}\b)/g;
|
|
5
|
-
|
|
8
|
+
function parseTweet(timeline, id) {
|
|
6
9
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
|
|
7
10
|
const tweets = (_b = (_a = timeline.globalObjects) === null || _a === void 0 ? void 0 : _a.tweets) !== null && _b !== void 0 ? _b : {};
|
|
8
11
|
const tweet = tweets[id];
|
|
@@ -150,7 +153,8 @@ export function parseTweet(timeline, id) {
|
|
|
150
153
|
tw.html = html;
|
|
151
154
|
return tw;
|
|
152
155
|
}
|
|
153
|
-
|
|
156
|
+
exports.parseTweet = parseTweet;
|
|
157
|
+
function parseTweets(timeline) {
|
|
154
158
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
155
159
|
let cursor;
|
|
156
160
|
let pinnedTweet;
|
|
@@ -189,7 +193,8 @@ export function parseTweets(timeline) {
|
|
|
189
193
|
next: cursor,
|
|
190
194
|
};
|
|
191
195
|
}
|
|
192
|
-
|
|
196
|
+
exports.parseTweets = parseTweets;
|
|
197
|
+
function parseUsers(timeline) {
|
|
193
198
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
194
199
|
const users = new Map();
|
|
195
200
|
const userObjects = (_b = (_a = timeline.globalObjects) === null || _a === void 0 ? void 0 : _a.users) !== null && _b !== void 0 ? _b : {};
|
|
@@ -198,7 +203,7 @@ export function parseUsers(timeline) {
|
|
|
198
203
|
if (legacy == null) {
|
|
199
204
|
continue;
|
|
200
205
|
}
|
|
201
|
-
const user = parseProfile(legacy);
|
|
206
|
+
const user = (0, profile_1.parseProfile)(legacy);
|
|
202
207
|
users.set(id, user);
|
|
203
208
|
}
|
|
204
209
|
let cursor;
|
|
@@ -225,4 +230,5 @@ export function parseUsers(timeline) {
|
|
|
225
230
|
next: cursor,
|
|
226
231
|
};
|
|
227
232
|
}
|
|
233
|
+
exports.parseUsers = parseUsers;
|
|
228
234
|
//# sourceMappingURL=timeline.js.map
|
package/dist/timeline.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.js","sourceRoot":"","sources":["../src/timeline.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"timeline.js","sourceRoot":"","sources":["../src/timeline.ts"],"names":[],"mappings":";;;AAAA,uCAAiE;AAuJjE,MAAM,SAAS,GAAG,cAAc,CAAC;AACjC,MAAM,YAAY,GAAG,gDAAgD,CAAC;AACtE,MAAM,UAAU,GAAG,mBAAmB,CAAC;AAEvC,SAAgB,UAAU,CAAC,QAAqB,EAAE,EAAU;;IAC1D,MAAM,MAAM,GAAG,MAAA,MAAA,QAAQ,CAAC,aAAa,0CAAE,MAAM,mCAAI,EAAE,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACzB,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,EAAE;QAC9C,OAAO,IAAI,CAAC;KACb;IAED,MAAM,KAAK,GAAG,MAAA,MAAA,QAAQ,CAAC,aAAa,0CAAE,KAAK,mCAAI,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC;IACnC,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,EAAE;QACpC,wIAAwI;QACxI,OAAO,IAAI,CAAC;KACb;IAED,MAAM,EAAE,GAAU;QAChB,EAAE;QACF,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,cAAc;QAC3B,YAAY,EAAE,uBAAuB,QAAQ,WAAW,EAAE,EAAE;QAC5D,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,KAAK,CAAC,WAAW;QAC1B,QAAQ,EAAE,KAAK,CAAC,aAAa;QAC7B,IAAI,EAAE,KAAK,CAAC,SAAS;QACrB,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,KAAK,CAAC,WAAW;QACzB,QAAQ;QACR,MAAM,EAAE,EAAE;KACX,CAAC;IAEF,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,EAAE;QAC5B,EAAE,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;KAC3D;IAED,IAAI,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,EAAE,KAAI,IAAI,EAAE;QAC3B,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;KACxB;IAED,IAAI,KAAK,CAAC,oBAAoB,IAAI,IAAI,EAAE;QACtC,MAAM,YAAY,GAAG,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACtE,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,EAAE,CAAC,QAAQ,GAAG,IAAI,CAAC;YACnB,EAAE,CAAC,YAAY,GAAG,YAAY,CAAC;SAChC;KACF;IAED,IAAI,KAAK,CAAC,yBAAyB,IAAI,IAAI,EAAE;QAC3C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC1E,IAAI,WAAW,IAAI,IAAI,EAAE;YACvB,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC;YAClB,EAAE,CAAC,eAAe,GAAG,WAAW,CAAC;SAClC;KACF;IAED,IAAI,KAAK,CAAC,uBAAuB,IAAI,IAAI,EAAE;QACzC,MAAM,eAAe,GAAG,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC5E,IAAI,eAAe,IAAI,IAAI,EAAE;YAC3B,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC;YACpB,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC;SACtC;KACF;IAED,MAAM,YAAY,GAAG,MAAA,IAAI,CAAC,oBAAoB,mCAAI,EAAE,CAAC;IACrD,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE;QACjC,IAAI,KAAK,CAAC,mBAAmB,IAAI,MAAM,EAAE;YACvC,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC;YAChB,MAAM;SACP;KACF;IAED,MAAM,QAAQ,GAAG,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,QAAQ,mCAAI,EAAE,CAAC;IAChD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI,EAAE;YACxB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAChC;KACF;IAED,MAAM,KAAK,GAAG,MAAA,MAAA,KAAK,CAAC,iBAAiB,0CAAE,KAAK,mCAAI,EAAE,CAAC;IACnD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;QACrB,IAAI,CAAC,CAAC,eAAe,IAAI,IAAI,EAAE;YAC7B,SAAS;SACV;QAED,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE;YACtB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;SACnC;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,EAAE;YACjD,MAAM,KAAK,GAAU;gBACnB,EAAE,EAAE,CAAC,CAAC,MAAM;gBACZ,OAAO,EAAE,CAAC,CAAC,eAAe;aAC3B,CAAC;YAEF,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,MAAM,QAAQ,GAAG,MAAA,MAAA,CAAC,CAAC,UAAU,0CAAE,QAAQ,mCAAI,EAAE,CAAC;YAC9C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;gBAChC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,GAAG,UAAU,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE;oBAClE,IAAI,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;oBAC7B,MAAM,WAAW,GAAG,CAAC,CAAC;oBACtB,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACnD,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE;wBACvB,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;qBAClE;oBAED,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC;oBACvB,UAAU,GAAG,OAAO,CAAC;iBACtB;aACF;YAED,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACvB;QAED,MAAM,SAAS,GAAG,CAAC,CAAC,2BAA2B,CAAC;QAChD,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,EAAE,CAAC,gBAAgB;gBACjB,SAAS,CAAC,aAAa;oBACvB,SAAS,CAAC,gBAAgB;oBAC1B,SAAS,CAAC,KAAK,CAAC;SACnB;KACF;IAED,MAAM,IAAI,GAAG,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,mCAAI,EAAE,CAAC;IACxC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;QACtB,IAAI,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,YAAY,KAAI,IAAI,EAAE;YAC7B,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;SAChC;KACF;IAED,6BAA6B;IAC7B,IAAI,IAAI,GAAG,MAAA,KAAK,CAAC,SAAS,mCAAI,EAAE,CAAC;IAEjC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;QACzC,OAAO,wCAAwC,OAAO,CAAC,OAAO,CAC5D,GAAG,EACH,EAAE,CACH,KAAK,OAAO,MAAM,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,EAAE;QAC3C,OAAO,gCAAgC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,KACjE,QAAQ,CAAC,CAAC,CACZ,MAAM,CAAC;IACT,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,EAAE,EAAE;;QACxC,KAAK,MAAM,MAAM,IAAI,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,mCAAI,EAAE,EAAE;YAC/C,IAAI,GAAG,KAAK,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,YAAY,IAAI,IAAI,EAAE;gBACrD,OAAO,YAAY,MAAM,CAAC,YAAY,KAAK,GAAG,MAAM,CAAC;aACtD;SACF;QAED,KAAK,MAAM,MAAM,IAAI,MAAA,MAAA,KAAK,CAAC,iBAAiB,0CAAE,KAAK,mCAAI,EAAE,EAAE;YACzD,IAAI,GAAG,KAAK,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,eAAe,IAAI,IAAI,EAAE;gBACxD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;gBAC1C,OAAO,gBAAgB,GAAG,eAAe,MAAM,CAAC,eAAe,SAAS,CAAC;aAC1E;SACF;QAED,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,MAAM,EAAE;QAC3B,IAAI,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YACpC,SAAS;SACV;QAED,IAAI,IAAI,iBAAiB,GAAG,KAAK,CAAC;KACnC;IAED,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACnC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;IAEf,OAAO,EAAE,CAAC;AACZ,CAAC;AAhLD,gCAgLC;AAUD,SAAgB,WAAW,CAAC,QAAqB;;IAC/C,IAAI,MAA0B,CAAC;IAC/B,IAAI,WAA8B,CAAC;IACnC,IAAI,aAAa,GAAY,EAAE,CAAC;IAChC,KAAK,MAAM,WAAW,IAAI,MAAA,MAAA,QAAQ,CAAC,QAAQ,0CAAE,YAAY,mCAAI,EAAE,EAAE;QAC/D,MAAM,aAAa,GACjB,MAAA,MAAA,MAAA,MAAA,MAAA,MAAA,WAAW,CAAC,QAAQ,0CAAE,KAAK,0CAAE,OAAO,0CAAE,IAAI,0CAAE,OAAO,0CAAE,KAAK,0CAAE,EAAE,CAAC;QACjE,IAAI,aAAa,IAAI,IAAI,EAAE;YACzB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAClD,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,WAAW,GAAG,KAAK,CAAC;aACrB;SACF;QAED,KAAK,MAAM,KAAK,IAAI,MAAA,MAAA,WAAW,CAAC,UAAU,0CAAE,OAAO,mCAAI,EAAE,EAAE;YACzD,MAAM,OAAO,GAAG,MAAA,MAAA,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,0CAAE,OAAO,0CAAE,KAAK,0CAAE,EAAE,CAAC;YACxD,IAAI,OAAO,IAAI,IAAI,EAAE;gBACnB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC5C,IAAI,KAAK,IAAI,IAAI,EAAE;oBACjB,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC3B;aACF;YAED,MAAM,SAAS,GAAG,MAAA,KAAK,CAAC,OAAO,0CAAE,SAAS,CAAC;YAC3C,IAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,0CAAE,UAAU,MAAK,QAAQ,EAAE;gBAC9C,MAAM,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,0CAAE,KAAK,CAAC;aACnC;SACF;QAED,MAAM,SAAS,GAAG,MAAA,MAAA,MAAA,WAAW,CAAC,YAAY,0CAAE,KAAK,0CAAE,OAAO,0CAAE,SAAS,CAAC;QACtE,IAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,0CAAE,UAAU,MAAK,QAAQ,EAAE;YAC9C,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;SACjC;KACF;IAED,IAAI,WAAW,IAAI,IAAI,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;QACnD,aAAa,GAAG,CAAC,WAAW,EAAE,GAAG,aAAa,CAAC,CAAC;KACjD;IAED,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,IAAI,EAAE,MAAM;KACb,CAAC;AACJ,CAAC;AA3CD,kCA2CC;AAUD,SAAgB,UAAU,CAAC,QAAqB;;IAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,EAA+B,CAAC;IAErD,MAAM,WAAW,GAAG,MAAA,MAAA,QAAQ,CAAC,aAAa,0CAAE,KAAK,mCAAI,EAAE,CAAC;IACxD,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE;QAC5B,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,SAAS;SACV;QAED,MAAM,IAAI,GAAG,IAAA,sBAAY,EAAC,MAAM,CAAC,CAAC;QAClC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;KACrB;IAED,IAAI,MAA0B,CAAC;IAC/B,MAAM,eAAe,GAAc,EAAE,CAAC;IACtC,KAAK,MAAM,WAAW,IAAI,MAAA,MAAA,QAAQ,CAAC,QAAQ,0CAAE,YAAY,mCAAI,EAAE,EAAE;QAC/D,KAAK,MAAM,KAAK,IAAI,MAAA,MAAA,WAAW,CAAC,UAAU,0CAAE,OAAO,mCAAI,EAAE,EAAE;YACzD,MAAM,MAAM,GAAG,MAAA,MAAA,MAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,IAAI,0CAAE,OAAO,0CAAE,IAAI,0CAAE,EAAE,CAAC;YACtD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClC,IAAI,OAAO,IAAI,IAAI,EAAE;gBACnB,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC/B;YAED,MAAM,SAAS,GAAG,MAAA,KAAK,CAAC,OAAO,0CAAE,SAAS,CAAC;YAC3C,IAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,0CAAE,UAAU,MAAK,QAAQ,EAAE;gBAC9C,MAAM,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,0CAAE,KAAK,CAAC;aACnC;SACF;QAED,MAAM,SAAS,GAAG,MAAA,MAAA,MAAA,WAAW,CAAC,YAAY,0CAAE,KAAK,0CAAE,OAAO,0CAAE,SAAS,CAAC;QACtE,IAAI,CAAA,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,0CAAE,UAAU,MAAK,QAAQ,EAAE;YAC9C,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;SACjC;KACF;IAED,OAAO;QACL,QAAQ,EAAE,eAAe;QACzB,IAAI,EAAE,MAAM;KACb,CAAC;AACJ,CAAC;AAxCD,gCAwCC"}
|
package/dist/trends.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,17 +8,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getTrends = void 0;
|
|
13
|
+
const api_1 = require("./api");
|
|
14
|
+
function getTrends(auth) {
|
|
12
15
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
13
16
|
return __awaiter(this, void 0, void 0, function* () {
|
|
14
17
|
const params = new URLSearchParams();
|
|
15
|
-
addApiParams(params, false);
|
|
18
|
+
(0, api_1.addApiParams)(params, false);
|
|
16
19
|
params.set('count', '20');
|
|
17
20
|
params.set('candidate_source', 'trends');
|
|
18
21
|
params.set('include_page_configuration', 'false');
|
|
19
22
|
params.set('entity_tokens', 'false');
|
|
20
|
-
const res = yield requestApi(`https://twitter.com/i/api/2/guide.json?${params.toString()}`, auth);
|
|
23
|
+
const res = yield (0, api_1.requestApi)(`https://twitter.com/i/api/2/guide.json?${params.toString()}`, auth);
|
|
21
24
|
if (!res.success) {
|
|
22
25
|
throw res.err;
|
|
23
26
|
}
|
|
@@ -43,4 +46,5 @@ export function getTrends(auth) {
|
|
|
43
46
|
return trends;
|
|
44
47
|
});
|
|
45
48
|
}
|
|
49
|
+
exports.getTrends = getTrends;
|
|
46
50
|
//# sourceMappingURL=trends.js.map
|
package/dist/trends.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trends.js","sourceRoot":"","sources":["../src/trends.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trends.js","sourceRoot":"","sources":["../src/trends.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAAiD;AAIjD,SAAsB,SAAS,CAAC,IAAsB;;;QACpD,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"}
|
package/dist/tweets.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,47 +8,51 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getTweet = exports.getTweets = exports.fetchTweets = void 0;
|
|
13
|
+
const api_1 = require("./api");
|
|
14
|
+
const profile_1 = require("./profile");
|
|
15
|
+
const timeline_1 = require("./timeline");
|
|
16
|
+
const timeline_async_1 = require("./timeline-async");
|
|
17
|
+
function fetchTweets(user, maxTweets, includeReplies, cursor, auth) {
|
|
15
18
|
return __awaiter(this, void 0, void 0, function* () {
|
|
16
19
|
if (maxTweets > 200) {
|
|
17
20
|
maxTweets = 200;
|
|
18
21
|
}
|
|
19
|
-
const userIdRes = yield getUserIdByScreenName(user, auth);
|
|
22
|
+
const userIdRes = yield (0, profile_1.getUserIdByScreenName)(user, auth);
|
|
20
23
|
if (!userIdRes.success) {
|
|
21
24
|
throw userIdRes.err;
|
|
22
25
|
}
|
|
23
26
|
const params = new URLSearchParams();
|
|
24
|
-
addApiParams(params, includeReplies);
|
|
27
|
+
(0, api_1.addApiParams)(params, includeReplies);
|
|
25
28
|
params.set('count', `${maxTweets}`);
|
|
26
29
|
params.set('userId', userIdRes.value);
|
|
27
30
|
if (cursor != null && cursor != '') {
|
|
28
31
|
params.set('cursor', cursor);
|
|
29
32
|
}
|
|
30
|
-
const res = yield requestApi(`https://api.twitter.com/2/timeline/profile/${userIdRes.value}.json?${params.toString()}`, auth);
|
|
33
|
+
const res = yield (0, api_1.requestApi)(`https://api.twitter.com/2/timeline/profile/${userIdRes.value}.json?${params.toString()}`, auth);
|
|
31
34
|
if (!res.success) {
|
|
32
35
|
throw res.err;
|
|
33
36
|
}
|
|
34
|
-
return parseTweets(res.value);
|
|
37
|
+
return (0, timeline_1.parseTweets)(res.value);
|
|
35
38
|
});
|
|
36
39
|
}
|
|
37
|
-
|
|
38
|
-
|
|
40
|
+
exports.fetchTweets = fetchTweets;
|
|
41
|
+
function getTweets(user, maxTweets, includeReplies, auth) {
|
|
42
|
+
return (0, timeline_async_1.getTweetTimeline)(user, maxTweets, (q, mt, c) => {
|
|
39
43
|
return fetchTweets(q, mt, includeReplies, c, auth);
|
|
40
44
|
});
|
|
41
45
|
}
|
|
42
|
-
|
|
46
|
+
exports.getTweets = getTweets;
|
|
47
|
+
function getTweet(id, includeReplies, auth) {
|
|
43
48
|
return __awaiter(this, void 0, void 0, function* () {
|
|
44
49
|
const params = new URLSearchParams();
|
|
45
|
-
addApiParams(params, includeReplies);
|
|
46
|
-
const res = yield requestApi(`https://twitter.com/i/api/2/timeline/conversation/${id}.json?${params.toString()}`, auth);
|
|
50
|
+
(0, api_1.addApiParams)(params, includeReplies);
|
|
51
|
+
const res = yield (0, api_1.requestApi)(`https://twitter.com/i/api/2/timeline/conversation/${id}.json?${params.toString()}`, auth);
|
|
47
52
|
if (!res.success) {
|
|
48
53
|
throw res.err;
|
|
49
54
|
}
|
|
50
|
-
const { tweets } = parseTweets(res.value);
|
|
55
|
+
const { tweets } = (0, timeline_1.parseTweets)(res.value);
|
|
51
56
|
for (const tweet of tweets) {
|
|
52
57
|
if (tweet.id === id) {
|
|
53
58
|
return tweet;
|
|
@@ -56,4 +61,5 @@ export function getTweet(id, includeReplies, auth) {
|
|
|
56
61
|
return null;
|
|
57
62
|
});
|
|
58
63
|
}
|
|
64
|
+
exports.getTweet = getTweet;
|
|
59
65
|
//# sourceMappingURL=tweets.js.map
|
package/dist/tweets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tweets.js","sourceRoot":"","sources":["../src/tweets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tweets.js","sourceRoot":"","sources":["../src/tweets.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAAiD;AAEjD,uCAAkD;AAClD,yCAA2E;AAC3E,qDAAoD;AAmDpD,SAAsB,WAAW,CAC/B,IAAY,EACZ,SAAiB,EACjB,cAAuB,EACvB,MAA0B,EAC1B,IAAsB;;QAEtB,IAAI,SAAS,GAAG,GAAG,EAAE;YACnB,SAAS,GAAG,GAAG,CAAC;SACjB;QAED,MAAM,SAAS,GAAG,MAAM,IAAA,+BAAqB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;YACtB,MAAM,SAAS,CAAC,GAAG,CAAC;SACrB;QAED,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAA,kBAAY,EAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAErC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,IAAI,EAAE,EAAE;YAClC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC9B;QAED,MAAM,GAAG,GAAG,MAAM,IAAA,gBAAU,EAC1B,8CACE,SAAS,CAAC,KACZ,SAAS,MAAM,CAAC,QAAQ,EAAE,EAAE,EAC5B,IAAI,CACL,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,MAAM,GAAG,CAAC,GAAG,CAAC;SACf;QAED,OAAO,IAAA,sBAAW,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;CAAA;AApCD,kCAoCC;AAED,SAAgB,SAAS,CACvB,IAAY,EACZ,SAAiB,EACjB,cAAuB,EACvB,IAAsB;IAEtB,OAAO,IAAA,iCAAgB,EAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QACpD,OAAO,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AATD,8BASC;AAED,SAAsB,QAAQ,CAC5B,EAAU,EACV,cAAuB,EACvB,IAAsB;;QAEtB,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAA,kBAAY,EAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAErC,MAAM,GAAG,GAAG,MAAM,IAAA,gBAAU,EAC1B,qDAAqD,EAAE,SAAS,MAAM,CAAC,QAAQ,EAAE,EAAE,EACnF,IAAI,CACL,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,MAAM,GAAG,CAAC,GAAG,CAAC;SACf;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,sBAAW,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;YAC1B,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE;gBACnB,OAAO,KAAK,CAAC;aACd;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CAAA;AAxBD,4BAwBC"}
|
package/package.json
CHANGED