rettiwt-api 1.1.0 → 1.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.
Files changed (125) hide show
  1. package/.github/workflows/build-docs.yml +27 -0
  2. package/README.md +3 -1
  3. package/dist/Test.d.ts +0 -0
  4. package/dist/Test.js +2 -0
  5. package/dist/Test.js.map +1 -0
  6. package/dist/index.d.ts +16 -5
  7. package/dist/index.js +22 -8
  8. package/dist/index.js.map +1 -1
  9. package/dist/models/graphql/Global.d.ts +4 -0
  10. package/dist/models/graphql/Global.js +13 -0
  11. package/dist/models/graphql/Global.js.map +1 -0
  12. package/dist/models/graphql/TweetTypes.d.ts +6 -0
  13. package/dist/models/graphql/TweetTypes.js +156 -0
  14. package/dist/models/graphql/TweetTypes.js.map +1 -0
  15. package/dist/models/graphql/UserTypes.d.ts +3 -0
  16. package/dist/models/graphql/UserTypes.js +139 -0
  17. package/dist/models/graphql/UserTypes.js.map +1 -0
  18. package/dist/queries/RootQuery.d.ts +4 -0
  19. package/dist/queries/RootQuery.js +70 -0
  20. package/dist/queries/RootQuery.js.map +1 -0
  21. package/dist/resolvers/AccountResolver.d.ts +12 -0
  22. package/dist/resolvers/AccountResolver.js +84 -0
  23. package/dist/resolvers/AccountResolver.js.map +1 -0
  24. package/dist/resolvers/ResolverBase.d.ts +5 -0
  25. package/dist/resolvers/ResolverBase.js +11 -0
  26. package/dist/resolvers/ResolverBase.js.map +1 -0
  27. package/dist/resolvers/TweetResolver.d.ts +54 -0
  28. package/dist/resolvers/TweetResolver.js +332 -0
  29. package/dist/resolvers/TweetResolver.js.map +1 -0
  30. package/dist/resolvers/UserResolver.d.ts +38 -0
  31. package/dist/resolvers/UserResolver.js +253 -0
  32. package/dist/resolvers/UserResolver.js.map +1 -0
  33. package/dist/services/AuthService.d.ts +6 -2
  34. package/dist/services/AuthService.js +4 -3
  35. package/dist/services/AuthService.js.map +1 -1
  36. package/dist/services/CacheService.d.ts +12 -7
  37. package/dist/services/CacheService.js +12 -7
  38. package/dist/services/CacheService.js.map +1 -1
  39. package/dist/services/FetcherService.d.ts +32 -12
  40. package/dist/services/FetcherService.js +45 -14
  41. package/dist/services/FetcherService.js.map +1 -1
  42. package/dist/services/accounts/AccountService.d.ts +23 -6
  43. package/dist/services/accounts/AccountService.js +34 -9
  44. package/dist/services/accounts/AccountService.js.map +1 -1
  45. package/dist/services/data/TrendService.d.ts +17 -0
  46. package/dist/services/data/TrendService.js +116 -0
  47. package/dist/services/data/TrendService.js.map +1 -0
  48. package/dist/services/data/TweetService.d.ts +22 -15
  49. package/dist/services/data/TweetService.js +22 -15
  50. package/dist/services/data/TweetService.js.map +1 -1
  51. package/dist/services/data/UserAccountService.d.ts +42 -0
  52. package/dist/services/data/UserAccountService.js +239 -0
  53. package/dist/services/data/UserAccountService.js.map +1 -0
  54. package/dist/services/data/UserService.d.ts +21 -15
  55. package/dist/services/data/UserService.js +21 -15
  56. package/dist/services/data/UserService.js.map +1 -1
  57. package/dist/services/helper/Deserializers.d.ts +19 -0
  58. package/dist/services/helper/Deserializers.js +115 -0
  59. package/dist/services/helper/Deserializers.js.map +1 -0
  60. package/dist/services/helper/Extractors.d.ts +104 -0
  61. package/dist/services/helper/Extractors.js +432 -0
  62. package/dist/services/helper/Extractors.js.map +1 -0
  63. package/dist/services/helper/Urls.d.ts +85 -0
  64. package/dist/services/helper/Urls.js +130 -0
  65. package/dist/services/helper/Urls.js.map +1 -0
  66. package/dist/services/helper/extractors/Trends.d.ts +3 -0
  67. package/dist/services/helper/extractors/Trends.js +51 -0
  68. package/dist/services/helper/extractors/Trends.js.map +1 -0
  69. package/dist/services/helper/urls/Trends.d.ts +7 -0
  70. package/dist/services/helper/urls/Trends.js +13 -0
  71. package/dist/services/helper/urls/Trends.js.map +1 -0
  72. package/dist/types/Authentication.d.ts +27 -2
  73. package/dist/types/Authentication.js.map +1 -1
  74. package/dist/types/HTTP.d.ts +3 -1
  75. package/dist/types/HTTP.js +3 -1
  76. package/dist/types/HTTP.js.map +1 -1
  77. package/dist/types/Resolvers.d.ts +6 -1
  78. package/dist/types/Service.d.ts +30 -0
  79. package/dist/types/Service.js +19 -0
  80. package/dist/types/Service.js.map +1 -0
  81. package/dist/types/Trends.d.ts +50 -0
  82. package/dist/types/Trends.js +3 -0
  83. package/dist/types/Trends.js.map +1 -0
  84. package/dist/types/Tweet.d.ts +40 -0
  85. package/dist/types/Tweet.js +5 -0
  86. package/dist/types/Tweet.js.map +1 -0
  87. package/dist/types/UserAccount.d.ts +19 -0
  88. package/dist/types/UserAccount.js +4 -0
  89. package/dist/types/UserAccount.js.map +1 -0
  90. package/dist/types/data/Errors.d.ts +9 -3
  91. package/dist/types/data/Errors.js +9 -3
  92. package/dist/types/data/Errors.js.map +1 -1
  93. package/dist/types/data/Service.d.ts +19 -5
  94. package/dist/types/data/Service.js +6 -3
  95. package/dist/types/data/Service.js.map +1 -1
  96. package/dist/types/data/Tweet.d.ts +60 -3
  97. package/dist/types/data/Tweet.js +0 -1
  98. package/dist/types/data/Tweet.js.map +1 -1
  99. package/dist/types/data/User.d.ts +20 -1
  100. package/dist/types/data/User.js +0 -1
  101. package/dist/types/data/User.js.map +1 -1
  102. package/dist/types/graphql/Errors.d.ts +15 -0
  103. package/dist/types/graphql/Errors.js +23 -0
  104. package/dist/types/graphql/Errors.js.map +1 -0
  105. package/dist/types/raw/general/Trends.d.ts +324 -0
  106. package/dist/types/raw/general/Trends.js +3 -0
  107. package/dist/types/raw/general/Trends.js.map +1 -0
  108. package/dist/types/raw/user/Tweets.d.ts +2428 -0
  109. package/dist/types/raw/user/Tweets.js +3 -0
  110. package/dist/types/raw/user/Tweets.js.map +1 -0
  111. package/package.json +5 -4
  112. package/src/index.ts +19 -6
  113. package/src/services/AuthService.ts +13 -7
  114. package/src/services/CacheService.ts +12 -7
  115. package/src/services/FetcherService.ts +62 -21
  116. package/src/services/accounts/AccountService.ts +38 -12
  117. package/src/services/data/TweetService.ts +25 -18
  118. package/src/services/data/UserService.ts +21 -15
  119. package/src/types/Authentication.ts +27 -2
  120. package/src/types/HTTP.ts +4 -2
  121. package/src/types/Resolvers.ts +14 -6
  122. package/src/types/data/Errors.ts +10 -4
  123. package/src/types/data/Service.ts +28 -11
  124. package/src/types/data/Tweet.ts +109 -31
  125. package/src/types/data/User.ts +47 -17
