twitter-openapi-typescript 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/.prettierrc +8 -0
  2. package/.vscode/extensions.json +3 -0
  3. package/.vscode/settings.json +5 -0
  4. package/dist/src/api.d.ts +30 -0
  5. package/dist/src/api.js +145 -0
  6. package/dist/src/apis/defaultApi.d.ts +17 -0
  7. package/dist/src/apis/defaultApi.js +106 -0
  8. package/dist/src/apis/index.d.ts +9 -0
  9. package/dist/src/apis/index.js +21 -0
  10. package/dist/src/apis/initialStateApi.d.ts +2 -0
  11. package/dist/src/apis/initialStateApi.js +9 -0
  12. package/dist/src/apis/postApi.d.ts +51 -0
  13. package/dist/src/apis/postApi.js +236 -0
  14. package/dist/src/apis/tweetApi.d.ts +88 -0
  15. package/dist/src/apis/tweetApi.js +277 -0
  16. package/dist/src/apis/userApi.d.ts +17 -0
  17. package/dist/src/apis/userApi.js +101 -0
  18. package/dist/src/apis/userListApi.d.ts +28 -0
  19. package/dist/src/apis/userListApi.js +135 -0
  20. package/dist/src/apis/v11GetApi.d.ts +7 -0
  21. package/dist/src/apis/v11GetApi.js +11 -0
  22. package/dist/src/apis/v11PostApi.d.ts +22 -0
  23. package/dist/src/apis/v11PostApi.js +93 -0
  24. package/dist/src/apis/v20GetApi.d.ts +7 -0
  25. package/dist/src/apis/v20GetApi.js +11 -0
  26. package/dist/src/index.d.ts +4 -0
  27. package/dist/src/index.js +20 -0
  28. package/dist/src/models/api.d.ts +17 -0
  29. package/dist/src/models/api.js +130 -0
  30. package/dist/src/models/index.d.ts +2 -0
  31. package/dist/src/models/index.js +18 -0
  32. package/dist/src/models/type.d.ts +15 -0
  33. package/dist/src/models/type.js +2 -0
  34. package/dist/src/types/flag.d.ts +5 -0
  35. package/dist/src/types/flag.js +2 -0
  36. package/dist/src/types/header.d.ts +14 -0
  37. package/dist/src/types/header.js +2 -0
  38. package/dist/src/types/index.d.ts +7 -0
  39. package/dist/src/types/index.js +23 -0
  40. package/dist/src/types/response.d.ts +9 -0
  41. package/dist/src/types/response.js +2 -0
  42. package/dist/src/types/timeline.d.ts +10 -0
  43. package/dist/src/types/timeline.js +2 -0
  44. package/dist/src/types/tweet.d.ts +17 -0
  45. package/dist/src/types/tweet.js +2 -0
  46. package/dist/src/types/user.d.ts +10 -0
  47. package/dist/src/types/user.js +2 -0
  48. package/dist/src/types/user_list.d.ts +12 -0
  49. package/dist/src/types/user_list.js +2 -0
  50. package/jest.config.js +14 -0
  51. package/package.json +44 -0
  52. package/src/api.ts +118 -0
  53. package/src/apis/defaultApi.ts +51 -0
  54. package/src/apis/index.ts +9 -0
  55. package/src/apis/initialStateApi.ts +3 -0
  56. package/src/apis/postApi.ts +169 -0
  57. package/src/apis/tweetApi.ts +244 -0
  58. package/src/apis/userApi.ts +47 -0
  59. package/src/apis/userListApi.ts +90 -0
  60. package/src/apis/v11GetApi.ts +12 -0
  61. package/src/apis/v11PostApi.ts +73 -0
  62. package/src/apis/v20GetApi.ts +12 -0
  63. package/src/index.ts +4 -0
  64. package/src/models/api.ts +129 -0
  65. package/src/models/index.ts +2 -0
  66. package/src/models/type.ts +16 -0
  67. package/src/types/flag.ts +5 -0
  68. package/src/types/header.ts +14 -0
  69. package/src/types/index.ts +7 -0
  70. package/src/types/response.ts +11 -0
  71. package/src/types/timeline.ts +12 -0
  72. package/src/types/tweet.ts +19 -0
  73. package/src/types/user.ts +12 -0
  74. package/src/types/user_list.ts +14 -0
  75. package/test/api/defaultApi.test.ts +13 -0
  76. package/test/api/postApi.test.ts +50 -0
  77. package/test/api/tweetApi.test.ts +74 -0
  78. package/test/api/userApi.test.ts +13 -0
  79. package/test/api/userListApi.test.ts +18 -0
  80. package/test/api/v11PostApi.test.ts +13 -0
  81. package/test/init.ts +39 -0
  82. package/test/raw/tweet_api.test.ts +12 -0
  83. package/test/util.ts +18 -0
  84. package/tsconfig.build.json +22 -0
  85. package/tsconfig.json +22 -0
