rettiwt-api 5.0.0-alpha.0 → 5.0.0-alpha.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 (179) hide show
  1. package/.eslintrc.js +2 -3
  2. package/.github/workflows/documentation.yml +1 -1
  3. package/.github/workflows/publish-alpha.yml +1 -1
  4. package/.github/workflows/publish.yml +1 -1
  5. package/.prettierignore +1 -1
  6. package/.tool-versions +1 -1
  7. package/README.md +100 -100
  8. package/dist/Rettiwt.d.ts +1 -1
  9. package/dist/Rettiwt.js +15 -8
  10. package/dist/Rettiwt.js.map +1 -1
  11. package/dist/cli.js +8 -11
  12. package/dist/cli.js.map +1 -1
  13. package/dist/collections/Extractors.d.ts +1 -0
  14. package/dist/collections/Extractors.js +38 -69
  15. package/dist/collections/Extractors.js.map +1 -1
  16. package/dist/collections/Groups.js +2 -1
  17. package/dist/collections/Groups.js.map +1 -1
  18. package/dist/collections/Requests.d.ts +3 -3
  19. package/dist/collections/Requests.js +36 -35
  20. package/dist/collections/Requests.js.map +1 -1
  21. package/dist/commands/List.js +21 -78
  22. package/dist/commands/List.js.map +1 -1
  23. package/dist/commands/Tweet.js +185 -370
  24. package/dist/commands/Tweet.js.map +1 -1
  25. package/dist/commands/User.js +129 -306
  26. package/dist/commands/User.js.map +1 -1
  27. package/dist/enums/Authentication.d.ts +18 -0
  28. package/dist/enums/Authentication.js +24 -0
  29. package/dist/enums/Authentication.js.map +1 -0
  30. package/dist/enums/Data.d.ts +12 -0
  31. package/dist/enums/Data.js +14 -1
  32. package/dist/enums/Data.js.map +1 -1
  33. package/dist/enums/Resource.d.ts +1 -0
  34. package/dist/enums/Resource.js +1 -0
  35. package/dist/enums/Resource.js.map +1 -1
  36. package/dist/helper/CliUtils.js +1 -2
  37. package/dist/helper/CliUtils.js.map +1 -1
  38. package/dist/helper/JsonUtils.js +6 -11
  39. package/dist/helper/JsonUtils.js.map +1 -1
  40. package/dist/index.d.ts +1 -2
  41. package/dist/index.js +1 -2
  42. package/dist/index.js.map +1 -1
  43. package/dist/models/args/FetchArgs.d.ts +4 -133
  44. package/dist/models/args/FetchArgs.js +12 -416
  45. package/dist/models/args/FetchArgs.js.map +1 -1
  46. package/dist/models/args/PostArgs.d.ts +16 -101
  47. package/dist/models/args/PostArgs.js +26 -258
  48. package/dist/models/args/PostArgs.js.map +1 -1
  49. package/dist/models/auth/AccountCredential.d.ts +13 -0
  50. package/dist/models/auth/AccountCredential.js +21 -0
  51. package/dist/models/auth/AccountCredential.js.map +1 -0
  52. package/dist/models/auth/AuthCookie.d.ts +19 -0
  53. package/dist/models/auth/AuthCookie.js +53 -0
  54. package/dist/models/auth/AuthCookie.js.map +1 -0
  55. package/dist/models/auth/AuthCredential.d.ts +28 -0
  56. package/dist/models/auth/AuthCredential.js +76 -0
  57. package/dist/models/auth/AuthCredential.js.map +1 -0
  58. package/dist/models/data/CursoredData.d.ts +3 -4
  59. package/dist/models/data/CursoredData.js +19 -19
  60. package/dist/models/data/CursoredData.js.map +1 -1
  61. package/dist/models/data/List.d.ts +2 -8
  62. package/dist/models/data/List.js +10 -4
  63. package/dist/models/data/List.js.map +1 -1
  64. package/dist/models/data/Notification.d.ts +5 -21
  65. package/dist/models/data/Notification.js +24 -33
  66. package/dist/models/data/Notification.js.map +1 -1
  67. package/dist/models/data/Tweet.d.ts +6 -23
  68. package/dist/models/data/Tweet.js +93 -97
  69. package/dist/models/data/Tweet.js.map +1 -1
  70. package/dist/models/data/User.d.ts +2 -15
  71. package/dist/models/data/User.js +33 -23
  72. package/dist/models/data/User.js.map +1 -1
  73. package/dist/models/errors/ApiError.js +8 -24
  74. package/dist/models/errors/ApiError.js.map +1 -1
  75. package/dist/models/errors/HttpError.js +8 -24
  76. package/dist/models/errors/HttpError.js.map +1 -1
  77. package/dist/models/errors/RettiwtError.js +5 -23
  78. package/dist/models/errors/RettiwtError.js.map +1 -1
  79. package/dist/models/errors/TimeoutError.js +5 -22
  80. package/dist/models/errors/TimeoutError.js.map +1 -1
  81. package/dist/services/{public → internal}/AuthService.d.ts +5 -34
  82. package/dist/services/internal/AuthService.js +109 -0
  83. package/dist/services/internal/AuthService.js.map +1 -0
  84. package/dist/services/internal/ErrorService.js +38 -40
  85. package/dist/services/internal/ErrorService.js.map +1 -1
  86. package/dist/services/internal/LogService.d.ts +0 -6
  87. package/dist/services/internal/LogService.js +12 -32
  88. package/dist/services/internal/LogService.js.map +1 -1
  89. package/dist/services/public/FetcherService.d.ts +5 -3
  90. package/dist/services/public/FetcherService.js +96 -141
  91. package/dist/services/public/FetcherService.js.map +1 -1
  92. package/dist/services/public/ListService.js +31 -100
  93. package/dist/services/public/ListService.js.map +1 -1
  94. package/dist/services/public/TweetService.d.ts +29 -4
  95. package/dist/services/public/TweetService.js +208 -386
  96. package/dist/services/public/TweetService.js.map +1 -1
  97. package/dist/services/public/UserService.js +186 -385
  98. package/dist/services/public/UserService.js.map +1 -1
  99. package/dist/types/RettiwtConfig.d.ts +8 -0
  100. package/dist/types/args/FetchArgs.d.ts +59 -0
  101. package/dist/types/args/FetchArgs.js +3 -0
  102. package/dist/types/args/FetchArgs.js.map +1 -0
  103. package/dist/types/args/PostArgs.d.ts +56 -0
  104. package/dist/types/args/PostArgs.js +3 -0
  105. package/dist/types/args/PostArgs.js.map +1 -0
  106. package/dist/types/auth/AccountCredential.d.ts +11 -0
  107. package/dist/types/auth/AccountCredential.js +3 -0
  108. package/dist/types/auth/AccountCredential.js.map +1 -0
  109. package/dist/types/auth/AuthCookie.d.ts +13 -0
  110. package/dist/types/auth/AuthCookie.js +3 -0
  111. package/dist/types/auth/AuthCookie.js.map +1 -0
  112. package/dist/types/auth/AuthCredential.d.ts +21 -0
  113. package/dist/types/auth/AuthCredential.js +3 -0
  114. package/dist/types/auth/AuthCredential.js.map +1 -0
  115. package/dist/types/data/CursoredData.d.ts +25 -0
  116. package/dist/types/data/CursoredData.js +3 -0
  117. package/dist/types/data/CursoredData.js.map +1 -0
  118. package/dist/types/data/List.d.ts +21 -0
  119. package/dist/types/data/List.js +3 -0
  120. package/dist/types/data/List.js.map +1 -0
  121. package/dist/types/data/Notification.d.ts +20 -0
  122. package/dist/types/data/Notification.js +3 -0
  123. package/dist/types/data/Notification.js.map +1 -0
  124. package/dist/types/data/Tweet.d.ts +71 -0
  125. package/dist/types/data/Tweet.js +3 -0
  126. package/dist/types/data/Tweet.js.map +1 -0
  127. package/dist/types/data/User.d.ts +35 -0
  128. package/dist/types/data/User.js +3 -0
  129. package/dist/types/data/User.js.map +1 -0
  130. package/eslint.config.mjs +17 -0
  131. package/package.json +22 -19
  132. package/src/Rettiwt.ts +1 -1
  133. package/src/cli.ts +0 -2
  134. package/src/collections/Extractors.ts +2 -0
  135. package/src/collections/Groups.ts +1 -0
  136. package/src/collections/Requests.ts +37 -36
  137. package/src/enums/Authentication.ts +19 -0
  138. package/src/enums/Data.ts +13 -0
  139. package/src/enums/Resource.ts +1 -0
  140. package/src/helper/JsonUtils.ts +1 -1
  141. package/src/index.ts +1 -2
  142. package/src/models/args/FetchArgs.ts +4 -470
  143. package/src/models/args/PostArgs.ts +20 -285
  144. package/src/models/auth/AccountCredential.ts +19 -0
  145. package/src/models/auth/AuthCookie.ts +56 -0
  146. package/src/models/auth/AuthCredential.ts +83 -0
  147. package/src/models/data/CursoredData.ts +12 -9
  148. package/src/models/data/List.ts +3 -14
  149. package/src/models/data/Notification.ts +6 -28
  150. package/src/models/data/Tweet.ts +28 -70
  151. package/src/models/data/User.ts +5 -31
  152. package/src/services/{public → internal}/AuthService.ts +28 -55
  153. package/src/services/internal/LogService.ts +4 -19
  154. package/src/services/public/FetcherService.ts +18 -8
  155. package/src/services/public/TweetService.ts +44 -4
  156. package/src/services/public/UserService.ts +2 -2
  157. package/src/types/RettiwtConfig.ts +7 -0
  158. package/src/types/args/FetchArgs.ts +64 -0
  159. package/src/types/args/PostArgs.ts +62 -0
  160. package/src/types/auth/AccountCredential.ts +13 -0
  161. package/src/types/auth/AuthCookie.ts +20 -0
  162. package/src/types/auth/AuthCredential.ts +26 -0
  163. package/src/types/data/CursoredData.ts +28 -0
  164. package/src/types/data/List.ts +27 -0
  165. package/src/types/data/Notification.ts +26 -0
  166. package/src/types/data/Tweet.ts +96 -0
  167. package/src/types/data/User.ts +48 -0
  168. package/tsconfig.json +7 -5
  169. package/.eslintignore +0 -3
  170. package/dist/commands/Auth.d.ts +0 -10
  171. package/dist/commands/Auth.js +0 -101
  172. package/dist/commands/Auth.js.map +0 -1
  173. package/dist/models/errors/DataValidationError.d.ts +0 -30
  174. package/dist/models/errors/DataValidationError.js +0 -34
  175. package/dist/models/errors/DataValidationError.js.map +0 -1
  176. package/dist/services/public/AuthService.js +0 -205
  177. package/dist/services/public/AuthService.js.map +0 -1
  178. package/src/commands/Auth.ts +0 -46
  179. package/src/models/errors/DataValidationError.ts +0 -44