@@ -0,0 +1,239 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
41
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
42
+ return new (P || (P = Promise))(function (resolve, reject) {
43
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
44
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
45
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
46
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
47
+ });
48
+ };
49
+ var __generator = (this && this.__generator) || function (thisArg, body) {
50
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
51
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
52
+ function verb(n) { return function (v) { return step([n, v]); }; }
53
+ function step(op) {
54
+ if (f) throw new TypeError("Generator is already executing.");
55
+ while (_) try {
56
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
57
+ if (y = 0, t) op = [op[0] & 2, t.value];
58
+ switch (op[0]) {
59
+ case 0: case 1: t = op; break;
60
+ case 4: _.label++; return { value: op[1], done: false };
61
+ case 5: _.label++; y = op[1]; op = [0]; continue;
62
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
63
+ default:
64
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
65
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
66
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
67
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
68
+ if (t[2]) _.ops.pop();
69
+ _.trys.pop(); continue;
70
+ }
71
+ op = body.call(thisArg, _);
72
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
73
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
74
+ }
75
+ };
76
+ exports.__esModule = true;
77
+ exports.UserAccountService = void 0;
78
+ // SERVICES
79
+ var FetcherService_1 = require("../FetcherService");
80
+ // URLS
81
+ var Urls = __importStar(require("../helper/Urls"));
82
+ // EXTRACTORS
83
+ var Extractors = __importStar(require("../helper/Extractors"));
84
+ // DESERIALIZERS
85
+ var Deserializers = __importStar(require("../helper/Deserializers"));
86
+ /**
87
+ * A service that deals with fetching of data related to user account
88
+ */
89
+ var UserAccountService = /** @class */ (function (_super) {
90
+ __extends(UserAccountService, _super);
91
+ // MEMBER METHODS
92
+ function UserAccountService(auth) {
93
+ return _super.call(this, auth) || this;
94
+ }
95
+ /**
96
+ * @returns The user account details of the given user
97
+ * @param screenName The screen name of the target user.
98
+ */
99
+ UserAccountService.prototype.getUserAccountDetails = function (screenName) {
100
+ return __awaiter(this, void 0, void 0, function () {
101
+ var res, data, user;
102
+ return __generator(this, function (_a) {
103
+ switch (_a.label) {
104
+ case 0: return [4 /*yield*/, this.request(Urls.userAccountUrl(screenName), false).then(function (res) { return res.data; })];
105
+ case 1:
106
+ res = _a.sent();
107
+ data = Extractors.extractUserAccountDetails(res);
108
+ // Caching data
109
+ this.cacheData(data);
110
+ user = Deserializers.toUser(data.required[0]);
111
+ return [2 /*return*/, user];
112
+ }
113
+ });
114
+ });
115
+ };
116
+ /**
117
+ * @returns The user account details of the user with given rest id
118
+ * @param restId The screen name of the target user.
119
+ */
120
+ UserAccountService.prototype.getUserAccountDetailsById = function (restId) {
121
+ return __awaiter(this, void 0, void 0, function () {
122
+ var cachedData, res, data, user;
123
+ return __generator(this, function (_a) {
124
+ switch (_a.label) {
125
+ case 0: return [4 /*yield*/, this.readData(restId)];
126
+ case 1:
127
+ cachedData = _a.sent();
128
+ if (!cachedData) return [3 /*break*/, 2];
129
+ return [2 /*return*/, cachedData];
130
+ case 2: return [4 /*yield*/, this.request(Urls.userAccountByIdUrl(restId), false).then(function (res) { return res.data; })];
131
+ case 3:
132
+ res = _a.sent();
133
+ data = Extractors.extractUserAccountDetails(res);
134
+ // Caching data
135
+ this.cacheData(data);
136
+ user = Deserializers.toUser(data.required[0]);
137
+ return [2 /*return*/, user];
138
+ }
139
+ });
140
+ });
141
+ };
142
+ /**
143
+ * @returns The list of users followed by the target user
144
+ * @param userId The rest id of the target user
145
+ * @param count The batch size of the list
146
+ * @param cursor The cursor to next batch. If blank, first batch is fetched
147
+ */
148
+ UserAccountService.prototype.getUserFollowing = function (userId, count, cursor) {
149
+ return __awaiter(this, void 0, void 0, function () {
150
+ var res, data, users;
151
+ return __generator(this, function (_a) {
152
+ switch (_a.label) {
153
+ case 0:
154
+ // If user is not authenticated, abort
155
+ if (!this.isAuthenticated) {
156
+ return [2 /*return*/, { error: new Error('Cannot fetch user following without authentication!') }];
157
+ }
158
+ return [4 /*yield*/, this.request(Urls.userFollowingUrl(userId, count, cursor)).then(function (res) { return res.data; })];
159
+ case 1:
160
+ res = _a.sent();
161
+ data = Extractors.extractUserFollow(res);
162
+ // Caching data
163
+ this.cacheData(data);
164
+ users = data.required.map(function (item) { return Deserializers.toUser(item); });
165
+ return [2 /*return*/, {
166
+ list: users,
167
+ next: { value: data.cursor }
168
+ }];
169
+ }
170
+ });
171
+ });
172
+ };
173
+ /**
174
+ * @returns The list of users following the target user
175
+ * @param userId The rest id of the target user
176
+ * @param count The batch size of the list
177
+ * @param cursor The cursor to next batch. If blank, first batch is fetched
178
+ */
179
+ UserAccountService.prototype.getUserFollowers = function (userId, count, cursor) {
180
+ return __awaiter(this, void 0, void 0, function () {
181
+ var res, data, users;
182
+ return __generator(this, function (_a) {
183
+ switch (_a.label) {
184
+ case 0:
185
+ // If user is not authenticated, abort
186
+ if (!this.isAuthenticated) {
187
+ return [2 /*return*/, { error: new Error('Cannot fetch user followers without authentication!') }];
188
+ }
189
+ return [4 /*yield*/, this.request(Urls.userFollowersUrl(userId, (count > 20) ? (count - 20) : count, cursor)).then(function (res) { return res.data; })];
190
+ case 1:
191
+ res = _a.sent();
192
+ data = Extractors.extractUserFollow(res);
193
+ // Caching data
194
+ this.cacheData(data);
195
+ users = data.required.map(function (item) { return Deserializers.toUser(item); });
196
+ return [2 /*return*/, {
197
+ list: users,
198
+ next: { value: data.cursor }
199
+ }];
200
+ }
201
+ });
202
+ });
203
+ };
204
+ /**
205
+ * @returns The list of tweets liked by the target user
206
+ * @param userId The rest id of the target user
207
+ * @param count The batch size of the list
208
+ * @param cursor The cursor to next batch. If blank, first batch is fetched
209
+ */
210
+ UserAccountService.prototype.getUserLikes = function (userId, count, cursor) {
211
+ return __awaiter(this, void 0, void 0, function () {
212
+ var res, data, tweets;
213
+ return __generator(this, function (_a) {
214
+ switch (_a.label) {
215
+ case 0:
216
+ // If user is not authenticated, abort
217
+ if (!this.isAuthenticated) {
218
+ return [2 /*return*/, { error: new Error('Cannot fetch user likes without authentication!') }];
219
+ }
220
+ return [4 /*yield*/, this.request(Urls.userLikesUrl(userId, count, cursor)).then(function (res) { return res.data; })];
221
+ case 1:
222
+ res = _a.sent();
223
+ data = Extractors.extractUserLikes(res);
224
+ // Caching data
225
+ this.cacheData(data);
226
+ tweets = data.required.map(function (item) { return Deserializers.toTweet(item); });
227
+ return [2 /*return*/, {
228
+ list: tweets,
229
+ next: { value: data.cursor }
230
+ }];
231
+ }
232
+ });
233
+ });
234
+ };
235
+ return UserAccountService;
236
+ }(FetcherService_1.FetcherService));
237
+ exports.UserAccountService = UserAccountService;
238
+ ;
239
+ //# sourceMappingURL=UserAccountService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserAccountService.js","sourceRoot":"","sources":["../../../src/services/data/UserAccountService.ts"],"names":[],"mappings":"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"}
@@ -4,39 +4,45 @@ import { User } from '../../types/data/User';
4
4
  import { Tweet } from '../../types/data/Tweet';
5
5
  import { CursoredData } from '../../types/data/Service';
6
6
  /**
7
- * A service that deals with fetching of data related to user account
7
+ * Handles fetching of data related to user account
8
8
  */
9
9
  export declare class UserService extends FetcherService {
10
+ /**
11
+ * @param auth The AuthService instance to use for authentication.
12
+ */
10
13
  constructor(auth: AuthService);
11
14
  /**
12
- * @returns The details of the given user
13
15
  * @param screenName The screen name of the target user.
16
+ * @returns The details of the given user.
14
17
  */
15
18
  getUserDetails(screenName: string): Promise<User>;
16
19
  /**
17
- * @returns The details of the user with given rest id
18
20
  * @param restId The screen name of the target user.
21
+ * @returns The details of the user with given rest id.
19
22
  */
20
23
  getUserDetailsById(restId: string): Promise<User>;
21
24
  /**
22
- * @returns The list of users followed by the target user
23
- * @param userId The rest id of the target user
24
- * @param count The number of following to fetch, should be >= 40 (when no cursor is provided) and <=100
25
- * @param cursor The cursor to next batch. If blank, first batch is fetched
25
+ * @param userId The rest id of the target user.
26
+ * @param count The number of following to fetch.
27
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
28
+ * @returns The list of users followed by the target user.
29
+ * @remarks count must be >= 40 (when no cursor is provided) and <=100.
26
30
  */
27
31
  getUserFollowing(userId: string, count: number, cursor: string): Promise<CursoredData<User>>;
28
32
  /**
29
- * @returns The list of users following the target user
30
- * @param userId The rest id of the target user
31
- * @param count The number of followers to fetch, should be >= 40 (when no cursor is provided) and <=100
32
- * @param cursor The cursor to next batch. If blank, first batch is fetched
33
+ * @param userId The rest id of the target user.
34
+ * @param count The number of followers to fetch.
35
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
36
+ * @returns The list of users following the target user.
37
+ * @remarks count must be >= 40 (when no cursor is provided) and <=100.
33
38
  */
34
39
  getUserFollowers(userId: string, count: number, cursor: string): Promise<CursoredData<User>>;
35
40
  /**
36
- * @returns The list of tweets liked by the target user
37
- * @param userId The rest id of the target user
38
- * @param count The number of likes to fetch, must be >= 40 (when no cursor is provided) and <= 100
39
- * @param cursor The cursor to next batch. If blank, first batch is fetched
41
+ * @param userId The rest id of the target user.
42
+ * @param count The number of likes to fetch.
43
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
44
+ * @returns The list of tweets liked by the target user.
45
+ * @remarks count must be >= 40 (when no cursor is provided) and <= 100.
40
46
  */
41
47
  getUserLikes(userId: string, count: number, cursor: string): Promise<CursoredData<Tweet>>;
42
48
  }
@@ -86,17 +86,20 @@ var UserExtractors = __importStar(require("../helper/extractors/Users"));
86
86
  var UserDeserializers = __importStar(require("../helper/deserializers/Users"));
87
87
  var TweetDeserializers = __importStar(require("../helper/deserializers/Tweets"));
88
88
  /**
89
- * A service that deals with fetching of data related to user account
89
+ * Handles fetching of data related to user account
90
90
  */
91
91
  var UserService = /** @class */ (function (_super) {
92
92
  __extends(UserService, _super);
93
93
  // MEMBER METHODS
94
+ /**
95
+ * @param auth The AuthService instance to use for authentication.
96
+ */
94
97
  function UserService(auth) {
95
98
  return _super.call(this, auth) || this;
96
99
  }
97
100
  /**
98
- * @returns The details of the given user
99
101
  * @param screenName The screen name of the target user.
102
+ * @returns The details of the given user.
100
103
  */
101
104
  UserService.prototype.getUserDetails = function (screenName) {
102
105
  return __awaiter(this, void 0, void 0, function () {
@@ -116,8 +119,8 @@ var UserService = /** @class */ (function (_super) {
116
119
  });
117
120
  };
118
121
  /**
119
- * @returns The details of the user with given rest id
120
122
  * @param restId The screen name of the target user.
123
+ * @returns The details of the user with given rest id.
121
124
  */
122
125
  UserService.prototype.getUserDetailsById = function (restId) {
123
126
  return __awaiter(this, void 0, void 0, function () {
@@ -144,10 +147,11 @@ var UserService = /** @class */ (function (_super) {
144
147
  });
145
148
  };
146
149
  /**
147
- * @returns The list of users followed by the target user
148
- * @param userId The rest id of the target user
149
- * @param count The number of following to fetch, should be >= 40 (when no cursor is provided) and <=100
150
- * @param cursor The cursor to next batch. If blank, first batch is fetched
150
+ * @param userId The rest id of the target user.
151
+ * @param count The number of following to fetch.
152
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
153
+ * @returns The list of users followed by the target user.
154
+ * @remarks count must be >= 40 (when no cursor is provided) and <=100.
151
155
  */
152
156
  UserService.prototype.getUserFollowing = function (userId, count, cursor) {
153
157
  return __awaiter(this, void 0, void 0, function () {
@@ -179,10 +183,11 @@ var UserService = /** @class */ (function (_super) {
179
183
  });
180
184
  };
181
185
  /**
182
- * @returns The list of users following the target user
183
- * @param userId The rest id of the target user
184
- * @param count The number of followers to fetch, should be >= 40 (when no cursor is provided) and <=100
185
- * @param cursor The cursor to next batch. If blank, first batch is fetched
186
+ * @param userId The rest id of the target user.
187
+ * @param count The number of followers to fetch.
188
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
189
+ * @returns The list of users following the target user.
190
+ * @remarks count must be >= 40 (when no cursor is provided) and <=100.
186
191
  */
187
192
  UserService.prototype.getUserFollowers = function (userId, count, cursor) {
188
193
  return __awaiter(this, void 0, void 0, function () {
@@ -214,10 +219,11 @@ var UserService = /** @class */ (function (_super) {
214
219
  });
215
220
  };
216
221
  /**
217
- * @returns The list of tweets liked by the target user
218
- * @param userId The rest id of the target user
219
- * @param count The number of likes to fetch, must be >= 40 (when no cursor is provided) and <= 100
220
- * @param cursor The cursor to next batch. If blank, first batch is fetched
222
+ * @param userId The rest id of the target user.
223
+ * @param count The number of likes to fetch.
224
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
225
+ * @returns The list of tweets liked by the target user.
226
+ * @remarks count must be >= 40 (when no cursor is provided) and <= 100.
221
227
  */
222
228
  UserService.prototype.getUserLikes = function (userId, count, cursor) {
223
229
  return __awaiter(this, void 0, void 0, function () {
@@ -1 +1 @@
1
- {"version":3,"file":"UserService.js","sourceRoot":"","sources":["../../../src/services/data/UserService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserService.js","sourceRoot":"","sources":["../../../src/services/data/UserService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { User } from '../../types/UserAccount';
2
+ import { Tweet, TweetEntities } from '../../types/Tweet';
3
+ import { Result as RawUser } from '../../types/raw/user/User';
4
+ import { Result as RawTweet, Entities2 as RawTweetEntities } from '../../types/raw/tweet/Tweet';
5
+ /**
6
+ * @returns A User object containing the user details
7
+ * @param data The raw user data from Twitter API
8
+ */
9
+ export declare function toUser(data: RawUser): User;
10
+ /**
11
+ * @returns A TweetEntities object containing the various tweet entities
12
+ * @param data The raw tweet entities data from the response received from TwitterAPI
13
+ */
14
+ export declare function toTweetEntities(data: RawTweetEntities): TweetEntities;
15
+ /**
16
+ * @returns A Tweet object containing the tweet data
17
+ * @param data The raw tweet data from the response received from TwitterAPI
18
+ */
19
+ export declare function toTweet(data: RawTweet): Tweet;
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ exports.__esModule = true;
26
+ exports.toTweet = exports.toTweetEntities = exports.toUser = void 0;
27
+ // PARSERS
28
+ var Parsers = __importStar(require("./Parser"));
29
+ /**
30
+ * @returns A User object containing the user details
31
+ * @param data The raw user data from Twitter API
32
+ */
33
+ function toUser(data) {
34
+ return {
35
+ id: data.rest_id,
36
+ userName: data.legacy.screen_name,
37
+ fullName: data.legacy.name,
38
+ createdAt: data.legacy.created_at,
39
+ description: data.legacy.description,
40
+ isVerified: data.legacy.verified,
41
+ favouritesCount: data.legacy.favourites_count,
42
+ followersCount: data.legacy.followers_count,
43
+ followingsCount: data.legacy.friends_count,
44
+ statusesCount: data.legacy.statuses_count,
45
+ location: data.legacy.location,
46
+ pinnedTweet: data.legacy.pinned_tweet_ids_str[0],
47
+ profileBanner: data.legacy.profile_banner_url,
48
+ profileImage: data.legacy.profile_image_url_https
49
+ };
50
+ }
51
+ exports.toUser = toUser;
52
+ /**
53
+ * @returns A TweetEntities object containing the various tweet entities
54
+ * @param data The raw tweet entities data from the response received from TwitterAPI
55
+ */
56
+ function toTweetEntities(data) {
57
+ var entities = {
58
+ mentionedUsers: [],
59
+ urls: [],
60
+ media: [],
61
+ hashtags: []
62
+ };
63
+ // Extracting user mentions
64
+ if (data.user_mentions) {
65
+ for (var _i = 0, _a = data.user_mentions; _i < _a.length; _i++) {
66
+ var user = _a[_i];
67
+ entities.mentionedUsers.push(user.id_str);
68
+ }
69
+ }
70
+ // Extracting urls
71
+ if (data.urls) {
72
+ for (var _b = 0, _c = data.urls; _b < _c.length; _b++) {
73
+ var url = _c[_b];
74
+ entities.urls.push(url.expanded_url);
75
+ }
76
+ }
77
+ // Extracting hashtags
78
+ if (data.hashtags) {
79
+ for (var _d = 0, _e = data.hashtags; _d < _e.length; _d++) {
80
+ var hashtag = _e[_d];
81
+ entities.hashtags.push(hashtag.text);
82
+ }
83
+ }
84
+ // Extracting media urls (if any)
85
+ if (data.media) {
86
+ for (var _f = 0, _g = data.media; _f < _g.length; _f++) {
87
+ var media = _g[_f];
88
+ entities.media.push(media.media_url_https);
89
+ }
90
+ }
91
+ return entities;
92
+ }
93
+ exports.toTweetEntities = toTweetEntities;
94
+ /**
95
+ * @returns A Tweet object containing the tweet data
96
+ * @param data The raw tweet data from the response received from TwitterAPI
97
+ */
98
+ function toTweet(data) {
99
+ return {
100
+ id: data.rest_id,
101
+ createdAt: data.legacy.created_at,
102
+ tweetBy: data.legacy.user_id_str,
103
+ entities: toTweetEntities(data.legacy.entities),
104
+ quoted: data.legacy.quoted_status_id_str,
105
+ fullText: Parsers.normalizeText(data.legacy.full_text),
106
+ replyTo: data.legacy.in_reply_to_status_id_str,
107
+ lang: data.legacy.lang,
108
+ quoteCount: data.legacy.quote_count,
109
+ replyCount: data.legacy.reply_count,
110
+ retweetCount: data.legacy.retweet_count,
111
+ likeCount: data.legacy.favorite_count
112
+ };
113
+ }
114
+ exports.toTweet = toTweet;
115
+ //# sourceMappingURL=Deserializers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Deserializers.js","sourceRoot":"","sources":["../../../src/services/helper/Deserializers.ts"],"names":[],"mappings":"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"}