package/test/init.ts ADDED
@@ -0,0 +1,39 @@
1
+ import { TwitterOpenApi } from '@/api';
2
+ import fetch from 'node-fetch';
3
+ import * as dotenv from 'dotenv';
4
+ import * as log4js from 'log4js';
5
+
6
+ dotenv.config();
7
+
8
+ declare const global: GlobalWithCognitoFix;
9
+ global.fetch = fetch;
10
+
11
+ const authToken = process.env.AUTH_TOKEN as string;
12
+ const ct0 = process.env.CSRF_TOKEN as string;
13
+
14
+ export const logger = log4js
15
+ .configure({
16
+ appenders: {
17
+ system: {
18
+ type: 'file',
19
+ filename: 'logs/test.log',
20
+ layout: {
21
+ type: 'pattern',
22
+ pattern: '[%d{hh:mm:ss}] [%p] %m',
23
+ },
24
+ },
25
+ },
26
+ categories: {
27
+ default: { appenders: ['system'], level: 'all' },
28
+ },
29
+ })
30
+ .getLogger('Test');
31
+
32
+ export interface GlobalWithCognitoFix extends Global {
33
+ fetch: any;
34
+ }
35
+ export const getClient = async () => {
36
+ const api = new TwitterOpenApi();
37
+ const client = await api.getClientFromCookies(ct0, authToken);
38
+ return client;
39
+ };
@@ -0,0 +1,12 @@
1
+ import { getClient, logger } from '@test/init';
2
+
3
+ test('getHomeTimelineRaw', async () => {
4
+ const client = await getClient();
5
+ const response = await client.getTweetApi().api.getHomeTimelineRaw({
6
+ queryId: client.flag.HomeTimeline.queryId,
7
+ variables: JSON.stringify(client.flag.HomeTimeline.variables),
8
+ features: JSON.stringify(client.flag.HomeTimeline.features),
9
+ });
10
+ const value = await response.value();
11
+ expect(response.raw.ok).toBe(true);
12
+ });
package/test/util.ts ADDED
@@ -0,0 +1,18 @@
1
+ import { TweetApiUtilsData, UserApiUtilsData } from '@/types';
2
+ import { getClient, logger } from '@test/init';
3
+
4
+ export const printTweet = (tweet: TweetApiUtilsData) => {
5
+ logger.log(`${tweet.user.legacy.screenName}: ${tweet.tweet.legacy.fullText}`.replace(/\n/g, ' '));
6
+ tweet.reply.forEach((reply) => {
7
+ logger.log(`${reply.user.legacy.screenName}: ${reply.tweet.legacy.fullText}`.replace(/\n/g, ' '));
8
+ });
9
+ logger.log('┄'.repeat(50));
10
+ };
11
+
12
+ export const printUser = (user: UserApiUtilsData) => {
13
+ const legacy = user.user.legacy;
14
+ logger.log(legacy.screenName);
15
+ logger.log(`followedBy: ${legacy.followedBy} following: ${legacy.following}`);
16
+ logger.log(`friendsCount: ${legacy.friendsCount} followersCount: ${legacy.followersCount}`);
17
+ logger.log('┄'.repeat(50));
18
+ };
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "declaration": true,
4
+ "target": "es5",
5
+ "module": "commonjs",
6
+ "moduleResolution": "node",
7
+ "outDir": "dist",
8
+ "lib": ["es6", "dom"],
9
+ "typeRoots": ["node_modules/@types"],
10
+ "allowSyntheticDefaultImports": true,
11
+ "rootDir": "./",
12
+ "baseUrl": "./",
13
+ "paths": {
14
+ "@/*": ["./src/*"],
15
+ "@test/*": ["./test/*"]
16
+ }
17
+ },
18
+ "exclude": ["dist", "node_modules", "test"],
19
+ "exports": {
20
+ ".": "./dist/src/index.js"
21
+ }
22
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,22 @@
1
+ {
2
+ "compilerOptions": {
3
+ "declaration": true,
4
+ "target": "es5",
5
+ "module": "commonjs",
6
+ "moduleResolution": "node",
7
+ "outDir": "dist",
8
+ "lib": ["es6", "dom"],
9
+ "typeRoots": ["node_modules/@types"],
10
+ "allowSyntheticDefaultImports": true,
11
+ "rootDir": "./",
12
+ "baseUrl": "./",
13
+ "paths": {
14
+ "@/*": ["./src/*"],
15
+ "@test/*": ["./test/*"]
16
+ }
17
+ },
18
+ "exclude": ["dist", "node_modules"],
19
+ "exports": {
20
+ ".": "./dist/src/index.js"
21
+ }
22
+ }