rettiwt-api 6.0.8 → 6.1.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/.github/ISSUE_TEMPLATE/bug-report.yml +57 -0
- package/.github/ISSUE_TEMPLATE/feature-request.yml +20 -0
- package/.github/ISSUE_TEMPLATE/question.yml +15 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +32 -0
- package/.github/workflows/ci.yml +33 -0
- package/.nvmrc +1 -0
- package/README.md +30 -6
- package/dist/Rettiwt.d.ts +3 -0
- package/dist/Rettiwt.js +4 -0
- package/dist/Rettiwt.js.map +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/collections/Extractors.d.ts +24 -0
- package/dist/collections/Extractors.js +14 -0
- package/dist/collections/Extractors.js.map +1 -1
- package/dist/collections/Groups.js +11 -0
- package/dist/collections/Groups.js.map +1 -1
- package/dist/collections/Requests.js +12 -0
- package/dist/collections/Requests.js.map +1 -1
- package/dist/commands/DirectMessage.d.ts +10 -0
- package/dist/commands/DirectMessage.js +57 -0
- package/dist/commands/DirectMessage.js.map +1 -0
- package/dist/commands/List.js +44 -3
- package/dist/commands/List.js.map +1 -1
- package/dist/commands/Tweet.js +29 -1
- package/dist/commands/Tweet.js.map +1 -1
- package/dist/commands/User.js +39 -1
- package/dist/commands/User.js.map +1 -1
- package/dist/enums/Data.d.ts +3 -1
- package/dist/enums/Data.js +2 -0
- package/dist/enums/Data.js.map +1 -1
- package/dist/enums/Resource.d.ts +11 -0
- package/dist/enums/Resource.js +12 -0
- package/dist/enums/Resource.js.map +1 -1
- package/dist/enums/raw/Analytics.d.ts +6 -3
- package/dist/enums/raw/Analytics.js +5 -2
- package/dist/enums/raw/Analytics.js.map +1 -1
- package/dist/index.d.ts +15 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/models/args/FetchArgs.d.ts +9 -0
- package/dist/models/args/FetchArgs.js +16 -0
- package/dist/models/args/FetchArgs.js.map +1 -1
- package/dist/models/args/PostArgs.d.ts +1 -0
- package/dist/models/args/PostArgs.js +2 -0
- package/dist/models/args/PostArgs.js.map +1 -1
- package/dist/models/data/Analytics.d.ts +43 -0
- package/dist/models/data/Analytics.js +92 -0
- package/dist/models/data/Analytics.js.map +1 -0
- package/dist/models/data/Conversation.d.ts +93 -0
- package/dist/models/data/Conversation.js +293 -0
- package/dist/models/data/Conversation.js.map +1 -0
- package/dist/models/data/CursoredData.d.ts +2 -1
- package/dist/models/data/CursoredData.js +6 -1
- package/dist/models/data/CursoredData.js.map +1 -1
- package/dist/models/data/DirectMessage.d.ts +105 -0
- package/dist/models/data/DirectMessage.js +284 -0
- package/dist/models/data/DirectMessage.js.map +1 -0
- package/dist/models/data/Inbox.d.ts +44 -0
- package/dist/models/data/Inbox.js +106 -0
- package/dist/models/data/Inbox.js.map +1 -0
- package/dist/models/data/List.d.ts +20 -0
- package/dist/models/data/List.js +50 -1
- package/dist/models/data/List.js.map +1 -1
- package/dist/models/data/Tweet.d.ts +6 -6
- package/dist/models/data/Tweet.js +4 -2
- package/dist/models/data/Tweet.js.map +1 -1
- package/dist/models/data/User.d.ts +2 -0
- package/dist/models/data/User.js +6 -0
- package/dist/models/data/User.js.map +1 -1
- package/dist/requests/DirectMessage.d.ts +28 -0
- package/dist/requests/DirectMessage.js +149 -0
- package/dist/requests/DirectMessage.js.map +1 -0
- package/dist/requests/List.d.ts +10 -0
- package/dist/requests/List.js +52 -0
- package/dist/requests/List.js.map +1 -1
- package/dist/requests/Tweet.d.ts +8 -0
- package/dist/requests/Tweet.js +30 -0
- package/dist/requests/Tweet.js.map +1 -1
- package/dist/requests/User.d.ts +8 -1
- package/dist/requests/User.js +67 -8
- package/dist/requests/User.js.map +1 -1
- package/dist/services/public/DirectMessageService.d.ts +100 -0
- package/dist/services/public/DirectMessageService.js +143 -0
- package/dist/services/public/DirectMessageService.js.map +1 -0
- package/dist/services/public/FetcherService.d.ts +2 -2
- package/dist/services/public/FetcherService.js +4 -4
- package/dist/services/public/FetcherService.js.map +1 -1
- package/dist/services/public/ListService.d.ts +85 -0
- package/dist/services/public/ListService.js +111 -0
- package/dist/services/public/ListService.js.map +1 -1
- package/dist/services/public/TweetService.d.ts +56 -0
- package/dist/services/public/TweetService.js +72 -0
- package/dist/services/public/TweetService.js.map +1 -1
- package/dist/services/public/UserService.d.ts +61 -2
- package/dist/services/public/UserService.js +89 -0
- package/dist/services/public/UserService.js.map +1 -1
- package/dist/types/args/FetchArgs.d.ts +69 -12
- package/dist/types/args/PostArgs.d.ts +29 -11
- package/dist/types/data/Analytics.d.ts +42 -0
- package/dist/types/data/Analytics.js +3 -0
- package/dist/types/data/Analytics.js.map +1 -0
- package/dist/types/data/Conversation.d.ts +32 -0
- package/dist/types/data/Conversation.js +3 -0
- package/dist/types/data/Conversation.js.map +1 -0
- package/dist/types/data/CursoredData.d.ts +4 -1
- package/dist/types/data/DirectMessage.d.ts +25 -0
- package/dist/types/data/DirectMessage.js +3 -0
- package/dist/types/data/DirectMessage.js.map +1 -0
- package/dist/types/data/Inbox.d.ts +18 -0
- package/dist/types/data/Inbox.js +3 -0
- package/dist/types/data/Inbox.js.map +1 -0
- package/dist/types/data/List.d.ts +5 -1
- package/dist/types/data/Tweet.d.ts +6 -6
- package/dist/types/data/User.d.ts +4 -0
- package/dist/types/raw/base/Analytic.d.ts +6 -1
- package/dist/types/raw/base/Message.d.ts +16 -0
- package/dist/types/raw/base/Message.js +4 -0
- package/dist/types/raw/base/Message.js.map +1 -0
- package/dist/types/raw/base/Tweet.d.ts +6 -6
- package/dist/types/raw/base/User.d.ts +2 -1
- package/dist/types/raw/composite/TimelineList.d.ts +9 -0
- package/dist/types/raw/composite/TimelineList.js +3 -0
- package/dist/types/raw/composite/TimelineList.js.map +1 -0
- package/dist/types/raw/dm/Conversation.d.ts +55 -0
- package/dist/types/raw/dm/Conversation.js +4 -0
- package/dist/types/raw/dm/Conversation.js.map +1 -0
- package/dist/types/raw/dm/InboxInitial.d.ts +137 -0
- package/dist/types/raw/dm/InboxInitial.js +4 -0
- package/dist/types/raw/dm/InboxInitial.js.map +1 -0
- package/dist/types/raw/dm/InboxTimeline.d.ts +287 -0
- package/dist/types/raw/dm/InboxTimeline.js +4 -0
- package/dist/types/raw/dm/InboxTimeline.js.map +1 -0
- package/dist/types/raw/dm/UserUpdates.d.ts +41 -0
- package/dist/types/raw/dm/UserUpdates.js +4 -0
- package/dist/types/raw/dm/UserUpdates.js.map +1 -0
- package/dist/types/raw/list/AddMember.d.ts +151 -0
- package/dist/types/raw/list/AddMember.js +4 -0
- package/dist/types/raw/list/AddMember.js.map +1 -0
- package/dist/types/raw/list/Details.d.ts +44 -13
- package/dist/types/raw/list/RemoveMember.d.ts +150 -0
- package/dist/types/raw/list/RemoveMember.js +4 -0
- package/dist/types/raw/list/RemoveMember.js.map +1 -0
- package/dist/types/raw/tweet/Bookmark.d.ts +12 -0
- package/dist/types/raw/tweet/Bookmark.js +4 -0
- package/dist/types/raw/tweet/Bookmark.js.map +1 -0
- package/dist/types/raw/tweet/Unbookmark.d.ts +11 -0
- package/dist/types/raw/tweet/Unbookmark.js +4 -0
- package/dist/types/raw/tweet/Unbookmark.js.map +1 -0
- package/dist/types/raw/user/Analytics.d.ts +6 -18
- package/dist/types/raw/user/Analytics.js +0 -1
- package/dist/types/raw/user/Analytics.js.map +1 -1
- package/dist/types/raw/user/Lists.d.ts +319 -0
- package/dist/types/raw/user/Lists.js +4 -0
- package/dist/types/raw/user/Lists.js.map +1 -0
- package/eslint.config.mjs +1 -1
- package/package.json +11 -6
- package/playground/.env.example +1 -0
- package/playground/README.md +53 -0
- package/playground/index.js +15 -0
- package/playground/package.json +15 -0
- package/src/Rettiwt.ts +5 -0
- package/src/cli.ts +2 -0
- package/src/collections/Extractors.ts +29 -0
- package/src/collections/Groups.ts +11 -0
- package/src/collections/Requests.ts +20 -0
- package/src/commands/DirectMessage.ts +62 -0
- package/src/commands/List.ts +44 -3
- package/src/commands/Tweet.ts +29 -1
- package/src/commands/User.ts +65 -1
- package/src/enums/Data.ts +2 -0
- package/src/enums/Resource.ts +13 -0
- package/src/enums/raw/Analytics.ts +5 -2
- package/src/index.ts +15 -0
- package/src/models/args/FetchArgs.ts +17 -0
- package/src/models/args/PostArgs.ts +2 -0
- package/src/models/data/Analytics.ts +97 -0
- package/src/models/data/Conversation.ts +344 -0
- package/src/models/data/CursoredData.ts +7 -2
- package/src/models/data/DirectMessage.ts +335 -0
- package/src/models/data/Inbox.ts +124 -0
- package/src/models/data/List.ts +60 -1
- package/src/models/data/Tweet.ts +10 -8
- package/src/models/data/User.ts +6 -0
- package/src/requests/DirectMessage.ts +233 -0
- package/src/requests/List.ts +58 -0
- package/src/requests/Tweet.ts +32 -0
- package/src/requests/User.ts +70 -7
- package/src/services/public/DirectMessageService.ts +159 -0
- package/src/services/public/FetcherService.ts +3 -3
- package/src/services/public/ListService.ts +127 -0
- package/src/services/public/TweetService.ts +82 -0
- package/src/services/public/UserService.ts +110 -2
- package/src/types/args/FetchArgs.ts +77 -12
- package/src/types/args/PostArgs.ts +31 -11
- package/src/types/data/Analytics.ts +58 -0
- package/src/types/data/Conversation.ts +44 -0
- package/src/types/data/CursoredData.ts +4 -1
- package/src/types/data/DirectMessage.ts +33 -0
- package/src/types/data/Inbox.ts +23 -0
- package/src/types/data/List.ts +7 -1
- package/src/types/data/Tweet.ts +6 -6
- package/src/types/data/User.ts +6 -0
- package/src/types/raw/base/Analytic.ts +7 -1
- package/src/types/raw/base/Message.ts +22 -0
- package/src/types/raw/base/Tweet.ts +6 -6
- package/src/types/raw/base/User.ts +2 -1
- package/src/types/raw/composite/TimelineList.ts +10 -0
- package/src/types/raw/dm/Conversation.ts +59 -0
- package/src/types/raw/dm/InboxInitial.ts +155 -0
- package/src/types/raw/dm/InboxTimeline.ts +301 -0
- package/src/types/raw/dm/UserUpdates.ts +46 -0
- package/src/types/raw/list/AddMember.ts +175 -0
- package/src/types/raw/list/Details.ts +52 -13
- package/src/types/raw/list/RemoveMember.ts +174 -0
- package/src/types/raw/tweet/Bookmark.ts +14 -0
- package/src/types/raw/tweet/Unbookmark.ts +14 -0
- package/src/types/raw/user/Analytics.ts +6 -22
- package/src/types/raw/user/Lists.ts +378 -0
- package/tsconfig.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -13,23 +13,31 @@ export * from './enums/Resource';
|
|
|
13
13
|
export * from './enums/Tweet';
|
|
14
14
|
export * from './models/args/FetchArgs';
|
|
15
15
|
export * from './models/args/PostArgs';
|
|
16
|
+
export * from './models/data/Conversation';
|
|
16
17
|
export * from './models/data/CursoredData';
|
|
18
|
+
export * from './models/data/DirectMessage';
|
|
19
|
+
export * from './models/data/Inbox';
|
|
17
20
|
export * from './models/data/List';
|
|
18
21
|
export * from './models/data/Notification';
|
|
19
22
|
export * from './models/data/Tweet';
|
|
20
23
|
export * from './models/data/User';
|
|
21
24
|
export * from './models/errors/TwitterError';
|
|
25
|
+
export * from './requests/DirectMessage';
|
|
22
26
|
export * from './requests/List';
|
|
23
27
|
export * from './requests/Media';
|
|
24
28
|
export * from './requests/Tweet';
|
|
25
29
|
export * from './requests/User';
|
|
30
|
+
export * from './services/public/DirectMessageService';
|
|
26
31
|
export * from './services/public/FetcherService';
|
|
27
32
|
export * from './services/public/ListService';
|
|
28
33
|
export * from './services/public/TweetService';
|
|
29
34
|
export * from './services/public/UserService';
|
|
30
35
|
export * from './types/args/FetchArgs';
|
|
31
36
|
export * from './types/args/PostArgs';
|
|
37
|
+
export * from './types/data/Conversation';
|
|
32
38
|
export * from './types/data/CursoredData';
|
|
39
|
+
export * from './types/data/DirectMessage';
|
|
40
|
+
export * from './types/data/Inbox';
|
|
33
41
|
export * from './types/data/List';
|
|
34
42
|
export * from './types/data/Notification';
|
|
35
43
|
export * from './types/data/Tweet';
|
|
@@ -42,6 +50,7 @@ export { IErrorData as IRawErrorData, IErrorDetails as IRawErrorDetails } from '
|
|
|
42
50
|
export { ILimitedVisibilityTweet as IRawLimitedVisibilityTweet } from './types/raw/base/LimitedVisibilityTweet';
|
|
43
51
|
export { IList as IRawList } from './types/raw/base/List';
|
|
44
52
|
export { IMedia as IRawMedia } from './types/raw/base/Media';
|
|
53
|
+
export { IMessage as IRawMessage } from './types/raw/base/Message';
|
|
45
54
|
export { INotification as IRawNotification } from './types/raw/base/Notification';
|
|
46
55
|
export { ISpace as IRawSpace } from './types/raw/base/Space';
|
|
47
56
|
export { ITweet as IRawTweet } from './types/raw/base/Tweet';
|
|
@@ -50,6 +59,8 @@ export { IDataResult as IRawDataResult } from './types/raw/composite/DataResult'
|
|
|
50
59
|
export { ITimelineTweet as IRawTimelineTweet } from './types/raw/composite/TimelineTweet';
|
|
51
60
|
export { ITimelineUser as IRawTimelineUser } from './types/raw/composite/TimelineUser';
|
|
52
61
|
export { IResponse as IRawResponse } from './types/raw/generic/Response';
|
|
62
|
+
export { IListMemberAddResponse as IRawListMemberAddResponse } from './types/raw/list/AddMember';
|
|
63
|
+
export { IListMemberRemoveResponse as IRawListMemberRemoveResponse } from './types/raw/list/RemoveMember';
|
|
53
64
|
export { IListDetailsResponse as IRawListDetailsResponse } from './types/raw/list/Details';
|
|
54
65
|
export { IListMembersResponse as IRawListMembersResponse } from './types/raw/list/Members';
|
|
55
66
|
export { IListTweetsResponse as IRawListTweetsResponse } from './types/raw/list/Tweets';
|
|
@@ -91,3 +102,7 @@ export { IUserTweetsAndRepliesResponse as IRawUserTweetsAndRepliesResponse } fro
|
|
|
91
102
|
export { IUserUnfollowResponse as IRawUserUnfollowResponse } from './types/raw/user/Unfollow';
|
|
92
103
|
export * from './types/ErrorHandler';
|
|
93
104
|
export * from './types/RettiwtConfig';
|
|
105
|
+
export { IConversationTimelineResponse as IRawConversationTimelineResponse } from './types/raw/dm/Conversation';
|
|
106
|
+
export { IInboxInitialResponse as IRawInboxInitialResponse } from './types/raw/dm/InboxInitial';
|
|
107
|
+
export { IInboxTimelineResponse as IRawInboxTimelineResponse } from './types/raw/dm/InboxTimeline';
|
|
108
|
+
export { IUserUpdatesResponse as IRawUserUpdatesResponse } from './types/raw/dm/UserUpdates';
|
package/dist/index.js
CHANGED
|
@@ -32,18 +32,23 @@ __exportStar(require("./enums/Tweet"), exports);
|
|
|
32
32
|
// MODELS
|
|
33
33
|
__exportStar(require("./models/args/FetchArgs"), exports);
|
|
34
34
|
__exportStar(require("./models/args/PostArgs"), exports);
|
|
35
|
+
__exportStar(require("./models/data/Conversation"), exports);
|
|
35
36
|
__exportStar(require("./models/data/CursoredData"), exports);
|
|
37
|
+
__exportStar(require("./models/data/DirectMessage"), exports);
|
|
38
|
+
__exportStar(require("./models/data/Inbox"), exports);
|
|
36
39
|
__exportStar(require("./models/data/List"), exports);
|
|
37
40
|
__exportStar(require("./models/data/Notification"), exports);
|
|
38
41
|
__exportStar(require("./models/data/Tweet"), exports);
|
|
39
42
|
__exportStar(require("./models/data/User"), exports);
|
|
40
43
|
__exportStar(require("./models/errors/TwitterError"), exports);
|
|
41
44
|
// REQUESTS
|
|
45
|
+
__exportStar(require("./requests/DirectMessage"), exports);
|
|
42
46
|
__exportStar(require("./requests/List"), exports);
|
|
43
47
|
__exportStar(require("./requests/Media"), exports);
|
|
44
48
|
__exportStar(require("./requests/Tweet"), exports);
|
|
45
49
|
__exportStar(require("./requests/User"), exports);
|
|
46
50
|
// SERVICES
|
|
51
|
+
__exportStar(require("./services/public/DirectMessageService"), exports);
|
|
47
52
|
__exportStar(require("./services/public/FetcherService"), exports);
|
|
48
53
|
__exportStar(require("./services/public/ListService"), exports);
|
|
49
54
|
__exportStar(require("./services/public/TweetService"), exports);
|
|
@@ -51,7 +56,10 @@ __exportStar(require("./services/public/UserService"), exports);
|
|
|
51
56
|
// TYPES
|
|
52
57
|
__exportStar(require("./types/args/FetchArgs"), exports);
|
|
53
58
|
__exportStar(require("./types/args/PostArgs"), exports);
|
|
59
|
+
__exportStar(require("./types/data/Conversation"), exports);
|
|
54
60
|
__exportStar(require("./types/data/CursoredData"), exports);
|
|
61
|
+
__exportStar(require("./types/data/DirectMessage"), exports);
|
|
62
|
+
__exportStar(require("./types/data/Inbox"), exports);
|
|
55
63
|
__exportStar(require("./types/data/List"), exports);
|
|
56
64
|
__exportStar(require("./types/data/Notification"), exports);
|
|
57
65
|
__exportStar(require("./types/data/Tweet"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO;AACP,4CAA0B;AAE1B,QAAQ;AACR,wDAAsC;AACtC,oDAAkC;AAClC,2DAAyC;AACzC,oDAAkC;AAClC,8CAA4B;AAC5B,yDAAuC;AACvC,+CAA6B;AAC7B,kDAAgC;AAChC,gDAA8B;AAC9B,uDAAqC;AACrC,mDAAiC;AACjC,gDAA8B;AAE9B,SAAS;AACT,0DAAwC;AACxC,yDAAuC;AACvC,6DAA2C;AAC3C,qDAAmC;AACnC,6DAA2C;AAC3C,sDAAoC;AACpC,qDAAmC;AACnC,+DAA6C;AAE7C,WAAW;AACX,kDAAgC;AAChC,mDAAiC;AACjC,mDAAiC;AACjC,kDAAgC;AAEhC,WAAW;AACX,mEAAiD;AACjD,gEAA8C;AAC9C,iEAA+C;AAC/C,gEAA8C;AAE9C,QAAQ;AACR,yDAAuC;AACvC,wDAAsC;AACtC,4DAA0C;AAC1C,oDAAkC;AAClC,4DAA0C;AAC1C,qDAAmC;AACnC,oDAAkC;AAClC,8DAA4C;AAC5C,2DAAyC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO;AACP,4CAA0B;AAE1B,QAAQ;AACR,wDAAsC;AACtC,oDAAkC;AAClC,2DAAyC;AACzC,oDAAkC;AAClC,8CAA4B;AAC5B,yDAAuC;AACvC,+CAA6B;AAC7B,kDAAgC;AAChC,gDAA8B;AAC9B,uDAAqC;AACrC,mDAAiC;AACjC,gDAA8B;AAE9B,SAAS;AACT,0DAAwC;AACxC,yDAAuC;AACvC,6DAA2C;AAC3C,6DAA2C;AAC3C,8DAA4C;AAC5C,sDAAoC;AACpC,qDAAmC;AACnC,6DAA2C;AAC3C,sDAAoC;AACpC,qDAAmC;AACnC,+DAA6C;AAE7C,WAAW;AACX,2DAAyC;AACzC,kDAAgC;AAChC,mDAAiC;AACjC,mDAAiC;AACjC,kDAAgC;AAEhC,WAAW;AACX,yEAAuD;AACvD,mEAAiD;AACjD,gEAA8C;AAC9C,iEAA+C;AAC/C,gEAA8C;AAE9C,QAAQ;AACR,yDAAuC;AACvC,wDAAsC;AACtC,4DAA0C;AAC1C,4DAA0C;AAC1C,6DAA2C;AAC3C,qDAAmC;AACnC,oDAAkC;AAClC,4DAA0C;AAC1C,qDAAmC;AACnC,oDAAkC;AAClC,8DAA4C;AAC5C,2DAAyC;AAyDzC,uDAAqC;AACrC,wDAAsC"}
|
|
@@ -1,17 +1,26 @@
|
|
|
1
1
|
import { TweetRepliesSortType } from '../../enums/Tweet';
|
|
2
2
|
import { IFetchArgs, ITweetFilter } from '../../types/args/FetchArgs';
|
|
3
|
+
import type { RawAnalyticsGranularity, RawAnalyticsMetric } from '../../enums/raw/Analytics';
|
|
3
4
|
/**
|
|
4
5
|
* Options specifying the data that is to be fetched.
|
|
5
6
|
*
|
|
6
7
|
* @public
|
|
7
8
|
*/
|
|
8
9
|
export declare class FetchArgs implements IFetchArgs {
|
|
10
|
+
activeConversationId?: string;
|
|
11
|
+
conversationId?: string;
|
|
9
12
|
count?: number;
|
|
10
13
|
cursor?: string;
|
|
11
14
|
filter?: TweetFilter;
|
|
15
|
+
fromTime?: Date;
|
|
16
|
+
granularity?: RawAnalyticsGranularity;
|
|
12
17
|
id?: string;
|
|
13
18
|
ids?: string[];
|
|
19
|
+
maxId?: string;
|
|
20
|
+
metrics?: RawAnalyticsMetric[];
|
|
21
|
+
showVerifiedFollowers?: boolean;
|
|
14
22
|
sortBy?: TweetRepliesSortType;
|
|
23
|
+
toTime?: Date;
|
|
15
24
|
/**
|
|
16
25
|
* @param args - Additional user-defined arguments for fetching the resource.
|
|
17
26
|
*/
|
|
@@ -7,12 +7,20 @@ exports.TweetFilter = exports.FetchArgs = void 0;
|
|
|
7
7
|
* @public
|
|
8
8
|
*/
|
|
9
9
|
class FetchArgs {
|
|
10
|
+
activeConversationId;
|
|
11
|
+
conversationId;
|
|
10
12
|
count;
|
|
11
13
|
cursor;
|
|
12
14
|
filter;
|
|
15
|
+
fromTime;
|
|
16
|
+
granularity;
|
|
13
17
|
id;
|
|
14
18
|
ids;
|
|
19
|
+
maxId;
|
|
20
|
+
metrics;
|
|
21
|
+
showVerifiedFollowers;
|
|
15
22
|
sortBy;
|
|
23
|
+
toTime;
|
|
16
24
|
/**
|
|
17
25
|
* @param args - Additional user-defined arguments for fetching the resource.
|
|
18
26
|
*/
|
|
@@ -23,6 +31,14 @@ class FetchArgs {
|
|
|
23
31
|
this.cursor = args.cursor;
|
|
24
32
|
this.filter = args.filter ? new TweetFilter(args.filter) : undefined;
|
|
25
33
|
this.sortBy = args.sortBy;
|
|
34
|
+
this.fromTime = args.fromTime;
|
|
35
|
+
this.toTime = args.toTime;
|
|
36
|
+
this.granularity = args.granularity;
|
|
37
|
+
this.metrics = args.metrics;
|
|
38
|
+
this.showVerifiedFollowers = args.showVerifiedFollowers;
|
|
39
|
+
this.activeConversationId = args.activeConversationId;
|
|
40
|
+
this.conversationId = args.conversationId;
|
|
41
|
+
this.maxId = args.maxId;
|
|
26
42
|
}
|
|
27
43
|
}
|
|
28
44
|
exports.FetchArgs = FetchArgs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FetchArgs.js","sourceRoot":"","sources":["../../../src/models/args/FetchArgs.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"FetchArgs.js","sourceRoot":"","sources":["../../../src/models/args/FetchArgs.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ export declare class PostArgs implements IPostArgs {
|
|
|
8
8
|
id?: string;
|
|
9
9
|
tweet?: NewTweet;
|
|
10
10
|
upload?: UploadArgs;
|
|
11
|
+
userId?: string;
|
|
11
12
|
/**
|
|
12
13
|
* @param resource - The resource to be posted.
|
|
13
14
|
* @param args - Additional user-defined arguments for posting the resource.
|
|
@@ -10,6 +10,7 @@ class PostArgs {
|
|
|
10
10
|
id;
|
|
11
11
|
tweet;
|
|
12
12
|
upload;
|
|
13
|
+
userId;
|
|
13
14
|
/**
|
|
14
15
|
* @param resource - The resource to be posted.
|
|
15
16
|
* @param args - Additional user-defined arguments for posting the resource.
|
|
@@ -18,6 +19,7 @@ class PostArgs {
|
|
|
18
19
|
this.id = args.id;
|
|
19
20
|
this.tweet = args.tweet ? new NewTweet(args.tweet) : undefined;
|
|
20
21
|
this.upload = args.upload ? new UploadArgs(args.upload) : undefined;
|
|
22
|
+
this.userId = args.userId;
|
|
21
23
|
}
|
|
22
24
|
}
|
|
23
25
|
exports.PostArgs = PostArgs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostArgs.js","sourceRoot":"","sources":["../../../src/models/args/PostArgs.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,MAAa,QAAQ;IACb,EAAE,CAAU;IACZ,KAAK,CAAY;IACjB,MAAM,CAAc;
|
|
1
|
+
{"version":3,"file":"PostArgs.js","sourceRoot":"","sources":["../../../src/models/args/PostArgs.ts"],"names":[],"mappings":";;;AAEA;;;;GAIG;AACH,MAAa,QAAQ;IACb,EAAE,CAAU;IACZ,KAAK,CAAY;IACjB,MAAM,CAAc;IACpB,MAAM,CAAU;IAEvB;;;OAGG;IACH,YAAmB,IAAe;QACjC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,CAAC;CACD;AAhBD,4BAgBC;AAED;;;;GAIG;AACH,MAAa,QAAQ;IACb,KAAK,CAAmB;IACxB,KAAK,CAAU;IACf,OAAO,CAAU;IACjB,WAAW,CAAQ;IACnB,IAAI,CAAS;IAEpB;;OAEG;IACH,YAAmB,QAAmB;QACrC,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC;IACjC,CAAC;CACD;AAjBD,4BAiBC;AAED;;;;GAIG;AACH,MAAa,aAAa;IAClB,EAAE,CAAS;IACX,IAAI,CAAY;IAEvB;;OAEG;IACH,YAAmB,aAA6B;QAC/C,IAAI,CAAC,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC;IAChC,CAAC;CACD;AAXD,sCAWC;AAED;;;;GAIG;AACH,MAAa,UAAU;IACf,EAAE,CAAU;IACZ,KAAK,CAAwB;IAC7B,IAAI,CAAU;IAErB;;;OAGG;IACH,YAAmB,IAAiB;QACnC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;IACnB,CAAC;CACD;AAdD,gCAcC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { IAnalytics as IRawAnalytics } from '../../types/raw/base/Analytic';
|
|
2
|
+
import type { IAnalytics } from '../../types/data/Analytics';
|
|
3
|
+
import type { IAnalyticsMetric } from '../../types/raw/base/Analytic';
|
|
4
|
+
/**
|
|
5
|
+
* The details of the analytic result of the connected User.
|
|
6
|
+
*
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export declare class Analytics implements IAnalytics {
|
|
10
|
+
/** The raw analytic details. */
|
|
11
|
+
private readonly _raw;
|
|
12
|
+
bookmarks: number;
|
|
13
|
+
createQuote: number;
|
|
14
|
+
createReply: number;
|
|
15
|
+
createTweets: number;
|
|
16
|
+
createdAt: string;
|
|
17
|
+
engagements: number;
|
|
18
|
+
followers: number;
|
|
19
|
+
follows: number;
|
|
20
|
+
impressions: number;
|
|
21
|
+
likes: number;
|
|
22
|
+
organicMetricsTimeSeries: IAnalyticsMetric[];
|
|
23
|
+
profileVisits: number;
|
|
24
|
+
replies: number;
|
|
25
|
+
retweets: number;
|
|
26
|
+
shares: number;
|
|
27
|
+
unfollows: number;
|
|
28
|
+
verifiedFollowers: number;
|
|
29
|
+
constructor(analytics: IRawAnalytics);
|
|
30
|
+
/** The raw analytic details. */
|
|
31
|
+
get raw(): IRawAnalytics;
|
|
32
|
+
/**
|
|
33
|
+
* Reduces the organic metrics time series to a total value for a specific metric type.
|
|
34
|
+
*
|
|
35
|
+
* @param metricType - metricType The type of metric to reduce.
|
|
36
|
+
* @returns the total value of the specified metric type across all time series.
|
|
37
|
+
*/
|
|
38
|
+
private _reduceMetrics;
|
|
39
|
+
/**
|
|
40
|
+
* @returns A serializable JSON representation of `this` object.
|
|
41
|
+
*/
|
|
42
|
+
toJSON(): IAnalytics;
|
|
43
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Analytics = void 0;
|
|
4
|
+
const Analytics_1 = require("../../enums/raw/Analytics");
|
|
5
|
+
/**
|
|
6
|
+
* The details of the analytic result of the connected User.
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
class Analytics {
|
|
11
|
+
/** The raw analytic details. */
|
|
12
|
+
_raw;
|
|
13
|
+
bookmarks;
|
|
14
|
+
createQuote;
|
|
15
|
+
createReply;
|
|
16
|
+
createTweets;
|
|
17
|
+
createdAt;
|
|
18
|
+
engagements;
|
|
19
|
+
followers;
|
|
20
|
+
follows;
|
|
21
|
+
impressions;
|
|
22
|
+
likes;
|
|
23
|
+
organicMetricsTimeSeries;
|
|
24
|
+
profileVisits;
|
|
25
|
+
replies;
|
|
26
|
+
retweets;
|
|
27
|
+
shares;
|
|
28
|
+
unfollows;
|
|
29
|
+
verifiedFollowers;
|
|
30
|
+
constructor(analytics) {
|
|
31
|
+
this._raw = { ...analytics };
|
|
32
|
+
this.organicMetricsTimeSeries = analytics.organic_metrics_time_series;
|
|
33
|
+
this.createdAt = new Date().toISOString();
|
|
34
|
+
this.followers = analytics.relationship_counts.followers;
|
|
35
|
+
this.verifiedFollowers = parseInt(analytics.verified_follower_count, 10);
|
|
36
|
+
this.impressions = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.IMPRESSIONS);
|
|
37
|
+
this.profileVisits = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.PROFILE_VISITS);
|
|
38
|
+
this.engagements = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.ENGAGEMENTS);
|
|
39
|
+
this.follows = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.FOLLOWS);
|
|
40
|
+
this.replies = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.REPLIES);
|
|
41
|
+
this.likes = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.LIKES);
|
|
42
|
+
this.retweets = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.RETWEETS);
|
|
43
|
+
this.bookmarks = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.BOOKMARK);
|
|
44
|
+
this.shares = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.SHARE);
|
|
45
|
+
this.createTweets = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.CREATE_TWEET);
|
|
46
|
+
this.createQuote = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.CREATE_QUOTE);
|
|
47
|
+
this.createReply = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.CREATE_REPLY);
|
|
48
|
+
this.unfollows = this._reduceMetrics(Analytics_1.RawAnalyticsMetric.UNFOLLOWS);
|
|
49
|
+
}
|
|
50
|
+
/** The raw analytic details. */
|
|
51
|
+
get raw() {
|
|
52
|
+
return { ...this._raw };
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Reduces the organic metrics time series to a total value for a specific metric type.
|
|
56
|
+
*
|
|
57
|
+
* @param metricType - metricType The type of metric to reduce.
|
|
58
|
+
* @returns the total value of the specified metric type across all time series.
|
|
59
|
+
*/
|
|
60
|
+
_reduceMetrics(metricType) {
|
|
61
|
+
return this.organicMetricsTimeSeries.reduce((acc, metric) => {
|
|
62
|
+
const metricValue = metric.metric_values.find((m) => m.metric_type === metricType);
|
|
63
|
+
return acc + (metricValue ? metricValue.metric_value : 0);
|
|
64
|
+
}, 0);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @returns A serializable JSON representation of `this` object.
|
|
68
|
+
*/
|
|
69
|
+
toJSON() {
|
|
70
|
+
return {
|
|
71
|
+
createdAt: this.createdAt,
|
|
72
|
+
followers: this.followers,
|
|
73
|
+
verifiedFollowers: this.verifiedFollowers,
|
|
74
|
+
impressions: this.impressions,
|
|
75
|
+
profileVisits: this.profileVisits,
|
|
76
|
+
engagements: this.engagements,
|
|
77
|
+
follows: this.follows,
|
|
78
|
+
replies: this.replies,
|
|
79
|
+
likes: this.likes,
|
|
80
|
+
retweets: this.retweets,
|
|
81
|
+
bookmarks: this.bookmarks,
|
|
82
|
+
shares: this.shares,
|
|
83
|
+
createTweets: this.createTweets,
|
|
84
|
+
createQuote: this.createQuote,
|
|
85
|
+
unfollows: this.unfollows,
|
|
86
|
+
createReply: this.createReply,
|
|
87
|
+
organicMetricsTimeSeries: this.organicMetricsTimeSeries,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
exports.Analytics = Analytics;
|
|
92
|
+
//# sourceMappingURL=Analytics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Analytics.js","sourceRoot":"","sources":["../../../src/models/data/Analytics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { IConversation } from '../../types/data/Conversation';
|
|
2
|
+
import { IConversationTimelineResponse } from '../../types/raw/dm/Conversation';
|
|
3
|
+
import { IInboxInitialResponse, Conversation as RawConversation } from '../../types/raw/dm/InboxInitial';
|
|
4
|
+
import { IInboxTimelineResponse } from '../../types/raw/dm/InboxTimeline';
|
|
5
|
+
import { DirectMessage } from './DirectMessage';
|
|
6
|
+
/**
|
|
7
|
+
* The details of a single conversation.
|
|
8
|
+
*
|
|
9
|
+
* @public
|
|
10
|
+
*/
|
|
11
|
+
export declare class Conversation implements IConversation {
|
|
12
|
+
/** The raw conversation details. */
|
|
13
|
+
private readonly _raw;
|
|
14
|
+
avatarUrl?: string;
|
|
15
|
+
hasMore: boolean;
|
|
16
|
+
id: string;
|
|
17
|
+
lastActivityAt: string;
|
|
18
|
+
lastMessageId?: string;
|
|
19
|
+
messages: DirectMessage[];
|
|
20
|
+
muted: boolean;
|
|
21
|
+
name?: string;
|
|
22
|
+
notificationsDisabled: boolean;
|
|
23
|
+
participants: string[];
|
|
24
|
+
trusted: boolean;
|
|
25
|
+
type: 'ONE_TO_ONE' | 'GROUP_DM';
|
|
26
|
+
/**
|
|
27
|
+
* @param conversation - The raw conversation details from the API response.
|
|
28
|
+
* @param messages - Array of messages in this conversation.
|
|
29
|
+
*/
|
|
30
|
+
constructor(conversation: unknown, messages?: DirectMessage[]);
|
|
31
|
+
/** The raw conversation details. */
|
|
32
|
+
get raw(): RawConversation;
|
|
33
|
+
/**
|
|
34
|
+
* Parse avatar URL from conversation data
|
|
35
|
+
*/
|
|
36
|
+
private _parseAvatarUrl;
|
|
37
|
+
/**
|
|
38
|
+
* Parse conversation type with proper fallback
|
|
39
|
+
*/
|
|
40
|
+
private _parseConversationType;
|
|
41
|
+
/**
|
|
42
|
+
* Parse participants array with type safety
|
|
43
|
+
*/
|
|
44
|
+
private _parseParticipants;
|
|
45
|
+
/**
|
|
46
|
+
* Parse timestamp with proper fallback
|
|
47
|
+
*/
|
|
48
|
+
private _parseTimestamp;
|
|
49
|
+
/**
|
|
50
|
+
* Extracts a single conversation from conversation timeline response.
|
|
51
|
+
*
|
|
52
|
+
* @param response - The raw response data.
|
|
53
|
+
*
|
|
54
|
+
* @returns The deserialized conversation with full message history.
|
|
55
|
+
*/
|
|
56
|
+
static fromConversationTimeline(response: IConversationTimelineResponse): Conversation | undefined;
|
|
57
|
+
/**
|
|
58
|
+
* Extracts conversations from inbox initial state response.
|
|
59
|
+
*
|
|
60
|
+
* @param response - The raw response data.
|
|
61
|
+
*
|
|
62
|
+
* @returns The deserialized list of conversations with their preview messages.
|
|
63
|
+
*/
|
|
64
|
+
static listFromInboxInitial(response: IInboxInitialResponse): Conversation[];
|
|
65
|
+
/**
|
|
66
|
+
* Extracts conversations from inbox timeline response.
|
|
67
|
+
*
|
|
68
|
+
* @param response - The raw response data.
|
|
69
|
+
*
|
|
70
|
+
* @returns The deserialized list of conversations with their messages.
|
|
71
|
+
*/
|
|
72
|
+
static listFromInboxTimeline(response: IInboxTimelineResponse): Conversation[];
|
|
73
|
+
/**
|
|
74
|
+
* Generic method to extract conversations from any supported response type
|
|
75
|
+
*/
|
|
76
|
+
static listFromResponse(response: IConversationTimelineResponse | IInboxInitialResponse | IInboxTimelineResponse): Conversation[];
|
|
77
|
+
/**
|
|
78
|
+
* Get the other participant's ID (only for one-to-one conversations)
|
|
79
|
+
*/
|
|
80
|
+
getOtherParticipant(currentUserId: string): string | undefined;
|
|
81
|
+
/**
|
|
82
|
+
* Check if this conversation is a group DM
|
|
83
|
+
*/
|
|
84
|
+
isGroupDM(): boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Check if this conversation is one-to-one
|
|
87
|
+
*/
|
|
88
|
+
isOneToOne(): boolean;
|
|
89
|
+
/**
|
|
90
|
+
* @returns A serializable JSON representation of `this` object.
|
|
91
|
+
*/
|
|
92
|
+
toJSON(): IConversation;
|
|
93
|
+
}
|