rettiwt-api 1.1.8 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/.github/workflows/build-docs.yml +22 -21
  2. package/.github/workflows/publish-to-npm.yml +29 -0
  3. package/README.md +52 -40
  4. package/dist/config/env.d.ts +5 -5
  5. package/dist/config/env.js +8 -8
  6. package/dist/enums/Errors.d.ts +20 -20
  7. package/dist/enums/Errors.js +27 -27
  8. package/dist/enums/HTTP.d.ts +17 -17
  9. package/dist/enums/HTTP.js +22 -22
  10. package/dist/graphql/enums/Errors.d.ts +21 -21
  11. package/dist/graphql/enums/Errors.js +28 -28
  12. package/dist/graphql/queries/RootQuery.d.ts +4 -4
  13. package/dist/graphql/queries/RootQuery.js +77 -77
  14. package/dist/graphql/resolvers/AccountResolver.d.ts +12 -12
  15. package/dist/graphql/resolvers/AccountResolver.js +83 -83
  16. package/dist/graphql/resolvers/ResolverBase.d.ts +16 -16
  17. package/dist/graphql/resolvers/ResolverBase.js +22 -22
  18. package/dist/graphql/resolvers/TweetResolver.d.ts +46 -46
  19. package/dist/graphql/resolvers/TweetResolver.js +311 -311
  20. package/dist/graphql/resolvers/UserResolver.d.ts +48 -48
  21. package/dist/graphql/resolvers/UserResolver.js +333 -333
  22. package/dist/graphql/resolvers/UserResolver.js.map +1 -1
  23. package/dist/graphql/types/Global.d.ts +4 -4
  24. package/dist/graphql/types/Global.js +12 -12
  25. package/dist/graphql/types/TweetTypes.d.ts +4 -4
  26. package/dist/graphql/types/TweetTypes.js +159 -159
  27. package/dist/graphql/types/UserTypes.d.ts +3 -3
  28. package/dist/graphql/types/UserTypes.js +136 -136
  29. package/dist/graphql/types/UserTypes.js.map +1 -1
  30. package/dist/index.d.ts +43 -43
  31. package/dist/index.js +70 -70
  32. package/dist/models/args/TweetFilter.d.ts +65 -59
  33. package/dist/models/args/TweetFilter.js +120 -100
  34. package/dist/models/args/TweetFilter.js.map +1 -1
  35. package/dist/models/args/TweetListArgs.d.ts +21 -21
  36. package/dist/models/args/TweetListArgs.js +53 -53
  37. package/dist/models/args/UserListArgs.d.ts +21 -21
  38. package/dist/models/args/UserListArgs.js +53 -53
  39. package/dist/models/auth/AuthCookie.d.ts +21 -21
  40. package/dist/models/auth/AuthCookie.js +32 -32
  41. package/dist/models/data/CursoredData.d.ts +34 -34
  42. package/dist/models/data/CursoredData.js +41 -41
  43. package/dist/models/data/Tweet.d.ts +53 -53
  44. package/dist/models/data/Tweet.js +103 -103
  45. package/dist/models/data/User.d.ts +41 -41
  46. package/dist/models/data/User.js +31 -31
  47. package/dist/models/errors/DataValidationError.d.ts +20 -20
  48. package/dist/models/errors/DataValidationError.js +22 -22
  49. package/dist/server.d.ts +1 -1
  50. package/dist/server.js +75 -75
  51. package/dist/services/auth/AccountService.d.ts +83 -83
  52. package/dist/services/auth/AccountService.js +411 -411
  53. package/dist/services/auth/AuthService.d.ts +31 -31
  54. package/dist/services/auth/AuthService.js +117 -117
  55. package/dist/services/data/TweetService.d.ts +60 -74
  56. package/dist/services/data/TweetService.js +251 -254
  57. package/dist/services/data/TweetService.js.map +1 -1
  58. package/dist/services/data/UserService.d.ts +71 -87
  59. package/dist/services/data/UserService.js +287 -296
  60. package/dist/services/data/UserService.js.map +1 -1
  61. package/dist/services/helper/Headers.d.ts +19 -19
  62. package/dist/services/helper/Headers.js +61 -61
  63. package/dist/services/helper/Parser.d.ts +22 -28
  64. package/dist/services/helper/Parser.js +83 -104
  65. package/dist/services/helper/Parser.js.map +1 -1
  66. package/dist/services/helper/extractors/Tweets.d.ts +32 -32
  67. package/dist/services/helper/extractors/Tweets.js +263 -263
  68. package/dist/services/helper/extractors/Users.d.ts +26 -26
  69. package/dist/services/helper/extractors/Users.js +202 -202
  70. package/dist/services/helper/payloads/LoginFlows.d.ts +77 -77
  71. package/dist/services/helper/payloads/LoginFlows.js +91 -91
  72. package/dist/services/helper/urls/Authentication.d.ts +4 -4
  73. package/dist/services/helper/urls/Authentication.js +10 -10
  74. package/dist/services/util/CacheService.d.ts +33 -33
  75. package/dist/services/util/CacheService.js +95 -95
  76. package/dist/services/util/FetcherService.d.ts +65 -65
  77. package/dist/services/util/FetcherService.js +213 -213
  78. package/dist/twitter/Url.d.ts +22 -0
  79. package/dist/twitter/Url.js +32 -0
  80. package/dist/twitter/Url.js.map +1 -0
  81. package/dist/twitter/enums/Resources.d.ts +15 -0
  82. package/dist/twitter/enums/Resources.js +21 -0
  83. package/dist/twitter/enums/Resources.js.map +1 -0
  84. package/dist/twitter/params/Query.d.ts +67 -0
  85. package/dist/twitter/params/Query.js +64 -0
  86. package/dist/twitter/params/Query.js.map +1 -0
  87. package/dist/twitter/payloads/Args.d.ts +16 -0
  88. package/dist/twitter/payloads/Args.js +16 -0
  89. package/dist/twitter/payloads/Args.js.map +1 -0
  90. package/dist/{types/raw/query/tweet/Engagements.d.ts → twitter/payloads/Features.d.ts} +28 -29
  91. package/dist/twitter/payloads/Features.js +37 -0
  92. package/dist/twitter/payloads/Features.js.map +1 -0
  93. package/dist/twitter/payloads/Variables.d.ts +41 -0
  94. package/dist/twitter/payloads/Variables.js +64 -0
  95. package/dist/twitter/payloads/Variables.js.map +1 -0
  96. package/dist/{types → twitter/types/request}/Query.d.ts +86 -80
  97. package/dist/{types/data/Tweet.js → twitter/types/request/Query.js} +4 -4
  98. package/dist/twitter/types/request/Query.js.map +1 -0
  99. package/dist/{types/raw/data → twitter/types}/tweet/Favouriters.d.ts +164 -164
  100. package/dist/twitter/types/tweet/Favouriters.js +3 -0
  101. package/dist/twitter/types/tweet/Favouriters.js.map +1 -0
  102. package/dist/{types/raw → twitter/types}/tweet/Retweeters.d.ts +171 -171
  103. package/dist/{types/Trends.js → twitter/types/tweet/Retweeters.js} +3 -3
  104. package/dist/twitter/types/tweet/Retweeters.js.map +1 -0
  105. package/dist/{types/raw/data → twitter/types}/tweet/Tweet.d.ts +746 -746
  106. package/dist/{types/data/User.js → twitter/types/tweet/Tweet.js} +3 -3
  107. package/dist/twitter/types/tweet/Tweet.js.map +1 -0
  108. package/dist/{types/raw → twitter/types}/tweet/Tweets.d.ts +386 -386
  109. package/dist/{types/raw/user/User.js → twitter/types/tweet/Tweets.js} +3 -3
  110. package/dist/twitter/types/tweet/Tweets.js.map +1 -0
  111. package/dist/{types/raw → twitter/types}/user/Followers.d.ts +176 -176
  112. package/dist/{types/interfaces/Rettiwt.js → twitter/types/user/Followers.js} +3 -3
  113. package/dist/twitter/types/user/Followers.js.map +1 -0
  114. package/dist/{types/raw → twitter/types}/user/Following.d.ts +176 -176
  115. package/dist/{types/Query.js → twitter/types/user/Following.js} +3 -3
  116. package/dist/twitter/types/user/Following.js.map +1 -0
  117. package/dist/{types/raw/data → twitter/types}/user/Likes.d.ts +1059 -1059
  118. package/dist/{types/interfaces/User.js → twitter/types/user/Likes.js} +3 -3
  119. package/dist/twitter/types/user/Likes.js.map +1 -0
  120. package/dist/{types/raw → twitter/types}/user/Tweets.d.ts +1512 -1512
  121. package/dist/twitter/types/user/Tweets.js +3 -0
  122. package/dist/twitter/types/user/Tweets.js.map +1 -0
  123. package/dist/{types/raw → twitter/types}/user/User.d.ts +117 -117
  124. package/dist/{types/raw/data → twitter/types}/user/User.js +2 -2
  125. package/dist/{types/data → twitter/types/user}/User.js.map +1 -1
  126. package/dist/types/Args.d.ts +38 -38
  127. package/dist/types/Args.js +4 -4
  128. package/dist/types/Authentication.d.ts +55 -55
  129. package/dist/types/Authentication.js +5 -5
  130. package/dist/types/Resolvers.d.ts +15 -15
  131. package/dist/types/Resolvers.js +2 -2
  132. package/dist/types/Rettiwt.d.ts +16 -16
  133. package/dist/types/Rettiwt.js +2 -2
  134. package/dist/types/Service.d.ts +22 -22
  135. package/dist/types/Service.js +4 -4
  136. package/dist/types/Tweet.d.ts +46 -46
  137. package/dist/types/Tweet.js +2 -2
  138. package/dist/types/User.d.ts +35 -35
  139. package/dist/types/User.js +2 -2
  140. package/docs/.nojekyll +1 -0
  141. package/docs/assets/highlight.css +64 -0
  142. package/docs/assets/main.js +58 -0
  143. package/docs/assets/search.js +1 -0
  144. package/docs/assets/style.css +1280 -0
  145. package/docs/classes/AccountService.html +286 -0
  146. package/docs/classes/AuthCookie.html +146 -0
  147. package/docs/classes/AuthService.html +147 -0
  148. package/docs/classes/CacheService.html +157 -0
  149. package/docs/classes/Cursor.html +102 -0
  150. package/docs/classes/CursoredData.html +126 -0
  151. package/docs/classes/DataValidationError.html +119 -0
  152. package/docs/classes/FetcherService.html +225 -0
  153. package/docs/classes/Tweet.html +210 -0
  154. package/docs/classes/TweetEntities.html +128 -0
  155. package/docs/classes/TweetFilter.html +221 -0
  156. package/docs/classes/TweetListArgs.html +118 -0
  157. package/docs/classes/TweetService.html +319 -0
  158. package/docs/classes/User.html +230 -0
  159. package/docs/classes/UserListArgs.html +118 -0
  160. package/docs/classes/UserService.html +355 -0
  161. package/docs/enums/HttpMethods.html +74 -0
  162. package/docs/functions/Rettiwt.html +99 -0
  163. package/docs/index.html +158 -0
  164. package/docs/interfaces/IAuthCookie.html +104 -0
  165. package/docs/interfaces/ICursor.html +77 -0
  166. package/docs/interfaces/ICursoredData.html +93 -0
  167. package/docs/interfaces/IDataContext.html +91 -0
  168. package/docs/interfaces/IListArgs.html +87 -0
  169. package/docs/interfaces/ITweet.html +176 -0
  170. package/docs/interfaces/ITweetEntities.html +104 -0
  171. package/docs/interfaces/ITweetFilter.html +158 -0
  172. package/docs/interfaces/IUser.html +194 -0
  173. package/docs/modules.html +109 -0
  174. package/package.json +2 -2
  175. package/src/graphql/resolvers/UserResolver.ts +4 -4
  176. package/src/graphql/types/UserTypes.ts +1 -1
  177. package/src/models/args/TweetFilter.ts +25 -4
  178. package/src/models/data/Tweet.ts +1 -1
  179. package/src/models/data/User.ts +1 -1
  180. package/src/services/data/TweetService.ts +35 -65
  181. package/src/services/data/UserService.ts +42 -48
  182. package/src/services/helper/Parser.ts +3 -24
  183. package/src/services/helper/extractors/Tweets.ts +4 -4
  184. package/src/services/helper/extractors/Users.ts +5 -5
  185. package/src/services/util/FetcherService.ts +4 -4
  186. package/src/twitter/Url.ts +37 -0
  187. package/src/twitter/enums/Resources.ts +15 -0
  188. package/src/twitter/params/Query.ts +100 -0
  189. package/src/twitter/payloads/Args.ts +21 -0
  190. package/src/twitter/payloads/Features.ts +33 -0
  191. package/src/twitter/payloads/Variables.ts +73 -0
  192. package/src/twitter/types/request/Query.ts +91 -0
  193. package/src/{types/raw → twitter/types}/user/Tweets.ts +1747 -1747
  194. package/src/types/Args.ts +1 -1
  195. package/dist/Test.d.ts +0 -0
  196. package/dist/Test.js +0 -2
  197. package/dist/Test.js.map +0 -1
  198. package/dist/endpoints/Endpoints.d.ts +0 -14
  199. package/dist/endpoints/Endpoints.js +0 -20
  200. package/dist/endpoints/Endpoints.js.map +0 -1
  201. package/dist/endpoints/Url.d.ts +0 -5
  202. package/dist/endpoints/Url.js +0 -12
  203. package/dist/endpoints/Url.js.map +0 -1
  204. package/dist/enums/Endpoints.d.ts +0 -25
  205. package/dist/enums/Endpoints.js +0 -31
  206. package/dist/enums/Endpoints.js.map +0 -1
  207. package/dist/graphql/types/Errors.d.ts +0 -20
  208. package/dist/graphql/types/Errors.js +0 -28
  209. package/dist/graphql/types/Errors.js.map +0 -1
  210. package/dist/middlewares/Authentication.d.ts +0 -0
  211. package/dist/middlewares/Authentication.js +0 -2
  212. package/dist/middlewares/Authentication.js.map +0 -1
  213. package/dist/models/data/DataValidationError.d.ts +0 -18
  214. package/dist/models/data/DataValidationError.js +0 -21
  215. package/dist/models/data/DataValidationError.js.map +0 -1
  216. package/dist/models/data/Errors.d.ts +0 -18
  217. package/dist/models/data/Errors.js +0 -21
  218. package/dist/models/data/Errors.js.map +0 -1
  219. package/dist/models/data/Service.d.ts +0 -33
  220. package/dist/models/data/Service.js +0 -41
  221. package/dist/models/data/Service.js.map +0 -1
  222. package/dist/models/graphql/Global.d.ts +0 -4
  223. package/dist/models/graphql/Global.js +0 -13
  224. package/dist/models/graphql/Global.js.map +0 -1
  225. package/dist/models/graphql/TweetTypes.d.ts +0 -6
  226. package/dist/models/graphql/TweetTypes.js +0 -156
  227. package/dist/models/graphql/TweetTypes.js.map +0 -1
  228. package/dist/models/graphql/UserTypes.d.ts +0 -3
  229. package/dist/models/graphql/UserTypes.js +0 -139
  230. package/dist/models/graphql/UserTypes.js.map +0 -1
  231. package/dist/models/query/Variables.d.ts +0 -2
  232. package/dist/models/query/Variables.js +0 -10
  233. package/dist/models/query/Variables.js.map +0 -1
  234. package/dist/queries/RootQuery.d.ts +0 -4
  235. package/dist/queries/RootQuery.js +0 -70
  236. package/dist/queries/RootQuery.js.map +0 -1
  237. package/dist/requests/Url.d.ts +0 -5
  238. package/dist/requests/Url.js +0 -12
  239. package/dist/requests/Url.js.map +0 -1
  240. package/dist/requests/payloads/Variables.d.ts +0 -23
  241. package/dist/requests/payloads/Variables.js +0 -24
  242. package/dist/requests/payloads/Variables.js.map +0 -1
  243. package/dist/resolvers/AccountResolver.d.ts +0 -12
  244. package/dist/resolvers/AccountResolver.js +0 -84
  245. package/dist/resolvers/AccountResolver.js.map +0 -1
  246. package/dist/resolvers/ResolverBase.d.ts +0 -5
  247. package/dist/resolvers/ResolverBase.js +0 -11
  248. package/dist/resolvers/ResolverBase.js.map +0 -1
  249. package/dist/resolvers/TweetResolver.d.ts +0 -54
  250. package/dist/resolvers/TweetResolver.js +0 -332
  251. package/dist/resolvers/TweetResolver.js.map +0 -1
  252. package/dist/resolvers/UserResolver.d.ts +0 -38
  253. package/dist/resolvers/UserResolver.js +0 -253
  254. package/dist/resolvers/UserResolver.js.map +0 -1
  255. package/dist/services/AuthService.d.ts +0 -22
  256. package/dist/services/AuthService.js +0 -106
  257. package/dist/services/AuthService.js.map +0 -1
  258. package/dist/services/CacheService.d.ts +0 -30
  259. package/dist/services/CacheService.js +0 -93
  260. package/dist/services/CacheService.js.map +0 -1
  261. package/dist/services/FetcherService.d.ts +0 -61
  262. package/dist/services/FetcherService.js +0 -209
  263. package/dist/services/FetcherService.js.map +0 -1
  264. package/dist/services/accounts/AccountService.d.ts +0 -65
  265. package/dist/services/accounts/AccountService.js +0 -336
  266. package/dist/services/accounts/AccountService.js.map +0 -1
  267. package/dist/services/accounts/LoginFlows.d.ts +0 -77
  268. package/dist/services/accounts/LoginFlows.js +0 -92
  269. package/dist/services/accounts/LoginFlows.js.map +0 -1
  270. package/dist/services/auth/LoginFlows.d.ts +0 -77
  271. package/dist/services/auth/LoginFlows.js +0 -92
  272. package/dist/services/auth/LoginFlows.js.map +0 -1
  273. package/dist/services/data/TrendService.d.ts +0 -17
  274. package/dist/services/data/TrendService.js +0 -116
  275. package/dist/services/data/TrendService.js.map +0 -1
  276. package/dist/services/data/UserAccountService.d.ts +0 -42
  277. package/dist/services/data/UserAccountService.js +0 -239
  278. package/dist/services/data/UserAccountService.js.map +0 -1
  279. package/dist/services/helper/Deserializers.d.ts +0 -19
  280. package/dist/services/helper/Deserializers.js +0 -115
  281. package/dist/services/helper/Deserializers.js.map +0 -1
  282. package/dist/services/helper/Extractors.d.ts +0 -104
  283. package/dist/services/helper/Extractors.js +0 -432
  284. package/dist/services/helper/Extractors.js.map +0 -1
  285. package/dist/services/helper/Urls.d.ts +0 -85
  286. package/dist/services/helper/Urls.js +0 -130
  287. package/dist/services/helper/Urls.js.map +0 -1
  288. package/dist/services/helper/deserializers/Tweets.d.ts +0 -12
  289. package/dist/services/helper/deserializers/Tweets.js +0 -92
  290. package/dist/services/helper/deserializers/Tweets.js.map +0 -1
  291. package/dist/services/helper/deserializers/Users.d.ts +0 -7
  292. package/dist/services/helper/deserializers/Users.js +0 -27
  293. package/dist/services/helper/deserializers/Users.js.map +0 -1
  294. package/dist/services/helper/extractors/Trends.d.ts +0 -3
  295. package/dist/services/helper/extractors/Trends.js +0 -51
  296. package/dist/services/helper/extractors/Trends.js.map +0 -1
  297. package/dist/services/helper/urls/Trends.d.ts +0 -7
  298. package/dist/services/helper/urls/Trends.js +0 -13
  299. package/dist/services/helper/urls/Trends.js.map +0 -1
  300. package/dist/services/helper/urls/Tweets.d.ts +0 -32
  301. package/dist/services/helper/urls/Tweets.js +0 -51
  302. package/dist/services/helper/urls/Tweets.js.map +0 -1
  303. package/dist/services/helper/urls/Users.d.ts +0 -38
  304. package/dist/services/helper/urls/Users.js +0 -76
  305. package/dist/services/helper/urls/Users.js.map +0 -1
  306. package/dist/types/HTTP.d.ts +0 -17
  307. package/dist/types/HTTP.js +0 -23
  308. package/dist/types/HTTP.js.map +0 -1
  309. package/dist/types/Query.js.map +0 -1
  310. package/dist/types/Trends.d.ts +0 -50
  311. package/dist/types/Trends.js.map +0 -1
  312. package/dist/types/UserAccount.d.ts +0 -19
  313. package/dist/types/UserAccount.js +0 -4
  314. package/dist/types/UserAccount.js.map +0 -1
  315. package/dist/types/args/TweetFilter.d.ts +0 -54
  316. package/dist/types/args/TweetFilter.js +0 -96
  317. package/dist/types/args/TweetFilter.js.map +0 -1
  318. package/dist/types/args/TweetListArg.d.ts +0 -10
  319. package/dist/types/args/TweetListArg.js +0 -42
  320. package/dist/types/args/TweetListArg.js.map +0 -1
  321. package/dist/types/args/TweetListArgs.d.ts +0 -20
  322. package/dist/types/args/TweetListArgs.js +0 -52
  323. package/dist/types/args/TweetListArgs.js.map +0 -1
  324. package/dist/types/args/UserListArgs.d.ts +0 -16
  325. package/dist/types/args/UserListArgs.js +0 -48
  326. package/dist/types/args/UserListArgs.js.map +0 -1
  327. package/dist/types/data/Errors.d.ts +0 -35
  328. package/dist/types/data/Errors.js +0 -45
  329. package/dist/types/data/Errors.js.map +0 -1
  330. package/dist/types/data/Service.d.ts +0 -43
  331. package/dist/types/data/Service.js +0 -22
  332. package/dist/types/data/Service.js.map +0 -1
  333. package/dist/types/data/Tweet.d.ts +0 -98
  334. package/dist/types/data/Tweet.js.map +0 -1
  335. package/dist/types/data/TweetFilter.d.ts +0 -49
  336. package/dist/types/data/TweetFilter.js +0 -63
  337. package/dist/types/data/TweetFilter.js.map +0 -1
  338. package/dist/types/data/User.d.ts +0 -38
  339. package/dist/types/graphql/Errors.d.ts +0 -15
  340. package/dist/types/graphql/Errors.js +0 -23
  341. package/dist/types/graphql/Errors.js.map +0 -1
  342. package/dist/types/interfaces/Args.d.ts +0 -38
  343. package/dist/types/interfaces/Args.js +0 -5
  344. package/dist/types/interfaces/Args.js.map +0 -1
  345. package/dist/types/interfaces/Authentication.d.ts +0 -40
  346. package/dist/types/interfaces/Authentication.js +0 -5
  347. package/dist/types/interfaces/Authentication.js.map +0 -1
  348. package/dist/types/interfaces/Resolvers.d.ts +0 -14
  349. package/dist/types/interfaces/Resolvers.js +0 -3
  350. package/dist/types/interfaces/Resolvers.js.map +0 -1
  351. package/dist/types/interfaces/Rettiwt.d.ts +0 -16
  352. package/dist/types/interfaces/Rettiwt.js.map +0 -1
  353. package/dist/types/interfaces/Service.d.ts +0 -13
  354. package/dist/types/interfaces/Service.js +0 -3
  355. package/dist/types/interfaces/Service.js.map +0 -1
  356. package/dist/types/interfaces/Services.d.ts +0 -13
  357. package/dist/types/interfaces/Services.js +0 -3
  358. package/dist/types/interfaces/Services.js.map +0 -1
  359. package/dist/types/interfaces/Tweet.d.ts +0 -46
  360. package/dist/types/interfaces/Tweet.js +0 -3
  361. package/dist/types/interfaces/Tweet.js.map +0 -1
  362. package/dist/types/interfaces/TweetFilter.d.ts +0 -0
  363. package/dist/types/interfaces/TweetFilter.js +0 -2
  364. package/dist/types/interfaces/TweetFilter.js.map +0 -1
  365. package/dist/types/interfaces/User.d.ts +0 -35
  366. package/dist/types/interfaces/User.js.map +0 -1
  367. package/dist/types/raw/auth/Cookie.d.ts +0 -16
  368. package/dist/types/raw/auth/Cookie.js +0 -3
  369. package/dist/types/raw/auth/Cookie.js.map +0 -1
  370. package/dist/types/raw/data/tweet/Favouriters.js +0 -3
  371. package/dist/types/raw/data/tweet/Favouriters.js.map +0 -1
  372. package/dist/types/raw/data/tweet/Retweeters.d.ts +0 -171
  373. package/dist/types/raw/data/tweet/Retweeters.js +0 -3
  374. package/dist/types/raw/data/tweet/Retweeters.js.map +0 -1
  375. package/dist/types/raw/data/tweet/Tweet.js +0 -3
  376. package/dist/types/raw/data/tweet/Tweet.js.map +0 -1
  377. package/dist/types/raw/data/tweet/Tweets.d.ts +0 -386
  378. package/dist/types/raw/data/tweet/Tweets.js +0 -3
  379. package/dist/types/raw/data/tweet/Tweets.js.map +0 -1
  380. package/dist/types/raw/data/user/Followers.d.ts +0 -176
  381. package/dist/types/raw/data/user/Followers.js +0 -3
  382. package/dist/types/raw/data/user/Followers.js.map +0 -1
  383. package/dist/types/raw/data/user/Following.d.ts +0 -176
  384. package/dist/types/raw/data/user/Following.js +0 -3
  385. package/dist/types/raw/data/user/Following.js.map +0 -1
  386. package/dist/types/raw/data/user/Likes.js +0 -3
  387. package/dist/types/raw/data/user/Likes.js.map +0 -1
  388. package/dist/types/raw/data/user/User.d.ts +0 -117
  389. package/dist/types/raw/data/user/User.js.map +0 -1
  390. package/dist/types/raw/general/Trends.d.ts +0 -324
  391. package/dist/types/raw/general/Trends.js +0 -3
  392. package/dist/types/raw/general/Trends.js.map +0 -1
  393. package/dist/types/raw/query/tweet/Details.d.ts +0 -80
  394. package/dist/types/raw/query/tweet/Details.js +0 -5
  395. package/dist/types/raw/query/tweet/Details.js.map +0 -1
  396. package/dist/types/raw/query/tweet/Engagements.js +0 -3
  397. package/dist/types/raw/query/tweet/Engagements.js.map +0 -1
  398. package/dist/types/raw/query/tweet/Likes.d.ts +0 -29
  399. package/dist/types/raw/query/tweet/Likes.js +0 -3
  400. package/dist/types/raw/query/tweet/Likes.js.map +0 -1
  401. package/dist/types/raw/query/tweet/Retweets.d.ts +0 -29
  402. package/dist/types/raw/query/tweet/Retweets.js +0 -3
  403. package/dist/types/raw/query/tweet/Retweets.js.map +0 -1
  404. package/dist/types/raw/query/tweet/Search.d.ts +0 -40
  405. package/dist/types/raw/query/tweet/Search.js +0 -3
  406. package/dist/types/raw/query/tweet/Search.js.map +0 -1
  407. package/dist/types/raw/query/tweet/TweetDetails.d.ts +0 -34
  408. package/dist/types/raw/query/tweet/TweetDetails.js +0 -5
  409. package/dist/types/raw/query/tweet/TweetDetails.js.map +0 -1
  410. package/dist/types/raw/query/tweet/TweetLike.d.ts +0 -29
  411. package/dist/types/raw/query/tweet/TweetLike.js +0 -3
  412. package/dist/types/raw/query/tweet/TweetLike.js.map +0 -1
  413. package/dist/types/raw/query/tweet/TweetLikes.d.ts +0 -29
  414. package/dist/types/raw/query/tweet/TweetLikes.js +0 -3
  415. package/dist/types/raw/query/tweet/TweetLikes.js.map +0 -1
  416. package/dist/types/raw/query/tweet/TweetRetweets.d.ts +0 -0
  417. package/dist/types/raw/query/tweet/TweetRetweets.js +0 -2
  418. package/dist/types/raw/query/tweet/TweetRetweets.js.map +0 -1
  419. package/dist/types/raw/query/user/Details.d.ts +0 -34
  420. package/dist/types/raw/query/user/Details.js +0 -3
  421. package/dist/types/raw/query/user/Details.js.map +0 -1
  422. package/dist/types/raw/tweet/Favouriters.d.ts +0 -164
  423. package/dist/types/raw/tweet/Favouriters.js +0 -3
  424. package/dist/types/raw/tweet/Favouriters.js.map +0 -1
  425. package/dist/types/raw/tweet/Retweeters.js +0 -3
  426. package/dist/types/raw/tweet/Retweeters.js.map +0 -1
  427. package/dist/types/raw/tweet/Tweet.d.ts +0 -746
  428. package/dist/types/raw/tweet/Tweet.js +0 -3
  429. package/dist/types/raw/tweet/Tweet.js.map +0 -1
  430. package/dist/types/raw/tweet/Tweets.js +0 -3
  431. package/dist/types/raw/tweet/Tweets.js.map +0 -1
  432. package/dist/types/raw/user/Followers.js +0 -3
  433. package/dist/types/raw/user/Followers.js.map +0 -1
  434. package/dist/types/raw/user/Following.js +0 -3
  435. package/dist/types/raw/user/Following.js.map +0 -1
  436. package/dist/types/raw/user/Likes.d.ts +0 -1059
  437. package/dist/types/raw/user/Likes.js +0 -3
  438. package/dist/types/raw/user/Likes.js.map +0 -1
  439. package/dist/types/raw/user/Tweets.js +0 -3
  440. package/dist/types/raw/user/Tweets.js.map +0 -1
  441. package/dist/types/raw/user/User.js.map +0 -1
  442. package/dist/types/services/args/TweetFilter.d.ts +0 -50
  443. package/dist/types/services/args/TweetFilter.js +0 -76
  444. package/dist/types/services/args/TweetFilter.js.map +0 -1
  445. package/src/services/helper/urls/Tweets.ts +0 -46
  446. package/src/services/helper/urls/Users.ts +0 -78
  447. /package/src/{types/raw → twitter/types}/tweet/Favouriters.ts +0 -0
  448. /package/src/{types/raw → twitter/types}/tweet/Retweeters.ts +0 -0
  449. /package/src/{types/raw → twitter/types}/tweet/Tweet.ts +0 -0
  450. /package/src/{types/raw → twitter/types}/tweet/Tweets.ts +0 -0
  451. /package/src/{types/raw → twitter/types}/user/Followers.ts +0 -0
  452. /package/src/{types/raw → twitter/types}/user/Following.ts +0 -0
  453. /package/src/{types/raw → twitter/types}/user/Likes.ts +0 -0
  454. /package/src/{types/raw → twitter/types}/user/User.ts +0 -0
