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,297 +1,288 @@
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.UserService = void 0;
78
- // SERVICES
79
- var FetcherService_1 = require("../util/FetcherService");
80
- // MODELS
81
- var User_1 = require("../../models/data/User");
82
- var UserListArgs_1 = require("../../models/args/UserListArgs");
83
- var Tweet_1 = require("../../models/data/Tweet");
84
- // TYPES
85
- var CursoredData_1 = require("../../models/data/CursoredData");
86
- // ENUMS
87
- var Errors_1 = require("../../enums/Errors");
88
- // URLS
89
- var UserUrls = __importStar(require("../helper/urls/Users"));
90
- // EXTRACTORS
91
- var UserExtractors = __importStar(require("../helper/extractors/Users"));
92
- /**
93
- * Handles fetching of data related to user account
94
- */
95
- var UserService = /** @class */ (function (_super) {
96
- __extends(UserService, _super);
97
- /**
98
- * @param auth The AuthService instance to use for authentication.
99
- */
100
- function UserService(auth) {
101
- return _super.call(this, auth) || this;
102
- }
103
- /**
104
- * @param id The id/username of the target user.
105
- *
106
- * @returns The details of the given user.
107
- *
108
- * @throws {@link Errors.DataErrors.UserNotFound} error, if no user with the given username was found.
109
- *
110
- * @remarks
111
- *
112
- * No cookies are required to use this method.
113
- */
114
- UserService.prototype.getUserDetails = function (id) {
115
- return __awaiter(this, void 0, void 0, function () {
116
- var res, cachedData, data, user;
117
- return __generator(this, function (_a) {
118
- switch (_a.label) {
119
- case 0:
120
- if (!isNaN(Number(id))) return [3 /*break*/, 2];
121
- return [4 /*yield*/, this.request(UserUrls.userDetailsUrl(id), false).then(function (res) { return res.data; })];
122
- case 1:
123
- // Fetching the raw data
124
- res = _a.sent();
125
- return [3 /*break*/, 5];
126
- case 2: return [4 /*yield*/, this.readData(id)];
127
- case 3:
128
- cachedData = _a.sent();
129
- // If data exists in cache
130
- if (cachedData) {
131
- return [2 /*return*/, cachedData];
132
- }
133
- return [4 /*yield*/, this.request(UserUrls.userDetailsByIdUrl(id), false).then(function (res) { return res.data; })];
134
- case 4:
135
- // Fetching the raw data
136
- res = _a.sent();
137
- _a.label = 5;
138
- case 5:
139
- data = UserExtractors.extractUserDetails(res);
140
- // Caching data
141
- this.cacheData(data);
142
- user = new User_1.User(data.required[0]);
143
- return [2 /*return*/, user];
144
- }
145
- });
146
- });
147
- };
148
- /**
149
- * @param userId The rest id of the target user.
150
- * @param count The number of tweets to fetch, must be >= 40 (when no cursor is provided) and <=100.
151
- * @param cursor The cursor to next batch. If blank, first batch is fetched.
152
- *
153
- * @returns The list of tweets nade by the target user.
154
- *
155
- * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count has been provided.
156
- * @throws {@link Errors.DataErrors.UserNotFound} error, if invalid count has been provided.
157
- *
158
- * @remarks
159
- *
160
- * No cookies are required to use this method.
161
- */
162
- UserService.prototype.getUserTweets = function (userId, count, cursor) {
163
- return __awaiter(this, void 0, void 0, function () {
164
- var args, res, data, tweets;
165
- return __generator(this, function (_a) {
166
- switch (_a.label) {
167
- case 0:
168
- args = new UserListArgs_1.UserListArgs(count, cursor);
169
- return [4 /*yield*/, this.request(UserUrls.userTweetsUrl(userId, args.count, args.cursor), false).then(function (res) { return res.data; })];
170
- case 1:
171
- res = _a.sent();
172
- data = UserExtractors.extractUserTweets(res);
173
- // Caching data
174
- this.cacheData(data);
175
- tweets = data.required.map(function (item) { return new Tweet_1.Tweet(item); });
176
- return [2 /*return*/, new CursoredData_1.CursoredData(tweets, data.cursor)];
177
- }
178
- });
179
- });
180
- };
181
- /**
182
- * @param userId The rest id of the target user.
183
- * @param count The number of following to fetch, must be >= 40 (when no cursor is provided) and <=100.
184
- * @param cursor The cursor to next batch. If blank, first batch is fetched.
185
- *
186
- * @returns The list of users followed by the target user.
187
- *
188
- * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
189
- * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count has been provided.
190
- * @throws {@link Errors.DataErrors.UserNotFound} error, if invalid count has been provided.
191
- *
192
- * @remarks
193
- *
194
- * Cookies are required to use this method!
195
- */
196
- UserService.prototype.getUserFollowing = function (userId, count, cursor) {
197
- return __awaiter(this, void 0, void 0, function () {
198
- var args, res, data, users;
199
- return __generator(this, function (_a) {
200
- switch (_a.label) {
201
- case 0:
202
- // If user is not authenticated, abort
203
- if (!this.isAuthenticated) {
204
- throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
205
- }
206
- args = new UserListArgs_1.UserListArgs(count, cursor);
207
- return [4 /*yield*/, this.request(UserUrls.userFollowingUrl(userId, args.count, args.cursor)).then(function (res) { return res.data; })];
208
- case 1:
209
- res = _a.sent();
210
- data = UserExtractors.extractUserFollow(res);
211
- // Caching data
212
- this.cacheData(data);
213
- users = data.required.map(function (item) { return new User_1.User(item); });
214
- return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
215
- }
216
- });
217
- });
218
- };
219
- /**
220
- * @param userId The rest id of the target user.
221
- * @param count The number of followers to fetch, must be >= 40 (when no cursor is provided) and <=100.
222
- * @param cursor The cursor to next batch. If blank, first batch is fetched.
223
- *
224
- * @returns The list of users following the target user.
225
- *
226
- * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
227
- * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count has been provided.
228
- * @throws {@link Errors.DataErrors.UserNotFound} error, if invalid count has been provided.
229
- *
230
- * @remarks
231
- *
232
- * Cookies are required to use this method!
233
- */
234
- UserService.prototype.getUserFollowers = function (userId, count, cursor) {
235
- return __awaiter(this, void 0, void 0, function () {
236
- var args, res, data, users;
237
- return __generator(this, function (_a) {
238
- switch (_a.label) {
239
- case 0:
240
- // If user is not authenticated, abort
241
- if (!this.isAuthenticated) {
242
- throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
243
- }
244
- args = new UserListArgs_1.UserListArgs(count, cursor);
245
- return [4 /*yield*/, this.request(UserUrls.userFollowersUrl(userId, args.count, args.cursor)).then(function (res) { return res.data; })];
246
- case 1:
247
- res = _a.sent();
248
- data = UserExtractors.extractUserFollow(res);
249
- // Caching data
250
- this.cacheData(data);
251
- users = data.required.map(function (item) { return new User_1.User(item); });
252
- return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
253
- }
254
- });
255
- });
256
- };
257
- /**
258
- * @param userId The rest id of the target user.
259
- * @param count The number of likes to fetch.
260
- * @param cursor The cursor to next batch. If blank, first batch is fetched, must be >= 40 (when no cursor is provided) and <=100.
261
- *
262
- * @returns The list of tweets liked by the target user.
263
- *
264
- * @throws {@link AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
265
- *
266
- * @remarks
267
- *
268
- * Cookies are required to use this method!
269
- */
270
- UserService.prototype.getUserLikes = function (userId, count, cursor) {
271
- return __awaiter(this, void 0, void 0, function () {
272
- var args, res, data, tweets;
273
- return __generator(this, function (_a) {
274
- switch (_a.label) {
275
- case 0:
276
- // If user is not authenticated, abort
277
- if (!this.isAuthenticated) {
278
- throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
279
- }
280
- args = new UserListArgs_1.UserListArgs(count, cursor);
281
- return [4 /*yield*/, this.request(UserUrls.userLikesUrl(userId, args.count, args.cursor)).then(function (res) { return res.data; })];
282
- case 1:
283
- res = _a.sent();
284
- data = UserExtractors.extractUserLikes(res);
285
- // Caching data
286
- this.cacheData(data);
287
- tweets = data.required.map(function (item) { return new Tweet_1.Tweet(item); });
288
- return [2 /*return*/, new CursoredData_1.CursoredData(tweets, data.cursor)];
289
- }
290
- });
291
- });
292
- };
293
- return UserService;
294
- }(FetcherService_1.FetcherService));
295
- exports.UserService = UserService;
296
- ;
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.UserService = void 0;
78
+ // SERVICES
79
+ var FetcherService_1 = require("../util/FetcherService");
80
+ // MODELS
81
+ var Url_1 = require("../../twitter/Url");
82
+ var User_1 = require("../../models/data/User");
83
+ var UserListArgs_1 = require("../../models/args/UserListArgs");
84
+ var Tweet_1 = require("../../models/data/Tweet");
85
+ // TYPES
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 UserExtractors = __importStar(require("../helper/extractors/Users"));
92
+ var TweetService_1 = require("./TweetService");
93
+ /**
94
+ * Handles fetching of data related to user account
95
+ */
96
+ var UserService = /** @class */ (function (_super) {
97
+ __extends(UserService, _super);
98
+ /**
99
+ * @param auth The AuthService instance to use for authentication.
100
+ */
101
+ function UserService(auth) {
102
+ return _super.call(this, auth) || this;
103
+ }
104
+ /**
105
+ * @param id The id/username of the target user.
106
+ *
107
+ * @returns The details of the given user.
108
+ *
109
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
110
+ * @throws {@link Errors.DataErrors.UserNotFound} error, if no user with the given username was found.
111
+ */
112
+ UserService.prototype.getUserDetails = function (id) {
113
+ return __awaiter(this, void 0, void 0, function () {
114
+ var res, url, cachedData, url, data, user;
115
+ return __generator(this, function (_a) {
116
+ switch (_a.label) {
117
+ case 0:
118
+ // If user is not authenticated, abort
119
+ if (!this.isAuthenticated) {
120
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
121
+ }
122
+ if (!isNaN(Number(id))) return [3 /*break*/, 2];
123
+ url = new Url_1.Url(Resources_1.ResourceType.USER_DETAILS, { id: id }).toString();
124
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
125
+ case 1:
126
+ // Fetching the raw data
127
+ res = _a.sent();
128
+ return [3 /*break*/, 5];
129
+ case 2: return [4 /*yield*/, this.readData(id)];
130
+ case 3:
131
+ cachedData = _a.sent();
132
+ // If data exists in cache
133
+ if (cachedData) {
134
+ return [2 /*return*/, cachedData];
135
+ }
136
+ url = new Url_1.Url(Resources_1.ResourceType.USER_DETAILS_BY_ID, { id: id }).toString();
137
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
138
+ case 4:
139
+ // Fetching the raw data
140
+ res = _a.sent();
141
+ _a.label = 5;
142
+ case 5:
143
+ data = UserExtractors.extractUserDetails(res);
144
+ // Caching data
145
+ this.cacheData(data);
146
+ user = new User_1.User(data.required[0]);
147
+ return [2 /*return*/, user];
148
+ }
149
+ });
150
+ });
151
+ };
152
+ /**
153
+ * @param userId The rest id of the target user.
154
+ * @param count The number of tweets to fetch, must be >= 40 (when no cursor is provided) and <=100.
155
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
156
+ *
157
+ * @returns The list of tweets nade by the target user.
158
+ *
159
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
160
+ * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count has been provided.
161
+ * @throws {@link Errors.DataErrors.UserNotFound} error, if invalid count has been provided.
162
+ *
163
+ * @deprecated Use [this](https://rishikant181.github.io/Rettiwt-API/classes/TweetService.html#getTweets) method instead. It's better in every possible way!
164
+ */
165
+ UserService.prototype.getUserTweets = function (userId, count, cursor) {
166
+ return __awaiter(this, void 0, void 0, function () {
167
+ var userName;
168
+ return __generator(this, function (_a) {
169
+ switch (_a.label) {
170
+ case 0: return [4 /*yield*/, this.getUserDetails(userId)];
171
+ case 1:
172
+ userName = (_a.sent()).userName;
173
+ // Getting the tweets of the target user
174
+ return [2 /*return*/, new TweetService_1.TweetService(this.auth).getTweets({
175
+ fromUsers: [userName]
176
+ }, count, cursor)];
177
+ }
178
+ });
179
+ });
180
+ };
181
+ /**
182
+ * @param userId The rest id of the target user.
183
+ * @param count The number of following to fetch, must be >= 40 (when no cursor is provided) and <=100.
184
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
185
+ *
186
+ * @returns The list of users followed by the target user.
187
+ *
188
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
189
+ * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count has been provided.
190
+ * @throws {@link Errors.DataErrors.UserNotFound} error, if invalid count has been provided.
191
+ */
192
+ UserService.prototype.getUserFollowing = function (userId, count, cursor) {
193
+ return __awaiter(this, void 0, void 0, function () {
194
+ var args, url, res, data, users;
195
+ return __generator(this, function (_a) {
196
+ switch (_a.label) {
197
+ case 0:
198
+ // If user is not authenticated, abort
199
+ if (!this.isAuthenticated) {
200
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
201
+ }
202
+ args = new UserListArgs_1.UserListArgs(count, cursor);
203
+ url = new Url_1.Url(Resources_1.ResourceType.USER_FOLLOWING, { id: userId, count: args.count, cursor: args.cursor }).toString();
204
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
205
+ case 1:
206
+ res = _a.sent();
207
+ data = UserExtractors.extractUserFollow(res);
208
+ // Caching data
209
+ this.cacheData(data);
210
+ users = data.required.map(function (item) { return new User_1.User(item); });
211
+ return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
212
+ }
213
+ });
214
+ });
215
+ };
216
+ /**
217
+ * @param userId The rest id of the target user.
218
+ * @param count The number of followers to fetch, must be >= 40 (when no cursor is provided) and <=100.
219
+ * @param cursor The cursor to next batch. If blank, first batch is fetched.
220
+ *
221
+ * @returns The list of users following the target user.
222
+ *
223
+ * @throws {@link Errors.AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
224
+ * @throws {@link Errors.ValidationErrors.InvalidCount} error, if invalid count has been provided.
225
+ * @throws {@link Errors.DataErrors.UserNotFound} error, if invalid count has been provided.
226
+ */
227
+ UserService.prototype.getUserFollowers = function (userId, count, cursor) {
228
+ return __awaiter(this, void 0, void 0, function () {
229
+ var args, url, res, data, users;
230
+ return __generator(this, function (_a) {
231
+ switch (_a.label) {
232
+ case 0:
233
+ // If user is not authenticated, abort
234
+ if (!this.isAuthenticated) {
235
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
236
+ }
237
+ args = new UserListArgs_1.UserListArgs(count, cursor);
238
+ url = new Url_1.Url(Resources_1.ResourceType.USER_FOLLOWERS, { id: userId, count: args.count, cursor: args.cursor }).toString();
239
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
240
+ case 1:
241
+ res = _a.sent();
242
+ data = UserExtractors.extractUserFollow(res);
243
+ // Caching data
244
+ this.cacheData(data);
245
+ users = data.required.map(function (item) { return new User_1.User(item); });
246
+ return [2 /*return*/, new CursoredData_1.CursoredData(users, data.cursor)];
247
+ }
248
+ });
249
+ });
250
+ };
251
+ /**
252
+ * @param userId The rest id of the target user.
253
+ * @param count The number of likes to fetch.
254
+ * @param cursor The cursor to next batch. If blank, first batch is fetched, must be >= 40 (when no cursor is provided) and <=100.
255
+ *
256
+ * @returns The list of tweets liked by the target user.
257
+ *
258
+ * @throws {@link AuthenticationErrors.NotAuthenticated} error, if no cookies have been provided.
259
+ */
260
+ UserService.prototype.getUserLikes = function (userId, count, cursor) {
261
+ return __awaiter(this, void 0, void 0, function () {
262
+ var args, url, res, data, tweets;
263
+ return __generator(this, function (_a) {
264
+ switch (_a.label) {
265
+ case 0:
266
+ // If user is not authenticated, abort
267
+ if (!this.isAuthenticated) {
268
+ throw new Error(Errors_1.AuthenticationErrors.NotAuthenticated);
269
+ }
270
+ args = new UserListArgs_1.UserListArgs(count, cursor);
271
+ url = new Url_1.Url(Resources_1.ResourceType.USER_LIKES, { id: userId, count: args.count, cursor: args.cursor }).toString();
272
+ return [4 /*yield*/, this.request(url).then(function (res) { return res.data; })];
273
+ case 1:
274
+ res = _a.sent();
275
+ data = UserExtractors.extractUserLikes(res);
276
+ // Caching data
277
+ this.cacheData(data);
278
+ tweets = data.required.map(function (item) { return new Tweet_1.Tweet(item); });
279
+ return [2 /*return*/, new CursoredData_1.CursoredData(tweets, data.cursor)];
280
+ }
281
+ });
282
+ });
283
+ };
284
+ return UserService;
285
+ }(FetcherService_1.FetcherService));
286
+ exports.UserService = UserService;
287
+ ;
297
288
  //# sourceMappingURL=UserService.js.map
@@ -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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"}