@@ -1,88 +1,58 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
- 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;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
- }
48
- };
49
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
50
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
4
  };
52
5
  Object.defineProperty(exports, "__esModule", { value: true });
53
6
  exports.FetcherService = void 0;
54
- var https_1 = __importDefault(require("https"));
55
- var axios_1 = __importDefault(require("axios"));
56
- var https_proxy_agent_1 = require("https-proxy-agent");
57
- var rettiwt_auth_1 = require("rettiwt-auth");
58
- var Groups_1 = require("../../collections/Groups");
59
- var Requests_1 = require("../../collections/Requests");
60
- var Api_1 = require("../../enums/Api");
61
- var Logging_1 = require("../../enums/Logging");
62
- var FetchArgs_1 = require("../../models/args/FetchArgs");
63
- var PostArgs_1 = require("../../models/args/PostArgs");
64
- var ErrorService_1 = require("../internal/ErrorService");
65
- var LogService_1 = require("../internal/LogService");
66
- var AuthService_1 = require("./AuthService");
7
+ const https_1 = __importDefault(require("https"));
8
+ const axios_1 = __importDefault(require("axios"));
9
+ const cookiejar_1 = require("cookiejar");
10
+ const https_proxy_agent_1 = require("https-proxy-agent");
11
+ const Groups_1 = require("../../collections/Groups");
12
+ const Requests_1 = require("../../collections/Requests");
13
+ const Api_1 = require("../../enums/Api");
14
+ const Logging_1 = require("../../enums/Logging");
15
+ const FetchArgs_1 = require("../../models/args/FetchArgs");
16
+ const PostArgs_1 = require("../../models/args/PostArgs");
17
+ const AuthCredential_1 = require("../../models/auth/AuthCredential");
18
+ const AuthService_1 = require("../internal/AuthService");
19
+ const ErrorService_1 = require("../internal/ErrorService");
20
+ const LogService_1 = require("../internal/LogService");
67
21
  /**
68
22
  * The base service that handles all HTTP requests.
69
23
  *
70
24
  * @public
71
25
  */