@@ -1,255 +1,252 @@
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.TweetService = void 0;
78
- // SERVICES
79
- var FetcherService_1 = require("../util/FetcherService");
80
- // MODELS
81
- var Tweet_1 = require("../../models/data/Tweet");
82
- var User_1 = require("../../models/data/User");
83
- var TweetListArgs_1 = require("../../models/args/TweetListArgs");
84
- var TweetFilter_1 = require("../../models/args/TweetFilter");
85
- var CursoredData_1 = require("../../models/data/CursoredData");
86
- // ENUMS
87
- var Errors_1 = require("../../enums/Errors");
88
- // URLS
89
- var TweetUrls = __importStar(require("../helper/urls/Tweets"));
90
- // EXTRACTORS
91
- var TweetExtractors = __importStar(require("../helper/extractors/Tweets"));
92
- // PARSERS
93
- var Parser_1 = require("../helper/Parser");
94
- /**
95
- * Handles fetching of data related to tweets.
96
- * @public
97
- */
98
- var TweetService = /** @class */ (function (_super) {
99
- __extends(TweetService, _super);
100
- /**
101
- * @param auth The AuthService instance to use for authentication.
102
- */
103
- function TweetService(auth) {
104
- return _super.call(this, auth) || this;
105
- }
106
- /**
107
- * @param filter The filter be used for searching the tweets.
108
- * @param count The number of tweets to fetch, must be >= 10 and <= 20
109
- * @param cursor The cursor to the next batch of tweets. If blank, first batch is fetched.
110
- *
111
- * @returns The list of tweets that match the given filter.
112
- *
113
- * @throws {@link Errors.ValidationErrors.InvalidCount} error, if an invalid count has been provided.
114
- *
115
- * @remarks
116
- *
117
- * Cookies are required to use this method!
118
- */
119
- TweetService.prototype.getTweets = function (query, count, cursor) {
120
- return __awaiter(this, void 0, void 0, function () {
121
- var filter, args, res, data, tweets;
122
- return __generator(this, function (_a) {
123
- switch (_a.label) {
124
- case 0:
125
- filter = new TweetFilter_1.TweetFilter(query);
126
- args = new TweetListArgs_1.TweetListArgs(count, cursor);
127
- return [4 /*yield*/, this.request(TweetUrls.tweetsUrl((0, Parser_1.toQueryString)(filter), args.count, args.cursor), this.isAuthenticated).then(function (res) { return res.data; })];
128
- case 1:
129
- res = _a.sent();
130
- data = TweetExtractors.extractTweets(res);
131
- // Caching data
132
- this.cacheData(data);
133
- tweets = data.required.map(function (item) { return new Tweet_1.Tweet(item); });
134
- // Sorting the tweets by date, from recent to oldest
135
- tweets.sort(function (a, b) { return new Date(b.createdAt).valueOf() - new Date(a.createdAt).valueOf(); });
136
- return [2 /*return*/, new CursoredData_1.CursoredData(tweets, data.cursor)];
137
- }
138
- });
139
- });
140
- };
141
- /**
142
- * @param id The id of the target tweet.
143
- *
144
- * @returns The details of a single tweet with the given tweet id.
145
- *
146
- * @throws {@link Errors.DataErrors.TweetNotFound} error, if no tweet with the given id was found.
147
- *
148
- * @remarks
149
- *
150
- * No cookies are required to use this method.
151
- */
152
- TweetService.prototype.getTweetDetails = function (id) {
153
- return __awaiter(this, void 0, void 0, function () {
154
- var cachedData, res, data, tweet;
155
- return __generator(this, function (_a) {
156
- switch (_a.label) {
157
- case 0: return [4 /*yield*/, this.readData(id)];
158
- case 1:
159
- cachedData = _a.sent();
160
- // If data exists in cache
161
- if (cachedData) {
162
- return [2 /*return*/, cachedData];
163
- }
164
- return [4 /*yield*/, this.request(TweetUrls.tweetDetailsUrl(id), false).then(function (res) { return res.data; })];
165
- case 2:
166
- res = _a.sent();
167
- data = TweetExtractors.extractTweet(res, id);
168
- // Caching data
169
- this.cacheData(data);
170
- tweet = new Tweet_1.Tweet(data.required[0]);
171
- return [2 /*return*/, tweet];
172
- }
173
- });
174
- });
175
- };
176
- /**
177
- * @param tweetId The rest id of the target tweet.
178
- * @param count The batch size of the list, must be >= 10 (when no cursor is provided) and <= 20.
179
- * @param cursor The cursor to the next batch of users. If blank, first batch is fetched.
180
- *
181
- * @returns The list of users who liked the given tweet.
182
- *
183
- * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
184
- * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count is provided.
185
- * @throws {@link Errors.DataErrors.TweetNotFound} error, if no tweet with the given id was found.
186
- *
187
- * @remarks
188
- *
189
- * Cookies are required to use this method!
190
- */
191
- TweetService.prototype.getTweetLikers = function (tweetId, count, cursor) {
192
- return __awaiter(this, void 0, void 0, function () {
193
- var args, res, data, users;
194
- return __generator(this, function (_a) {
195
- switch (_a.label) {
196
- case 0:
197
- // If user is not authenticated, abort
198
- if (!this.isAuthenticated) {
199
- throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
200
- }
201
- args = new TweetListArgs_1.TweetListArgs(count, cursor);
202
- return [4 /*yield*/, this.request(TweetUrls.tweetLikesUrl(tweetId, args.count, args.cursor)).then(function (res) { return res.data; })];
203
- case 1:
204
- res = _a.sent();
205
- data = TweetExtractors.extractTweetLikers(res);
206
- // Caching data
207
- this.cacheData(data);
208
- users = data.required.map(function (item) { return new User_1.User(item); });
209
- return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
210
- }
211
- });
212
- });
213
- };
214
- /**
215
- * @param tweetId The rest id of the target tweet.
216
- * @param count The batch size of the list, must be >= 10 (when no cursor is provided) and <= 100.
217
- * @param cursor The cursor to the next batch of users. If blank, first batch is fetched.
218
- *
219
- * @returns The list of users who retweeted the given tweet.
220
- *
221
- * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
222
- * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count is provided.
223
- * @throws {@link Errors.DataErrors.TweetNotFound} error, if no tweet with the given id was found.
224
- *
225
- * @remarks
226
- *
227
- * Cookies are required to use this method!
228
- */
229
- TweetService.prototype.getTweetRetweeters = function (tweetId, count, cursor) {
230
- return __awaiter(this, void 0, void 0, function () {
231
- var args, res, data, users;
232
- return __generator(this, function (_a) {
233
- switch (_a.label) {
234
- case 0:
235
- // If user is not authenticated, abort
236
- if (!this.isAuthenticated) {
237
- throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
238
- }
239
- args = new TweetListArgs_1.TweetListArgs(count, cursor);
240
- return [4 /*yield*/, this.request(TweetUrls.tweetRetweetUrl(tweetId, args.count, args.cursor)).then(function (res) { return res.data; })];
241
- case 1:
242
- res = _a.sent();
243
- data = TweetExtractors.extractTweetRetweeters(res);
244
- // Caching data
245
- this.cacheData(data);
246
- users = data.required.map(function (item) { return new User_1.User(item); });
247
- return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
248
- }
249
- });
250
- });
251
- };
252
- return TweetService;
253
- }(FetcherService_1.FetcherService));
254
- exports.TweetService = TweetService;
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.TweetService = void 0;
78
+ // SERVICES
79
+ var FetcherService_1 = require("../util/FetcherService");
80
+ // MODELS
81
+ var Url_1 = require("../../twitter/Url");
82
+ var Tweet_1 = require("../../models/data/Tweet");
83
+ var User_1 = require("../../models/data/User");
84
+ var TweetListArgs_1 = require("../../models/args/TweetListArgs");
85
+ var TweetFilter_1 = require("../../models/args/TweetFilter");
86
+ var CursoredData_1 = require("../../models/data/CursoredData");
87
+ // ENUMS
88
+ var Resources_1 = require("../../twitter/enums/Resources");
89
+ var Errors_1 = require("../../enums/Errors");
90
+ // EXTRACTORS
91
+ var TweetExtractors = __importStar(require("../helper/extractors/Tweets"));
92
+ /**
93
+ * Handles fetching of data related to tweets.
94
+ * @public
95
+ */
96
+ var TweetService = /** @class */ (function (_super) {
97
+ __extends(TweetService, _super);
98
+ /**
99
+ * @param auth The AuthService instance to use for authentication.
100
+ */
101
+ function TweetService(auth) {
102
+ return _super.call(this, auth) || this;
103
+ }
104
+ /**
105
+ * @param filter The filter be used for searching the tweets.
106
+ * @param count The number of tweets to fetch, must be >= 10 and <= 20
107
+ * @param cursor The cursor to the next batch of tweets. If blank, first batch is fetched.
108
+ *
109
+ * @returns The list of tweets that match the given filter.
110
+ *
111
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
112
+ * @throws {@link Errors.ValidationErrors.InvalidCount} error, if an invalid count has been provided.
113
+ */
114
+ TweetService.prototype.getTweets = function (query, count, cursor) {
115
+ return __awaiter(this, void 0, void 0, function () {
116
+ var filter, args, url, res, data, tweets;
117
+ return __generator(this, function (_a) {
118
+ switch (_a.label) {
119
+ case 0:
120
+ // If user is not authenticated, abort
121
+ if (!this.isAuthenticated) {
122
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
123
+ }
124
+ filter = new TweetFilter_1.TweetFilter(query);
125
+ args = new TweetListArgs_1.TweetListArgs(count, cursor);
126
+ url = new Url_1.Url(Resources_1.ResourceType.TWEETS, { query: filter.toString(), count: args.count, cursor: args.cursor }).toString();
127
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
128
+ case 1:
129
+ res = _a.sent();
130
+ data = TweetExtractors.extractTweets(res);
131
+ // Caching data
132
+ this.cacheData(data);
133
+ tweets = data.required.map(function (item) { return new Tweet_1.Tweet(item); });
134
+ // Sorting the tweets by date, from recent to oldest
135
+ tweets.sort(function (a, b) { return new Date(b.createdAt).valueOf() - new Date(a.createdAt).valueOf(); });
136
+ return [2 /*return*/, new CursoredData_1.CursoredData(tweets, data.cursor)];
137
+ }
138
+ });
139
+ });
140
+ };
141
+ /**
142
+ * @param id The id of the target tweet.
143
+ *
144
+ * @returns The details of a single tweet with the given tweet id.
145
+ *
146
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
147
+ * @throws {@link Errors.DataErrors.TweetNotFound} error, if no tweet with the given id was found.
148
+ */
149
+ TweetService.prototype.getTweetDetails = function (id) {
150
+ return __awaiter(this, void 0, void 0, function () {
151
+ var cachedData, url, res, data, tweet;
152
+ return __generator(this, function (_a) {
153
+ switch (_a.label) {
154
+ case 0:
155
+ // If user is not authenticated, abort
156
+ if (!this.isAuthenticated) {
157
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
158
+ }
159
+ return [4 /*yield*/, this.readData(id)];
160
+ case 1:
161
+ cachedData = _a.sent();
162
+ // If data exists in cache
163
+ if (cachedData) {
164
+ return [2 /*return*/, cachedData];
165
+ }
166
+ url = new Url_1.Url(Resources_1.ResourceType.TWEET_DETAILS, { id: id }).toString();
167
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
168
+ case 2:
169
+ res = _a.sent();
170
+ data = TweetExtractors.extractTweet(res, id);
171
+ // Caching data
172
+ this.cacheData(data);
173
+ tweet = new Tweet_1.Tweet(data.required[0]);
174
+ return [2 /*return*/, tweet];
175
+ }
176
+ });
177
+ });
178
+ };
179
+ /**
180
+ * @param tweetId The rest id of the target tweet.
181
+ * @param count The batch size of the list, must be >= 10 (when no cursor is provided) and <= 20.
182
+ * @param cursor The cursor to the next batch of users. If blank, first batch is fetched.
183
+ *
184
+ * @returns The list of users who liked the given tweet.
185
+ *
186
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
187
+ * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count is provided.
188
+ * @throws {@link Errors.DataErrors.TweetNotFound} error, if no tweet with the given id was found.
189
+ */
190
+ TweetService.prototype.getTweetLikers = function (tweetId, count, cursor) {
191
+ return __awaiter(this, void 0, void 0, function () {
192
+ var args, url, res, data, users;
193
+ return __generator(this, function (_a) {
194
+ switch (_a.label) {
195
+ case 0:
196
+ // If user is not authenticated, abort
197
+ if (!this.isAuthenticated) {
198
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
199
+ }
200
+ args = new TweetListArgs_1.TweetListArgs(count, cursor);
201
+ url = new Url_1.Url(Resources_1.ResourceType.TWEET_LIKES, { id: tweetId, count: args.count, cursor: args.cursor }).toString();
202
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
203
+ case 1:
204
+ res = _a.sent();
205
+ data = TweetExtractors.extractTweetLikers(res);
206
+ // Caching data
207
+ this.cacheData(data);
208
+ users = data.required.map(function (item) { return new User_1.User(item); });
209
+ return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
210
+ }
211
+ });
212
+ });
213
+ };
214
+ /**
215
+ * @param tweetId The rest id of the target tweet.
216
+ * @param count The batch size of the list, must be >= 10 (when no cursor is provided) and <= 100.
217
+ * @param cursor The cursor to the next batch of users. If blank, first batch is fetched.
218
+ *
219
+ * @returns The list of users who retweeted the given tweet.
220
+ *
221
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
222
+ * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count is provided.
223
+ * @throws {@link Errors.DataErrors.TweetNotFound} error, if no tweet with the given id was found.
224
+ */
225
+ TweetService.prototype.getTweetRetweeters = function (tweetId, count, cursor) {
226
+ return __awaiter(this, void 0, void 0, function () {
227
+ var args, url, res, data, users;
228
+ return __generator(this, function (_a) {
229
+ switch (_a.label) {
230
+ case 0:
231
+ // If user is not authenticated, abort
232
+ if (!this.isAuthenticated) {
233
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
234
+ }
235
+ args = new TweetListArgs_1.TweetListArgs(count, cursor);
236
+ url = new Url_1.Url(Resources_1.ResourceType.TWEET_RETWEETS, { id: tweetId, count: args.count, cursor: args.cursor }).toString();
237
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
238
+ case 1:
239
+ res = _a.sent();
240
+ data = TweetExtractors.extractTweetRetweeters(res);
241
+ // Caching data
242
+ this.cacheData(data);
243
+ users = data.required.map(function (item) { return new User_1.User(item); });
244
+ return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
245
+ }
246
+ });
247
+ });
248
+ };
249
+ return TweetService;
250
+ }(FetcherService_1.FetcherService));
251
+ exports.TweetService = TweetService;
255
252
  //# sourceMappingURL=TweetService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TweetService.js","sourceRoot":"","sources":["../../../src/services/data/TweetService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TweetService.js","sourceRoot":"","sources":["../../../src/services/data/TweetService.ts"],"names":[],"mappings":"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"}