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.
- package/.prettierrc +8 -0
- package/.vscode/extensions.json +3 -0
- package/.vscode/settings.json +5 -0
- package/dist/src/api.d.ts +30 -0
- package/dist/src/api.js +145 -0
- package/dist/src/apis/defaultApi.d.ts +17 -0
- package/dist/src/apis/defaultApi.js +106 -0
- package/dist/src/apis/index.d.ts +9 -0
- package/dist/src/apis/index.js +21 -0
- package/dist/src/apis/initialStateApi.d.ts +2 -0
- package/dist/src/apis/initialStateApi.js +9 -0
- package/dist/src/apis/postApi.d.ts +51 -0
- package/dist/src/apis/postApi.js +236 -0
- package/dist/src/apis/tweetApi.d.ts +88 -0
- package/dist/src/apis/tweetApi.js +277 -0
- package/dist/src/apis/userApi.d.ts +17 -0
- package/dist/src/apis/userApi.js +101 -0
- package/dist/src/apis/userListApi.d.ts +28 -0
- package/dist/src/apis/userListApi.js +135 -0
- package/dist/src/apis/v11GetApi.d.ts +7 -0
- package/dist/src/apis/v11GetApi.js +11 -0
- package/dist/src/apis/v11PostApi.d.ts +22 -0
- package/dist/src/apis/v11PostApi.js +93 -0
- package/dist/src/apis/v20GetApi.d.ts +7 -0
- package/dist/src/apis/v20GetApi.js +11 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +20 -0
- package/dist/src/models/api.d.ts +17 -0
- package/dist/src/models/api.js +130 -0
- package/dist/src/models/index.d.ts +2 -0
- package/dist/src/models/index.js +18 -0
- package/dist/src/models/type.d.ts +15 -0
- package/dist/src/models/type.js +2 -0
- package/dist/src/types/flag.d.ts +5 -0
- package/dist/src/types/flag.js +2 -0
- package/dist/src/types/header.d.ts +14 -0
- package/dist/src/types/header.js +2 -0
- package/dist/src/types/index.d.ts +7 -0
- package/dist/src/types/index.js +23 -0
- package/dist/src/types/response.d.ts +9 -0
- package/dist/src/types/response.js +2 -0
- package/dist/src/types/timeline.d.ts +10 -0
- package/dist/src/types/timeline.js +2 -0
- package/dist/src/types/tweet.d.ts +17 -0
- package/dist/src/types/tweet.js +2 -0
- package/dist/src/types/user.d.ts +10 -0
- package/dist/src/types/user.js +2 -0
- package/dist/src/types/user_list.d.ts +12 -0
- package/dist/src/types/user_list.js +2 -0
- package/jest.config.js +14 -0
- package/package.json +44 -0
- package/src/api.ts +118 -0
- package/src/apis/defaultApi.ts +51 -0
- package/src/apis/index.ts +9 -0
- package/src/apis/initialStateApi.ts +3 -0
- package/src/apis/postApi.ts +169 -0
- package/src/apis/tweetApi.ts +244 -0
- package/src/apis/userApi.ts +47 -0
- package/src/apis/userListApi.ts +90 -0
- package/src/apis/v11GetApi.ts +12 -0
- package/src/apis/v11PostApi.ts +73 -0
- package/src/apis/v20GetApi.ts +12 -0
- package/src/index.ts +4 -0
- package/src/models/api.ts +129 -0
- package/src/models/index.ts +2 -0
- package/src/models/type.ts +16 -0
- package/src/types/flag.ts +5 -0
- package/src/types/header.ts +14 -0
- package/src/types/index.ts +7 -0
- package/src/types/response.ts +11 -0
- package/src/types/timeline.ts +12 -0
- package/src/types/tweet.ts +19 -0
- package/src/types/user.ts +12 -0
- package/src/types/user_list.ts +14 -0
- package/test/api/defaultApi.test.ts +13 -0
- package/test/api/postApi.test.ts +50 -0
- package/test/api/tweetApi.test.ts +74 -0
- package/test/api/userApi.test.ts +13 -0
- package/test/api/userListApi.test.ts +18 -0
- package/test/api/v11PostApi.test.ts +13 -0
- package/test/init.ts +39 -0
- package/test/raw/tweet_api.test.ts +12 -0
- package/test/util.ts +18 -0
- package/tsconfig.build.json +22 -0
- 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
|
+
}
|