rettiwt-api 4.1.3 → 4.1.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.
|
@@ -42,14 +42,15 @@ var Tweet = /** @class */ (function () {
|
|
|
42
42
|
* @returns - The deserialized original quoted tweet.
|
|
43
43
|
*/
|
|
44
44
|
Tweet.prototype.getQuotedTweet = function (tweet) {
|
|
45
|
+
var _a, _b, _c, _d, _e, _f;
|
|
45
46
|
// If tweet with limited visibility
|
|
46
47
|
if (tweet.quoted_status_result &&
|
|
47
|
-
|
|
48
|
-
tweet.quoted_status_result.result.
|
|
48
|
+
((_b = (_a = tweet.quoted_status_result) === null || _a === void 0 ? void 0 : _a.result) === null || _b === void 0 ? void 0 : _b.__typename) == 'TweetWithVisibilityResults' &&
|
|
49
|
+
((_d = (_c = tweet.quoted_status_result.result) === null || _c === void 0 ? void 0 : _c.tweet) === null || _d === void 0 ? void 0 : _d.legacy)) {
|
|
49
50
|
return new Tweet(tweet.quoted_status_result.result.tweet);
|
|
50
51
|
}
|
|
51
52
|
// If normal tweet
|
|
52
|
-
else if (
|
|
53
|
+
else if ((_f = (_e = tweet.quoted_status_result) === null || _e === void 0 ? void 0 : _e.result) === null || _f === void 0 ? void 0 : _f.rest_id) {
|
|
53
54
|
return new Tweet(tweet.quoted_status_result.result);
|
|
54
55
|
}
|
|
55
56
|
// Else, skip
|
|
@@ -65,9 +66,15 @@ var Tweet = /** @class */ (function () {
|
|
|
65
66
|
* @returns - The deserialized original retweeted tweet.
|
|
66
67
|
*/
|
|
67
68
|
Tweet.prototype.getRetweetedTweet = function (tweet) {
|
|
68
|
-
var _a, _b;
|
|
69
|
-
// If
|
|
70
|
-
if ((
|
|
69
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
70
|
+
// If retweet with limited visibility
|
|
71
|
+
if (((_a = tweet.legacy) === null || _a === void 0 ? void 0 : _a.retweeted_status_result) &&
|
|
72
|
+
((_d = (_c = (_b = tweet.legacy) === null || _b === void 0 ? void 0 : _b.retweeted_status_result) === null || _c === void 0 ? void 0 : _c.result) === null || _d === void 0 ? void 0 : _d.__typename) == 'TweetWithVisibilityResults' &&
|
|
73
|
+
((_h = (_g = (_f = (_e = tweet.legacy) === null || _e === void 0 ? void 0 : _e.retweeted_status_result) === null || _f === void 0 ? void 0 : _f.result) === null || _g === void 0 ? void 0 : _g.tweet) === null || _h === void 0 ? void 0 : _h.legacy)) {
|
|
74
|
+
return new Tweet(tweet.legacy.retweeted_status_result.result.tweet);
|
|
75
|
+
}
|
|
76
|
+
// If normal tweet
|
|
77
|
+
else if ((_l = (_k = (_j = tweet.legacy) === null || _j === void 0 ? void 0 : _j.retweeted_status_result) === null || _k === void 0 ? void 0 : _k.result) === null || _l === void 0 ? void 0 : _l.rest_id) {
|
|
71
78
|
return new Tweet(tweet.legacy.retweeted_status_result.result);
|
|
72
79
|
}
|
|
73
80
|
// Else, skip
|
|
@@ -85,18 +92,26 @@ var Tweet = /** @class */ (function () {
|
|
|
85
92
|
* @internal
|
|
86
93
|
*/
|
|
87
94
|
Tweet.list = function (response) {
|
|
88
|
-
var _a, _b;
|
|
95
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
89
96
|
var tweets = [];
|
|
90
97
|
// Extracting the matching data
|
|
91
98
|
var extract = (0, JsonUtils_1.findByFilter)(response, '__typename', 'TimelineTweet');
|
|
92
99
|
// Deserializing valid data
|
|
93
100
|
for (var _i = 0, extract_1 = extract; _i < extract_1.length; _i++) {
|
|
94
101
|
var item = extract_1[_i];
|
|
95
|
-
|
|
102
|
+
// If tweet with limited visibility
|
|
103
|
+
if (((_a = item.tweet_results) === null || _a === void 0 ? void 0 : _a.result) &&
|
|
104
|
+
((_c = (_b = item.tweet_results) === null || _b === void 0 ? void 0 : _b.result) === null || _c === void 0 ? void 0 : _c.__typename) == 'TweetWithVisibilityResults' &&
|
|
105
|
+
((_f = (_e = (_d = item.tweet_results) === null || _d === void 0 ? void 0 : _d.result) === null || _e === void 0 ? void 0 : _e.tweet) === null || _f === void 0 ? void 0 : _f.legacy)) {
|
|
106
|
+
tweets.push(new Tweet(item.tweet_results.result.tweet));
|
|
107
|
+
}
|
|
108
|
+
// If normal tweet
|
|
109
|
+
else if ((_h = (_g = item.tweet_results) === null || _g === void 0 ? void 0 : _g.result) === null || _h === void 0 ? void 0 : _h.legacy) {
|
|
96
110
|
// Logging
|
|
97
111
|
LogService_1.LogService.log(Logging_1.ELogActions.DESERIALIZE, { id: item.tweet_results.result.rest_id });
|
|
98
112
|
tweets.push(new Tweet(item.tweet_results.result));
|
|
99
113
|
}
|
|
114
|
+
// If invalid/unrecognized tweet
|
|
100
115
|
else {
|
|
101
116
|
// Logging
|
|
102
117
|
LogService_1.LogService.log(Logging_1.ELogActions.WARNING, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Tweet.js","sourceRoot":"","sources":["../../../src/models/data/Tweet.ts"],"names":[],"mappings":";;;AAAA,6CAQsB;AAEtB,+CAAkD;AAClD,oDAAsD;AAEtD,iEAAgE;AAEhE,+BAA8B;AAE9B;;;;GAIG;AACH;IAiDC;;OAEG;IACH,eAAmB,KAAgB;;QAClC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,WAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,GAAG,MAAA,MAAA,KAAK,CAAC,MAAM,CAAC,iBAAiB,0CAAE,KAAK,0CAAE,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,IAAI,UAAU,CAAC,KAAK,CAAC,EAArB,CAAqB,CAAC,CAAC;QAC1F,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC;QAC5G,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;QACjD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACK,8BAAc,GAAtB,UAAuB,KAAgB
|
|
1
|
+
{"version":3,"file":"Tweet.js","sourceRoot":"","sources":["../../../src/models/data/Tweet.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rettiwt-api",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.4",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"types": "dist/index.d.ts",
|
|
6
6
|
"description": "An API for fetching data from TwitterAPI, without any rate limits!",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"commander": "11.1.0",
|
|
37
37
|
"https-proxy-agent": "7.0.2",
|
|
38
38
|
"rettiwt-auth": "2.1.0",
|
|
39
|
-
"rettiwt-core": "4.3.
|
|
39
|
+
"rettiwt-core": "4.3.3"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "20.4.1",
|
package/src/models/data/Tweet.ts
CHANGED
|
@@ -102,13 +102,13 @@ export class Tweet {
|
|
|
102
102
|
// If tweet with limited visibility
|
|
103
103
|
if (
|
|
104
104
|
tweet.quoted_status_result &&
|
|
105
|
-
|
|
106
|
-
tweet.quoted_status_result.result
|
|
105
|
+
tweet.quoted_status_result?.result?.__typename == 'TweetWithVisibilityResults' &&
|
|
106
|
+
(tweet.quoted_status_result.result as ILimitedVisibilityTweet)?.tweet?.legacy
|
|
107
107
|
) {
|
|
108
108
|
return new Tweet((tweet.quoted_status_result.result as ILimitedVisibilityTweet).tweet);
|
|
109
109
|
}
|
|
110
110
|
// If normal tweet
|
|
111
|
-
else if (tweet.quoted_status_result
|
|
111
|
+
else if ((tweet.quoted_status_result?.result as ITweet)?.rest_id) {
|
|
112
112
|
return new Tweet(tweet.quoted_status_result.result as ITweet);
|
|
113
113
|
}
|
|
114
114
|
// Else, skip
|
|
@@ -125,9 +125,17 @@ export class Tweet {
|
|
|
125
125
|
* @returns - The deserialized original retweeted tweet.
|
|
126
126
|
*/
|
|
127
127
|
private getRetweetedTweet(tweet: IRawTweet): Tweet | undefined {
|
|
128
|
-
// If
|
|
129
|
-
if (
|
|
130
|
-
|
|
128
|
+
// If retweet with limited visibility
|
|
129
|
+
if (
|
|
130
|
+
tweet.legacy?.retweeted_status_result &&
|
|
131
|
+
tweet.legacy?.retweeted_status_result?.result?.__typename == 'TweetWithVisibilityResults' &&
|
|
132
|
+
(tweet.legacy?.retweeted_status_result?.result as ILimitedVisibilityTweet)?.tweet?.legacy
|
|
133
|
+
) {
|
|
134
|
+
return new Tweet((tweet.legacy.retweeted_status_result.result as ILimitedVisibilityTweet).tweet);
|
|
135
|
+
}
|
|
136
|
+
// If normal tweet
|
|
137
|
+
else if ((tweet.legacy?.retweeted_status_result?.result as ITweet)?.rest_id) {
|
|
138
|
+
return new Tweet(tweet.legacy.retweeted_status_result.result as ITweet);
|
|
131
139
|
}
|
|
132
140
|
// Else, skip
|
|
133
141
|
else {
|
|
@@ -152,12 +160,23 @@ export class Tweet {
|
|
|
152
160
|
|
|
153
161
|
// Deserializing valid data
|
|
154
162
|
for (const item of extract) {
|
|
155
|
-
|
|
163
|
+
// If tweet with limited visibility
|
|
164
|
+
if (
|
|
165
|
+
item.tweet_results?.result &&
|
|
166
|
+
item.tweet_results?.result?.__typename == 'TweetWithVisibilityResults' &&
|
|
167
|
+
(item.tweet_results?.result as ILimitedVisibilityTweet)?.tweet?.legacy
|
|
168
|
+
) {
|
|
169
|
+
tweets.push(new Tweet((item.tweet_results.result as ILimitedVisibilityTweet).tweet));
|
|
170
|
+
}
|
|
171
|
+
// If normal tweet
|
|
172
|
+
else if ((item.tweet_results?.result as ITweet)?.legacy) {
|
|
156
173
|
// Logging
|
|
157
|
-
LogService.log(ELogActions.DESERIALIZE, { id: item.tweet_results.result.rest_id });
|
|
174
|
+
LogService.log(ELogActions.DESERIALIZE, { id: (item.tweet_results.result as ITweet).rest_id });
|
|
158
175
|
|
|
159
|
-
tweets.push(new Tweet(item.tweet_results.result));
|
|
160
|
-
}
|
|
176
|
+
tweets.push(new Tweet(item.tweet_results.result as ITweet));
|
|
177
|
+
}
|
|
178
|
+
// If invalid/unrecognized tweet
|
|
179
|
+
else {
|
|
161
180
|
// Logging
|
|
162
181
|
LogService.log(ELogActions.WARNING, {
|
|
163
182
|
action: ELogActions.DESERIALIZE,
|