72
- var FetcherService = /** @class */ (function () {
26
+ class FetcherService {
27
+ /** The api key to use for authenticating against Twitter API as user. */
28
+ _apiKey;
29
+ /** Custom headers to use for all requests */
30
+ _customHeaders;
31
+ /** The service used to handle HTTP and API errors */
32
+ _errorHandler;
33
+ /** The guest key to use for authenticating against Twitter API as guest. */
34
+ _guestKey;
35
+ /** The URL To the proxy server to use for all others. */
36
+ _proxyUrl;
37
+ /** The max wait time for a response. */
38
+ _timeout;
39
+ /** The URL to the proxy server to use only for authentication. */
40
+ authProxyUrl;
41
+ /** The id of the authenticated user (if any). */
42
+ userId;
73
43
  /**
74
44
  * @param config - The config object for configuring the Rettiwt instance.
75
45
  */
76
- function FetcherService(config) {
77
- var _a, _b, _c, _d;
78
- LogService_1.LogService.enabled = (_a = config === null || config === void 0 ? void 0 : config.logging) !== null && _a !== void 0 ? _a : false;
79
- this._apiKey = config === null || config === void 0 ? void 0 : config.apiKey;
80
- this._guestKey = config === null || config === void 0 ? void 0 : config.guestKey;
81
- this.userId = (config === null || config === void 0 ? void 0 : config.apiKey) ? AuthService_1.AuthService.getUserId(config.apiKey) : undefined;
82
- this.authProxyUrl = (_b = config === null || config === void 0 ? void 0 : config.authProxyUrl) !== null && _b !== void 0 ? _b : config === null || config === void 0 ? void 0 : config.proxyUrl;
83
- this._proxyUrl = config === null || config === void 0 ? void 0 : config.proxyUrl;
84
- this._timeout = (_c = config === null || config === void 0 ? void 0 : config.timeout) !== null && _c !== void 0 ? _c : 0;
85
- this._errorHandler = (_d = config === null || config === void 0 ? void 0 : config.errorHandler) !== null && _d !== void 0 ? _d : new ErrorService_1.ErrorService();
46
+ constructor(config) {
47
+ LogService_1.LogService.enabled = config?.logging ?? false;
48
+ this._apiKey = config?.apiKey;
49
+ this._guestKey = config?.guestKey;
50
+ this.userId = config?.apiKey ? AuthService_1.AuthService.getUserId(config.apiKey) : undefined;
51
+ this.authProxyUrl = config?.authProxyUrl ?? config?.proxyUrl;
52
+ this._proxyUrl = config?.proxyUrl;
53
+ this._timeout = config?.timeout ?? 0;
54
+ this._errorHandler = config?.errorHandler ?? new ErrorService_1.ErrorService();
55
+ this._customHeaders = config?.headers;
86
56
  }
87
57
  /**
88
58
  * Checks the authorization status based on the requested resource.
@@ -91,42 +61,38 @@ var FetcherService = /** @class */ (function () {
91
61
  *
92
62
  * @throws An error if not authorized to access the requested resource.
93
63
  */
94
- FetcherService.prototype.checkAuthorization = function (resource) {
64
+ checkAuthorization(resource) {
95
65
  // Logging
96
66
  LogService_1.LogService.log(Logging_1.ELogActions.AUTHORIZATION, { authenticated: this.userId != undefined });
97
67
  // Checking authorization status
98
68
  if (!Groups_1.allowGuestAuthentication.includes(resource) && this.userId == undefined) {
99
69
  throw new Error(Api_1.EApiErrors.RESOURCE_NOT_ALLOWED);
100
70
  }
101
- };
71
+ }
102
72
  /**
103
73
  * Returns the AuthCredentials based on the type of key present.
104
74
  *
105
75
  * @returns The generated AuthCredential
106
76
  */
107
- FetcherService.prototype.getCredential = function () {
108
- return __awaiter(this, void 0, void 0, function () {
109
- return __generator(this, function (_a) {
110
- switch (_a.label) {
111
- case 0:
112
- if (!this._apiKey) return [3 /*break*/, 1];
113
- // Logging
114
- LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'USER_CREDENTIAL' });
115
- return [2 /*return*/, new rettiwt_auth_1.AuthCredential(AuthService_1.AuthService.decodeCookie(this._apiKey).split(';'))];
116
- case 1:
117
- if (!this._guestKey) return [3 /*break*/, 2];
118
- // Logging
119
- LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'GUEST_CREDENTIAL' });
120
- return [2 /*return*/, new rettiwt_auth_1.AuthCredential(undefined, this._guestKey)];
121
- case 2:
122
- // Logging
123
- LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'NEW_GUEST_CREDENTIAL' });
124
- return [4 /*yield*/, new rettiwt_auth_1.Auth({ proxyUrl: this.authProxyUrl }).getGuestCredential()];
125
- case 3: return [2 /*return*/, _a.sent()];
126
- }
127
- });
128
- });
129
- };
77
+ async getCredential() {
78
+ if (this._apiKey) {
79
+ // Logging
80
+ LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'USER_CREDENTIAL' });
81
+ return new AuthCredential_1.AuthCredential(AuthService_1.AuthService.decodeCookie(this._apiKey)
82
+ .split(';')
83
+ .map((item) => new cookiejar_1.Cookie(item)));
84
+ }
85
+ else if (this._guestKey) {
86
+ // Logging
87
+ LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'GUEST_CREDENTIAL' });
88
+ return new AuthCredential_1.AuthCredential(undefined, this._guestKey);
89
+ }
90
+ else {
91
+ // Logging
92
+ LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'NEW_GUEST_CREDENTIAL' });
93
+ return await new AuthService_1.AuthService({ proxyUrl: this.authProxyUrl }).guest();
94
+ }
95
+ }
130
96
  /**
131
97
  * Gets the https agent based on whether a proxy is used or not.
132
98
  *
@@ -134,7 +100,7 @@ var FetcherService = /** @class */ (function () {
134
100
  *
135
101
  * @returns The https agent to use.
136
102
  */
137
- FetcherService.prototype.getHttpsAgent = function (proxyUrl) {
103
+ getHttpsAgent(proxyUrl) {
138
104
  if (proxyUrl) {
139
105
  // Logging
140
106
  LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'HTTPS_PROXY_AGENT' });
@@ -145,7 +111,7 @@ var FetcherService = /** @class */ (function () {
145
111
  LogService_1.LogService.log(Logging_1.ELogActions.GET, { target: 'HTTPS_AGENT' });
146
112
  return new https_1.default.Agent();
147
113
  }
148
- };
114
+ }
149
115
  /**
150
116
  * Validates the given args against the given resource.
151
117
  *
@@ -154,7 +120,7 @@ var FetcherService = /** @class */ (function () {
154
120
  *
155
121
  * @returns The validated args.
156
122
  */
157
- FetcherService.prototype.validateArgs = function (resource, args) {
123
+ validateArgs(resource, args) {
158
124
  if (Groups_1.fetchResources.includes(resource)) {
159
125
  // Logging
160
126
  LogService_1.LogService.log(Logging_1.ELogActions.VALIDATE, { target: 'FETCH_ARGS' });
@@ -165,7 +131,7 @@ var FetcherService = /** @class */ (function () {
165
131
  LogService_1.LogService.log(Logging_1.ELogActions.VALIDATE, { target: 'POST_ARGS' });
166
132
  return new PostArgs_1.PostArgs(resource, args);
167
133
  }
168
- };
134
+ }
169
135
  /**
170
136
  * Makes an HTTP request according to the given parameters.
171
137
  *
@@ -194,46 +160,35 @@ var FetcherService = /** @class */ (function () {
194
160
  * })
195
161
  * ```
196
162
  */
197
- FetcherService.prototype.request = function (resource, args) {
198
- return __awaiter(this, void 0, void 0, function () {
199
- var httpsAgent, cred, config, error_1;
200
- return __generator(this, function (_a) {
201
- switch (_a.label) {
202
- case 0:
203
- // Logging
204
- LogService_1.LogService.log(Logging_1.ELogActions.REQUEST, { resource: resource, args: args });
205
- // Checking authorization for the requested resource
206
- this.checkAuthorization(resource);
207
- // Validating args
208
- args = this.validateArgs(resource, args);
209
- httpsAgent = this.getHttpsAgent(this._proxyUrl);
210
- return [4 /*yield*/, this.getCredential()];
211
- case 1:
212
- cred = _a.sent();
213
- config = Requests_1.requests[resource](args);
214
- // Setting additional request parameters
215
- config.headers = __assign(__assign({}, config.headers), cred.toHeader());
216
- config.httpAgent = httpsAgent;
217
- config.httpsAgent = httpsAgent;
218
- config.timeout = this._timeout;
219
- _a.label = 2;
220
- case 2:
221
- _a.trys.push([2, 4, , 5]);
222
- return [4 /*yield*/, (0, axios_1.default)(config)];
223
- case 3:
224
- // Returning the reponse body
225
- return [2 /*return*/, (_a.sent()).data];
226
- case 4:
227
- error_1 = _a.sent();
228
- // If error, delegate handling to error handler
229
- this._errorHandler.handle(error_1);
230
- throw error_1;
231
- case 5: return [2 /*return*/];
232
- }
233
- });
234
- });
235
- };
236
- return FetcherService;
237
- }());
163
+ async request(resource, args) {
164
+ // Logging
165
+ LogService_1.LogService.log(Logging_1.ELogActions.REQUEST, { resource: resource, args: args });
166
+ // Checking authorization for the requested resource
167
+ this.checkAuthorization(resource);
168
+ // Validating args
169
+ args = this.validateArgs(resource, args);
170
+ // Getting HTTPS agent
171
+ const httpsAgent = this.getHttpsAgent(this._proxyUrl);
172
+ // Getting credentials from key
173
+ const cred = await this.getCredential();
174
+ // Getting request configuration
175
+ const config = Requests_1.requests[resource](args);
176
+ // Setting additional request parameters
177
+ config.headers = { ...config.headers, ...cred.toHeader(), ...(this._customHeaders || {}) };
178
+ config.httpAgent = httpsAgent;
179
+ config.httpsAgent = httpsAgent;
180
+ config.timeout = this._timeout;
181
+ // Sending the request
182
+ try {
183
+ // Returning the reponse body
184
+ return (await (0, axios_1.default)(config)).data;
185
+ }
186
+ catch (error) {
187
+ // If error, delegate handling to error handler
188
+ this._errorHandler.handle(error);
189
+ throw error;
190
+ }
191
+ }
192
+ }
238
193
  exports.FetcherService = FetcherService;
239
194
  //# sourceMappingURL=FetcherService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FetcherService.js","sourceRoot":"","sources":["../../../src/services/public/FetcherService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FetcherService.js","sourceRoot":"","sources":["../../../src/services/public/FetcherService.ts"],"names":[],"mappings":"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"}
@@ -1,69 +1,17 @@
1
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
- return new (P || (P = Promise))(function (resolve, reject) {
20
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
- step((generator = generator.apply(thisArg, _arguments || [])).next());
24
- });
25
- };
26
- var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
- function verb(n) { return function (v) { return step([n, v]); }; }
30
- function step(op) {
31
- if (f) throw new TypeError("Generator is already executing.");
32
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
33
- 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;
34
- if (y = 0, t) op = [op[0] & 2, t.value];
35
- switch (op[0]) {
36
- case 0: case 1: t = op; break;
37
- case 4: _.label++; return { value: op[1], done: false };
38
- case 5: _.label++; y = op[1]; op = [0]; continue;
39
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
- default:
41
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
- if (t[2]) _.ops.pop();
46
- _.trys.pop(); continue;
47
- }
48
- op = body.call(thisArg, _);
49
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
- }
52
- };
53
2
  Object.defineProperty(exports, "__esModule", { value: true });
54
3
  exports.ListService = void 0;
55
- var Extractors_1 = require("../../collections/Extractors");
56
- var Resource_1 = require("../../enums/Resource");
57
- var FetcherService_1 = require("./FetcherService");
58
- var ListService = /** @class */ (function (_super) {
59
- __extends(ListService, _super);
4
+ const Extractors_1 = require("../../collections/Extractors");
5
+ const Resource_1 = require("../../enums/Resource");
6
+ const FetcherService_1 = require("./FetcherService");
7
+ class ListService extends FetcherService_1.FetcherService {
60
8
  /**
61
9
  * @param config - The config object for configuring the Rettiwt instance.
62
10
  *
63
11
  * @internal
64
12
  */
65
- function ListService(config) {
66
- return _super.call(this, config) || this;
13
+ constructor(config) {
14
+ super(config);
67
15
  }
68
16
  /**
69
17
  * Get the list of members of a tweet list.
@@ -93,26 +41,18 @@ var ListService = /** @class */ (function (_super) {
93
41
  *
94
42
  * @remarks Due a bug in Twitter API, the count is ignored when no cursor is provided and defaults to 100.
95
43
  */
96
- ListService.prototype.members = function (id, count, cursor) {
97
- return __awaiter(this, void 0, void 0, function () {
98
- var resource, response, data;
99
- return __generator(this, function (_a) {
100
- switch (_a.label) {
101
- case 0:
102
- resource = Resource_1.EResourceType.LIST_MEMBERS;
103
- return [4 /*yield*/, this.request(resource, {
104
- id: id,
105
- count: count,
106
- cursor: cursor,
107
- })];
108
- case 1:
109
- response = _a.sent();
110
- data = Extractors_1.extractors[resource](response);
111
- return [2 /*return*/, data];
112
- }
113
- });
44
+ async members(id, count, cursor) {
45
+ const resource = Resource_1.EResourceType.LIST_MEMBERS;
46
+ // Fetching the raw list of members
47
+ const response = await this.request(resource, {
48
+ id: id,
49
+ count: count,
50
+ cursor: cursor,
114
51
  });
115
- };
52
+ // Deserializing response
53
+ const data = Extractors_1.extractors[resource](response);
54
+ return data;
55
+ }
116
56
  /**
117
57
  * Get the list of tweets from a tweet list.
118
58
  *
@@ -141,29 +81,20 @@ var ListService = /** @class */ (function (_super) {
141
81
  *
142
82
  * @remarks Due a bug in Twitter API, the count is ignored when no cursor is provided and defaults to 100.
143
83
  */
144
- ListService.prototype.tweets = function (id, count, cursor) {
145
- return __awaiter(this, void 0, void 0, function () {
146
- var resource, response, data;
147
- return __generator(this, function (_a) {
148
- switch (_a.label) {
149
- case 0:
150
- resource = Resource_1.EResourceType.LIST_TWEETS;
151
- return [4 /*yield*/, this.request(resource, {
152
- id: id,
153
- count: count,
154
- cursor: cursor,
155
- })];
156
- case 1:
157
- response = _a.sent();
158
- data = Extractors_1.extractors[resource](response);
159
- // Sorting the tweets by date, from recent to oldest
160
- data.list.sort(function (a, b) { return new Date(b.createdAt).valueOf() - new Date(a.createdAt).valueOf(); });
161
- return [2 /*return*/, data];
162
- }
163
- });
84
+ async tweets(id, count, cursor) {
85
+ const resource = Resource_1.EResourceType.LIST_TWEETS;
86
+ // Fetching raw list tweets
87
+ const response = await this.request(resource, {
88
+ id: id,
89
+ count: count,
90
+ cursor: cursor,
164
91
  });
165
- };
166
- return ListService;
167
- }(FetcherService_1.FetcherService));
92
+ // Deserializing response
93
+ const data = Extractors_1.extractors[resource](response);
94
+ // Sorting the tweets by date, from recent to oldest
95
+ data.list.sort((a, b) => new Date(b.createdAt).valueOf() - new Date(a.createdAt).valueOf());
96
+ return data;
97
+ }
98
+ }
168
99
  exports.ListService = ListService;
169
100
  //# sourceMappingURL=ListService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListService.js","sourceRoot":"","sources":["../../../src/services/public/ListService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,2DAA0D;AAC1D,iDAAqD;AAMrD,mDAAkD;AAElD;IAAiC,+BAAc;IAC9C;;;;OAIG;IACH,qBAAmB,MAAuB;eACzC,kBAAM,MAAM,CAAC;IACd,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,6BAAO,GAApB,UAAqB,EAAU,EAAE,KAAc,EAAE,MAAe;;;;;;wBACzD,QAAQ,GAAkB,wBAAa,CAAC,YAAY,CAAC;wBAG1C,qBAAM,IAAI,CAAC,OAAO,CAAuB,QAAQ,EAAE;gCACnE,EAAE,EAAE,EAAE;gCACN,KAAK,EAAE,KAAK;gCACZ,MAAM,EAAE,MAAM;6BACd,CAAC,EAAA;;wBAJI,QAAQ,GAAG,SAIf;wBAGI,IAAI,GAAG,uBAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;wBAE5C,sBAAO,IAAI,EAAC;;;;KACZ;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,4BAAM,GAAnB,UAAoB,EAAU,EAAE,KAAc,EAAE,MAAe;;;;;;wBACxD,QAAQ,GAAG,wBAAa,CAAC,WAAW,CAAC;wBAG1B,qBAAM,IAAI,CAAC,OAAO,CAAsB,QAAQ,EAAE;gCAClE,EAAE,EAAE,EAAE;gCACN,KAAK,EAAE,KAAK;gCACZ,MAAM,EAAE,MAAM;6BACd,CAAC,EAAA;;wBAJI,QAAQ,GAAG,SAIf;wBAGI,IAAI,GAAG,uBAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;wBAE5C,oDAAoD;wBACpD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAjE,CAAiE,CAAC,CAAC;wBAE5F,sBAAO,IAAI,EAAC;;;;KACZ;IACF,kBAAC;AAAD,CAAC,AApGD,CAAiC,+BAAc,GAoG9C;AApGY,kCAAW"}
1
+ {"version":3,"file":"ListService.js","sourceRoot":"","sources":["../../../src/services/public/ListService.ts"],"names":[],"mappings":";;;AAEA,6DAA0D;AAC1D,mDAAqD;AAMrD,qDAAkD;AAElD,MAAa,WAAY,SAAQ,+BAAc;IAC9C;;;;OAIG;IACH,YAAmB,MAAuB;QACzC,KAAK,CAAC,MAAM,CAAC,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,KAAc,EAAE,MAAe;QAC/D,MAAM,QAAQ,GAAkB,wBAAa,CAAC,YAAY,CAAC;QAE3D,mCAAmC;QACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAuB,QAAQ,EAAE;YACnE,EAAE,EAAE,EAAE;YACN,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,MAAM;SACd,CAAC,CAAC;QAEH,yBAAyB;QACzB,MAAM,IAAI,GAAG,uBAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACI,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,KAAc,EAAE,MAAe;QAC9D,MAAM,QAAQ,GAAG,wBAAa,CAAC,WAAW,CAAC;QAE3C,2BAA2B;QAC3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAsB,QAAQ,EAAE;YAClE,EAAE,EAAE,EAAE;YACN,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,MAAM;SACd,CAAC,CAAC;QAEH,yBAAyB;QACzB,MAAM,IAAI,GAAG,uBAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;QAE5C,oDAAoD;QACpD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAE5F,OAAO,IAAI,CAAC;IACb,CAAC;CACD;AApGD,kCAoGC"}
@@ -1,5 +1,4 @@
1
- import { ESearchResultType, TweetFilter } from 'rettiwt-core';
2
- import { TweetArgs } from '../../models/args/PostArgs';
1
+ import { ESearchResultType, INewTweet, TweetFilter } from 'rettiwt-core';
3
2
  import { CursoredData } from '../../models/data/CursoredData';
4
3
  import { Tweet } from '../../models/data/Tweet';
5
4
  import { User } from '../../models/data/User';
@@ -177,7 +176,33 @@ export declare class TweetService extends FetcherService {
177
176
  * });
178
177
  * ```
179
178
  */
180
- post(options: TweetArgs): Promise<string | undefined>;
179
+ post(options: INewTweet): Promise<string | undefined>;
180
+ /**
181
+ * Get the list of replies to a tweet.
182
+ *
183
+ * @param id - The id of the target tweet.
184
+ * @param cursor - The cursor to the batch of replies to fetch.
185
+ *
186
+ * @returns The list of replies to the given tweet.
187
+ *
188
+ * @example
189
+ * ```
190
+ * import { Rettiwt } from 'rettiwt-api';
191
+ *
192
+ * // Creating a new Rettiwt instance using the given 'API_KEY'
193
+ * const rettiwt = new Rettiwt({ apiKey: API_KEY });
194
+ *
195
+ * // Fetching the first 100 replies to the Tweet with id '1234567890'
196
+ * rettiwt.tweet.replies('1234567890')
197
+ * .then(res => {
198
+ * console.log(res);
199
+ * })
200
+ * .catch(err => {
201
+ * console.log(err);
202
+ * });
203
+ * ```
204
+ */
205
+ replies(id: string, cursor?: string): Promise<CursoredData<Tweet>>;
181
206
  /**
182
207
  * Retweet a tweet.
183
208
  *
@@ -258,7 +283,7 @@ export declare class TweetService extends FetcherService {
258
283
  * @remarks
259
284
  * Scheduling a tweet is similar to {@link post}ing, except that an extra parameter called `scheduleFor` is used.
260
285
  */
261
- schedule(options: TweetArgs): Promise<string | undefined>;
286
+ schedule(options: INewTweet): Promise<string | undefined>;
262
287
  /**
263
288
  * Search for tweets using a filter.
264
289
  *