e621 2.2.6 → 3.0.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.
- package/LICENSE +21 -0
- package/README.md +14 -41
- package/dist/lib/Debug.d.ts +1 -0
- package/dist/lib/Debug.js +16 -0
- package/dist/lib/errors.d.ts +8 -0
- package/dist/lib/errors.js +37 -0
- package/dist/lib/generated/client/client.d.ts +2 -0
- package/dist/lib/generated/client/client.js +236 -0
- package/dist/lib/generated/client/index.d.ts +8 -0
- package/dist/lib/generated/client/index.js +7 -0
- package/dist/lib/generated/client/types.d.ts +117 -0
- package/dist/lib/generated/client/types.js +3 -0
- package/dist/lib/generated/client/utils.d.ts +33 -0
- package/dist/lib/generated/client/utils.js +229 -0
- package/dist/lib/generated/client.d.ts +12 -0
- package/dist/lib/generated/client.js +4 -0
- package/dist/lib/generated/core/auth.d.ts +18 -0
- package/dist/lib/generated/core/auth.js +15 -0
- package/dist/lib/generated/core/bodySerializer.d.ts +25 -0
- package/dist/lib/generated/core/bodySerializer.js +58 -0
- package/dist/lib/generated/core/params.d.ts +43 -0
- package/dist/lib/generated/core/params.js +101 -0
- package/dist/lib/generated/core/pathSerializer.d.ts +33 -0
- package/dist/lib/generated/core/pathSerializer.js +107 -0
- package/dist/lib/generated/core/queryKeySerializer.d.ts +18 -0
- package/dist/lib/generated/core/queryKeySerializer.js +93 -0
- package/dist/lib/generated/core/serverSentEvents.d.ts +71 -0
- package/dist/lib/generated/core/serverSentEvents.js +134 -0
- package/dist/lib/generated/core/types.d.ts +78 -0
- package/dist/lib/generated/core/types.js +3 -0
- package/dist/lib/generated/core/utils.d.ts +19 -0
- package/dist/lib/generated/core/utils.js +88 -0
- package/dist/lib/generated/schemas.d.ts +2908 -0
- package/dist/lib/generated/schemas.js +3911 -0
- package/dist/lib/generated/sdk.d.ts +1373 -0
- package/dist/lib/generated/sdk.js +2557 -0
- package/dist/lib/generated/source.json +19299 -0
- package/dist/lib/generated/types.d.ts +9663 -0
- package/dist/lib/generated/types.js +3 -0
- package/dist/lib/generated.d.ts +4 -0
- package/dist/lib/generated.js +5 -0
- package/dist/lib/index.d.ts +58 -0
- package/dist/lib/index.js +74 -0
- package/dist/lib/models/ApiKey.d.ts +14 -0
- package/dist/lib/models/ApiKey.js +17 -0
- package/dist/lib/models/Artist.d.ts +61 -0
- package/dist/lib/models/Artist.js +86 -0
- package/dist/lib/models/ArtistUrl.d.ts +14 -0
- package/dist/lib/models/ArtistUrl.js +17 -0
- package/dist/lib/models/ArtistVersion.d.ts +14 -0
- package/dist/lib/models/ArtistVersion.js +17 -0
- package/dist/lib/models/AvoidPosting.d.ts +63 -0
- package/dist/lib/models/AvoidPosting.js +97 -0
- package/dist/lib/models/AvoidPostingVersion.d.ts +14 -0
- package/dist/lib/models/AvoidPostingVersion.js +17 -0
- package/dist/lib/models/Ban.d.ts +14 -0
- package/dist/lib/models/Ban.js +17 -0
- package/dist/lib/models/Base.d.ts +11 -0
- package/dist/lib/models/Base.js +39 -0
- package/dist/lib/models/Blip.d.ts +79 -0
- package/dist/lib/models/Blip.js +120 -0
- package/dist/lib/models/BulkUpdateRequest.d.ts +49 -0
- package/dist/lib/models/BulkUpdateRequest.js +75 -0
- package/dist/lib/models/Comment.d.ts +100 -0
- package/dist/lib/models/Comment.js +157 -0
- package/dist/lib/models/CurrentUser.d.ts +14 -0
- package/dist/lib/models/CurrentUser.js +17 -0
- package/dist/lib/models/DMail.d.ts +46 -0
- package/dist/lib/models/DMail.js +73 -0
- package/dist/lib/models/EditHistory.d.ts +14 -0
- package/dist/lib/models/EditHistory.js +17 -0
- package/dist/lib/models/EmailBlacklist.d.ts +26 -0
- package/dist/lib/models/EmailBlacklist.js +37 -0
- package/dist/lib/models/ForumPost.d.ts +97 -0
- package/dist/lib/models/ForumPost.js +154 -0
- package/dist/lib/models/ForumPostVote.d.ts +24 -0
- package/dist/lib/models/ForumPostVote.js +35 -0
- package/dist/lib/models/ForumTopic.d.ts +81 -0
- package/dist/lib/models/ForumTopic.js +131 -0
- package/dist/lib/models/FullCurrentUser.d.ts +14 -0
- package/dist/lib/models/FullCurrentUser.js +17 -0
- package/dist/lib/models/FullUser.d.ts +14 -0
- package/dist/lib/models/FullUser.js +17 -0
- package/dist/lib/models/Help.d.ts +39 -0
- package/dist/lib/models/Help.js +57 -0
- package/dist/lib/models/IpBan.d.ts +28 -0
- package/dist/lib/models/IpBan.js +39 -0
- package/dist/lib/models/IqdbPost.d.ts +14 -0
- package/dist/lib/models/IqdbPost.js +17 -0
- package/dist/lib/models/Mascot.d.ts +39 -0
- package/dist/lib/models/Mascot.js +57 -0
- package/dist/lib/models/ModAction.d.ts +14 -0
- package/dist/lib/models/ModAction.js +17 -0
- package/dist/lib/models/NewsUpdate.d.ts +39 -0
- package/dist/lib/models/NewsUpdate.js +57 -0
- package/dist/lib/models/Note.d.ts +45 -0
- package/dist/lib/models/Note.js +71 -0
- package/dist/lib/models/NoteVersion.d.ts +24 -0
- package/dist/lib/models/NoteVersion.js +35 -0
- package/dist/lib/models/Pool.d.ts +67 -0
- package/dist/lib/models/Pool.js +109 -0
- package/dist/lib/models/PoolVersion.d.ts +24 -0
- package/dist/lib/models/PoolVersion.js +35 -0
- package/dist/lib/models/Post.d.ts +174 -0
- package/dist/lib/models/Post.js +287 -0
- package/dist/lib/models/PostApproval.d.ts +26 -0
- package/dist/lib/models/PostApproval.js +37 -0
- package/dist/lib/models/PostDisapproval.d.ts +14 -0
- package/dist/lib/models/PostDisapproval.js +17 -0
- package/dist/lib/models/PostEvent.d.ts +14 -0
- package/dist/lib/models/PostEvent.js +17 -0
- package/dist/lib/models/PostFlag.d.ts +38 -0
- package/dist/lib/models/PostFlag.js +57 -0
- package/dist/lib/models/PostReplacement.d.ts +75 -0
- package/dist/lib/models/PostReplacement.js +117 -0
- package/dist/lib/models/PostSet.d.ts +75 -0
- package/dist/lib/models/PostSet.js +117 -0
- package/dist/lib/models/PostVersion.d.ts +58 -0
- package/dist/lib/models/PostVersion.js +93 -0
- package/dist/lib/models/StaffNote.d.ts +53 -0
- package/dist/lib/models/StaffNote.js +79 -0
- package/dist/lib/models/Tag.d.ts +59 -0
- package/dist/lib/models/Tag.js +91 -0
- package/dist/lib/models/TagAlias.d.ts +51 -0
- package/dist/lib/models/TagAlias.js +77 -0
- package/dist/lib/models/TagCorrection.d.ts +15 -0
- package/dist/lib/models/TagCorrection.js +20 -0
- package/dist/lib/models/TagImplication.d.ts +51 -0
- package/dist/lib/models/TagImplication.js +77 -0
- package/dist/lib/models/TagPreview.d.ts +14 -0
- package/dist/lib/models/TagPreview.js +17 -0
- package/dist/lib/models/TagTypeVersion.d.ts +14 -0
- package/dist/lib/models/TagTypeVersion.js +17 -0
- package/dist/lib/models/Takedown.d.ts +87 -0
- package/dist/lib/models/Takedown.js +137 -0
- package/dist/lib/models/Ticket.d.ts +51 -0
- package/dist/lib/models/Ticket.js +77 -0
- package/dist/lib/models/Upload.d.ts +14 -0
- package/dist/lib/models/Upload.js +17 -0
- package/dist/lib/models/UploadWhitelist.d.ts +37 -0
- package/dist/lib/models/UploadWhitelist.js +55 -0
- package/dist/lib/models/User.d.ts +97 -0
- package/dist/lib/models/User.js +160 -0
- package/dist/lib/models/UserFeedback.d.ts +63 -0
- package/dist/lib/models/UserFeedback.js +97 -0
- package/dist/lib/models/UserNameChangeRequest.d.ts +26 -0
- package/dist/lib/models/UserNameChangeRequest.js +37 -0
- package/dist/lib/models/WikiPage.d.ts +49 -0
- package/dist/lib/models/WikiPage.js +75 -0
- package/dist/lib/models/WikiPageVersion.d.ts +24 -0
- package/dist/lib/models/WikiPageVersion.js +35 -0
- package/dist/lib/models/index.d.ts +53 -0
- package/dist/lib/models/index.js +54 -0
- package/dist/lib/modules/ArtistUrls.d.ts +18 -0
- package/dist/lib/modules/ArtistUrls.js +28 -0
- package/dist/lib/modules/ArtistVersions.d.ts +18 -0
- package/dist/lib/modules/ArtistVersions.js +28 -0
- package/dist/lib/modules/Artists.d.ts +90 -0
- package/dist/lib/modules/Artists.js +151 -0
- package/dist/lib/modules/AvoidPostingVersions.d.ts +18 -0
- package/dist/lib/modules/AvoidPostingVersions.js +28 -0
- package/dist/lib/modules/AvoidPostings.d.ts +112 -0
- package/dist/lib/modules/AvoidPostings.js +181 -0
- package/dist/lib/modules/Bans.d.ts +26 -0
- package/dist/lib/modules/Bans.js +47 -0
- package/dist/lib/modules/Base.d.ts +20 -0
- package/dist/lib/modules/Base.js +39 -0
- package/dist/lib/modules/Blips.d.ts +105 -0
- package/dist/lib/modules/Blips.js +188 -0
- package/dist/lib/modules/BulkUpdateRequests.d.ts +76 -0
- package/dist/lib/modules/BulkUpdateRequests.js +136 -0
- package/dist/lib/modules/CommentVotes.d.ts +30 -0
- package/dist/lib/modules/CommentVotes.js +56 -0
- package/dist/lib/modules/Comments.d.ts +112 -0
- package/dist/lib/modules/Comments.js +195 -0
- package/dist/lib/modules/DMails.d.ts +70 -0
- package/dist/lib/modules/DMails.js +134 -0
- package/dist/lib/modules/DText.d.ts +18 -0
- package/dist/lib/modules/DText.js +32 -0
- package/dist/lib/modules/EditHistories.d.ts +34 -0
- package/dist/lib/modules/EditHistories.js +56 -0
- package/dist/lib/modules/EmailBlacklists.d.ts +45 -0
- package/dist/lib/modules/EmailBlacklists.js +74 -0
- package/dist/lib/modules/Favorites.d.ts +38 -0
- package/dist/lib/modules/Favorites.js +73 -0
- package/dist/lib/modules/ForumPosts.d.ts +107 -0
- package/dist/lib/modules/ForumPosts.js +190 -0
- package/dist/lib/modules/ForumTopics.d.ts +125 -0
- package/dist/lib/modules/ForumTopics.js +237 -0
- package/dist/lib/modules/HelpPages.d.ts +67 -0
- package/dist/lib/modules/HelpPages.js +118 -0
- package/dist/lib/modules/IpBans.d.ts +47 -0
- package/dist/lib/modules/IpBans.js +76 -0
- package/dist/lib/modules/IqdbQueries.d.ts +36 -0
- package/dist/lib/modules/IqdbQueries.js +63 -0
- package/dist/lib/modules/Mascots.d.ts +60 -0
- package/dist/lib/modules/Mascots.js +98 -0
- package/dist/lib/modules/ModActions.d.ts +34 -0
- package/dist/lib/modules/ModActions.js +55 -0
- package/dist/lib/modules/NewsUpdates.d.ts +60 -0
- package/dist/lib/modules/NewsUpdates.js +98 -0
- package/dist/lib/modules/NoteVersions.d.ts +18 -0
- package/dist/lib/modules/NoteVersions.js +28 -0
- package/dist/lib/modules/Notes.d.ts +72 -0
- package/dist/lib/modules/Notes.js +133 -0
- package/dist/lib/modules/PoolVersions.d.ts +18 -0
- package/dist/lib/modules/PoolVersions.js +28 -0
- package/dist/lib/modules/Pools.d.ts +104 -0
- package/dist/lib/modules/Pools.js +197 -0
- package/dist/lib/modules/Popular.d.ts +18 -0
- package/dist/lib/modules/Popular.js +31 -0
- package/dist/lib/modules/PostApprovals.d.ts +42 -0
- package/dist/lib/modules/PostApprovals.js +77 -0
- package/dist/lib/modules/PostDisapprovals.d.ts +37 -0
- package/dist/lib/modules/PostDisapprovals.js +55 -0
- package/dist/lib/modules/PostEvents.d.ts +20 -0
- package/dist/lib/modules/PostEvents.js +30 -0
- package/dist/lib/modules/PostFlags.d.ts +53 -0
- package/dist/lib/modules/PostFlags.js +93 -0
- package/dist/lib/modules/PostReplacements.d.ts +94 -0
- package/dist/lib/modules/PostReplacements.js +167 -0
- package/dist/lib/modules/PostSets.d.ts +116 -0
- package/dist/lib/modules/PostSets.js +211 -0
- package/dist/lib/modules/PostVersions.d.ts +51 -0
- package/dist/lib/modules/PostVersions.js +94 -0
- package/dist/lib/modules/PostVotes.d.ts +28 -0
- package/dist/lib/modules/PostVotes.js +54 -0
- package/dist/lib/modules/Posts.d.ts +193 -0
- package/dist/lib/modules/Posts.js +395 -0
- package/dist/lib/modules/RelatedTags.d.ts +19 -0
- package/dist/lib/modules/RelatedTags.js +29 -0
- package/dist/lib/modules/StaffNotes.d.ts +80 -0
- package/dist/lib/modules/StaffNotes.js +140 -0
- package/dist/lib/modules/TagAliases.d.ts +80 -0
- package/dist/lib/modules/TagAliases.js +140 -0
- package/dist/lib/modules/TagCorrections.d.ts +25 -0
- package/dist/lib/modules/TagCorrections.js +52 -0
- package/dist/lib/modules/TagImplications.d.ts +80 -0
- package/dist/lib/modules/TagImplications.js +140 -0
- package/dist/lib/modules/TagTypeVersions.d.ts +18 -0
- package/dist/lib/modules/TagTypeVersions.js +28 -0
- package/dist/lib/modules/Tags.d.ts +64 -0
- package/dist/lib/modules/Tags.js +116 -0
- package/dist/lib/modules/Takedowns.d.ts +114 -0
- package/dist/lib/modules/Takedowns.js +211 -0
- package/dist/lib/modules/Tickets.d.ts +71 -0
- package/dist/lib/modules/Tickets.js +123 -0
- package/dist/lib/modules/UploadWhitelists.d.ts +68 -0
- package/dist/lib/modules/UploadWhitelists.js +117 -0
- package/dist/lib/modules/Uploads.d.ts +42 -0
- package/dist/lib/modules/Uploads.js +78 -0
- package/dist/lib/modules/UserFeedbacks.d.ts +94 -0
- package/dist/lib/modules/UserFeedbacks.js +165 -0
- package/dist/lib/modules/UserNameChangeRequests.d.ts +59 -0
- package/dist/lib/modules/UserNameChangeRequests.js +99 -0
- package/dist/lib/modules/Users.d.ts +132 -0
- package/dist/lib/modules/Users.js +263 -0
- package/dist/lib/modules/WikiPageVersions.d.ts +26 -0
- package/dist/lib/modules/WikiPageVersions.js +47 -0
- package/dist/lib/modules/WikiPages.d.ts +76 -0
- package/dist/lib/modules/WikiPages.js +137 -0
- package/dist/lib/modules/admin/Users.d.ts +45 -0
- package/dist/lib/modules/admin/Users.js +77 -0
- package/dist/lib/modules/comments/Votes.d.ts +26 -0
- package/dist/lib/modules/comments/Votes.js +51 -0
- package/dist/lib/modules/forum_posts/Votes.d.ts +26 -0
- package/dist/lib/modules/forum_posts/Votes.js +51 -0
- package/dist/lib/modules/index.d.ts +172 -0
- package/dist/lib/modules/index.js +114 -0
- package/dist/lib/modules/posts/Flag.d.ts +16 -0
- package/dist/lib/modules/posts/Flag.js +31 -0
- package/dist/lib/modules/posts/Votes.d.ts +26 -0
- package/dist/lib/modules/posts/Votes.js +51 -0
- package/dist/lib/modules/users/DMails.d.ts +29 -0
- package/dist/lib/modules/users/DMails.js +55 -0
- package/dist/lib/util.d.ts +48 -0
- package/dist/lib/util.js +49 -0
- package/dist/package.json +73 -0
- package/package.json +46 -20
- package/tsconfig.json +54 -0
- package/.mocharc.json +0 -6
- package/.ncurc.json +0 -3
- package/.node-version +0 -1
- package/Features/Artists.md +0 -39
- package/Features/Blips.md +0 -33
- package/Features/E621SearchInconsistencies.md +0 -54
- package/Features/FuturePlans.md +0 -50
- package/Features/Notes.md +0 -34
- package/Features/Pools.md +0 -38
- package/Features/PostFlags.md +0 -31
- package/Features/PostSets.md +0 -36
- package/Features/Posts.md +0 -46
- package/Features/README.md +0 -15
- package/Features/Tags.md +0 -34
- package/Features/Takedowns.md +0 -32
- package/Features/UserFeedback.md +0 -32
- package/Features/Users.md +0 -36
- package/Features/WikiPages.md +0 -36
- package/build/package.json +0 -45
- package/build/src/index.d.ts +0 -68
- package/build/src/index.js +0 -194
- package/build/src/modules/Artists.d.ts +0 -128
- package/build/src/modules/Artists.js +0 -295
- package/build/src/modules/Blips.d.ts +0 -79
- package/build/src/modules/Blips.js +0 -157
- package/build/src/modules/Notes.d.ts +0 -88
- package/build/src/modules/Notes.js +0 -189
- package/build/src/modules/Pools.d.ts +0 -130
- package/build/src/modules/Pools.js +0 -261
- package/build/src/modules/PostFlags.d.ts +0 -55
- package/build/src/modules/PostFlags.js +0 -126
- package/build/src/modules/PostSets.d.ts +0 -102
- package/build/src/modules/PostSets.js +0 -208
- package/build/src/modules/Posts.d.ts +0 -154
- package/build/src/modules/Posts.js +0 -390
- package/build/src/modules/Tags.d.ts +0 -78
- package/build/src/modules/Tags.js +0 -174
- package/build/src/modules/Takedowns.d.ts +0 -81
- package/build/src/modules/Takedowns.js +0 -195
- package/build/src/modules/UserFeedback.d.ts +0 -66
- package/build/src/modules/UserFeedback.js +0 -136
- package/build/src/modules/Users.d.ts +0 -117
- package/build/src/modules/Users.js +0 -261
- package/build/src/modules/WikiPages.d.ts +0 -107
- package/build/src/modules/WikiPages.js +0 -220
- package/build/src/structures/Artist.d.ts +0 -36
- package/build/src/structures/Artist.js +0 -51
- package/build/src/structures/ArtistHistory.d.ts +0 -39
- package/build/src/structures/ArtistHistory.js +0 -50
- package/build/src/structures/AuthenticatedUser.d.ts +0 -109
- package/build/src/structures/AuthenticatedUser.js +0 -128
- package/build/src/structures/Blip.d.ts +0 -66
- package/build/src/structures/Blip.js +0 -85
- package/build/src/structures/Note.d.ts +0 -32
- package/build/src/structures/Note.js +0 -41
- package/build/src/structures/NoteHistory.d.ts +0 -38
- package/build/src/structures/NoteHistory.js +0 -47
- package/build/src/structures/Pool.d.ts +0 -85
- package/build/src/structures/Pool.js +0 -112
- package/build/src/structures/PoolHistory.d.ts +0 -43
- package/build/src/structures/PoolHistory.js +0 -54
- package/build/src/structures/Post.d.ts +0 -157
- package/build/src/structures/Post.js +0 -170
- package/build/src/structures/PostApproval.d.ts +0 -25
- package/build/src/structures/PostApproval.js +0 -33
- package/build/src/structures/PostFlag.d.ts +0 -38
- package/build/src/structures/PostFlag.js +0 -47
- package/build/src/structures/PostHistory.d.ts +0 -52
- package/build/src/structures/PostHistory.js +0 -93
- package/build/src/structures/PostSet.d.ts +0 -71
- package/build/src/structures/PostSet.js +0 -93
- package/build/src/structures/Tag.d.ts +0 -61
- package/build/src/structures/Tag.js +0 -87
- package/build/src/structures/TagHistory.d.ts +0 -28
- package/build/src/structures/TagHistory.js +0 -36
- package/build/src/structures/Takedown.d.ts +0 -49
- package/build/src/structures/Takedown.js +0 -64
- package/build/src/structures/User.d.ts +0 -62
- package/build/src/structures/User.js +0 -80
- package/build/src/structures/WikiPage.d.ts +0 -17
- package/build/src/structures/WikiPage.js +0 -27
- package/build/src/structures/WikiPageHistory.d.ts +0 -38
- package/build/src/structures/WikiPageHistory.js +0 -49
- package/build/src/types/artists.d.ts +0 -82
- package/build/src/types/blips.d.ts +0 -37
- package/build/src/types/index.d.ts +0 -96
- package/build/src/types/notes.d.ts +0 -64
- package/build/src/types/pools.d.ts +0 -62
- package/build/src/types/post_flags.d.ts +0 -36
- package/build/src/types/post_sets.d.ts +0 -33
- package/build/src/types/posts.d.ts +0 -181
- package/build/src/types/tags.d.ts +0 -56
- package/build/src/types/takedowns.d.ts +0 -62
- package/build/src/types/user_feedback.d.ts +0 -27
- package/build/src/types/users.d.ts +0 -277
- package/build/src/types/wiki_pages.d.ts +0 -66
- package/build/src/util/Debug.d.ts +0 -1
- package/build/src/util/Debug.js +0 -16
- package/build/src/util/FormHelper.d.ts +0 -9
- package/build/src/util/FormHelper.js +0 -15
- package/build/src/util/MultipartData.d.ts +0 -7
- package/build/src/util/MultipartData.js +0 -39
- package/build/src/util/RequestHandler.d.ts +0 -38
- package/build/src/util/RequestHandler.js +0 -343
- package/build/src/util/Timer.d.ts +0 -6
- package/build/src/util/Timer.js +0 -74
|
@@ -1,174 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const Tag_1 = __importDefault(require("../structures/Tag"));
|
|
7
|
-
const TagHistory_1 = __importDefault(require("../structures/TagHistory"));
|
|
8
|
-
const FormHelper_1 = __importDefault(require("../util/FormHelper"));
|
|
9
|
-
const RequestHandler_1 = require("../util/RequestHandler");
|
|
10
|
-
class Tags {
|
|
11
|
-
auth;
|
|
12
|
-
main;
|
|
13
|
-
constructor(main) {
|
|
14
|
-
Object.defineProperties(this, {
|
|
15
|
-
auth: {
|
|
16
|
-
get() {
|
|
17
|
-
return !this.main.options.authUser || !this.main.options.authKey ? null : `Basic ${Buffer.from(`${this.main.options.authUser}:${this.main.options.authKey}`).toString("base64")}`;
|
|
18
|
-
},
|
|
19
|
-
configurable: false,
|
|
20
|
-
enumerable: false
|
|
21
|
-
},
|
|
22
|
-
main: {
|
|
23
|
-
value: main,
|
|
24
|
-
configurable: false,
|
|
25
|
-
enumerable: false,
|
|
26
|
-
writable: false
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Get a tag by its id
|
|
32
|
-
*
|
|
33
|
-
* @param {number} id - The id of the tag to get
|
|
34
|
-
* @returns {Promise<(Tag | null)>}
|
|
35
|
-
*/
|
|
36
|
-
async get(id) {
|
|
37
|
-
const res = await this.main.request.get(`/tags/${id}.json`).catch(err => {
|
|
38
|
-
if (err instanceof RequestHandler_1.APIError && err.statusCode === 404)
|
|
39
|
-
return null;
|
|
40
|
-
throw err;
|
|
41
|
-
});
|
|
42
|
-
return res === null ? null : new Tag_1.default(this.main, res);
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Get a tag by its name
|
|
46
|
-
*
|
|
47
|
-
* @param {string} name - The name of the tag to get
|
|
48
|
-
* @returns {Promise<(Tag | null)>}
|
|
49
|
-
*/
|
|
50
|
-
async getByName(name) {
|
|
51
|
-
return this.search({
|
|
52
|
-
name,
|
|
53
|
-
limit: 1
|
|
54
|
-
}).then(r => r.length === 0 ? null : r[0]);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Search for tags
|
|
58
|
-
*
|
|
59
|
-
* @param {object} [options]
|
|
60
|
-
* @param {string} [options.name] - narrow the results by the name of the tag
|
|
61
|
-
* @param {number} [options.category] - narrow the results by the category of the tag
|
|
62
|
-
* @param {boolean} [options.hide_empty] - narrow the results by the tag being empty or not
|
|
63
|
-
* @param {boolean} [options.has_wiki] - narrow the results by the tag having a wiki or not
|
|
64
|
-
* @param {boolean} [options.has_artist] - narrow the results by the tag having an artist or not
|
|
65
|
-
* @param {SearchTagsOrder} [options.order] - the order of the results
|
|
66
|
-
* @param {number} [options.page] - page of results to get
|
|
67
|
-
* @param {number} [options.limit] - limit the maximum amount of results returned
|
|
68
|
-
* @returns {Promise<Array<Tag>>}
|
|
69
|
-
*/
|
|
70
|
-
async search(options) {
|
|
71
|
-
options = options ?? {};
|
|
72
|
-
const qs = new FormHelper_1.default();
|
|
73
|
-
if (typeof options.name === "string")
|
|
74
|
-
qs.add("search[name_matches]", options.name);
|
|
75
|
-
if (typeof options.category === "string")
|
|
76
|
-
qs.add("search[category]", options.category);
|
|
77
|
-
if (typeof options.hide_empty === "boolean")
|
|
78
|
-
qs.add("search[hide_empty]", options.hide_empty);
|
|
79
|
-
if (typeof options.has_wiki === "string")
|
|
80
|
-
qs.add("search[has_wiki]", options.has_wiki);
|
|
81
|
-
if (typeof options.has_artist === "string")
|
|
82
|
-
qs.add("search[has_artist]", options.has_artist);
|
|
83
|
-
if (typeof options.order === "string")
|
|
84
|
-
qs.add("search[order]", options.order);
|
|
85
|
-
if (typeof options.page === "number")
|
|
86
|
-
qs.add("page", options.page);
|
|
87
|
-
if (typeof options.limit === "number")
|
|
88
|
-
qs.add("limit", options.limit);
|
|
89
|
-
const res = await this.main.request.get(`/tags.json?${qs.build()}`);
|
|
90
|
-
if (res && !Array.isArray(res) && "tags" in res)
|
|
91
|
-
return [];
|
|
92
|
-
return res.map(info => new Tag_1.default(this.main, info));
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* modify a tag
|
|
96
|
-
*
|
|
97
|
-
* * Requires Authentication
|
|
98
|
-
*
|
|
99
|
-
* @param {number} id - the id of the tag to edit
|
|
100
|
-
* @param {object} options
|
|
101
|
-
* @param {number} [options.category] - the category of the tag
|
|
102
|
-
* @param {boolean} [options.locked] - if the tag is locked (requires moderator)
|
|
103
|
-
* @returns {Promise<Tag>}
|
|
104
|
-
*/
|
|
105
|
-
async modify(id, options) {
|
|
106
|
-
this.main.request.authCheck.call(this, "Tags#modify");
|
|
107
|
-
if (!options)
|
|
108
|
-
throw new Error("options is required in Tags#modify");
|
|
109
|
-
const qs = new FormHelper_1.default();
|
|
110
|
-
if (typeof options.category === "string")
|
|
111
|
-
qs.add("tag[category]", options.category);
|
|
112
|
-
if (typeof options.locked === "boolean")
|
|
113
|
-
qs.add("tag[is_locked]", options.locked);
|
|
114
|
-
const res = await this.main.request.put(`/tags/${id}.json`, qs.build());
|
|
115
|
-
return new Tag_1.default(this.main, res);
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Get a specific tag type history
|
|
119
|
-
*
|
|
120
|
-
* @param {number} id - the id of the history to get
|
|
121
|
-
* @returns {Promise<TagHistory | null>}
|
|
122
|
-
*/
|
|
123
|
-
async getHistory(id) { return this.searchHistory({ id }).then(r => r.length === 0 ? null : r[0]); }
|
|
124
|
-
/**
|
|
125
|
-
* Search the tag type history
|
|
126
|
-
*
|
|
127
|
-
* @param {object} [options]
|
|
128
|
-
* @param {number} [options.id] - get a specific tag type history entry
|
|
129
|
-
* @param {string} [options.tag] - narrow the results by the tag name
|
|
130
|
-
* @param {string} [options.user] - narrow the results by the editor name
|
|
131
|
-
* @param {number} [options.user_id] - narrow the results by the editor id
|
|
132
|
-
* @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
|
|
133
|
-
* @param {number} [options.limit] - limit the maximum amount of results returned
|
|
134
|
-
* @param
|
|
135
|
-
* @returns {Promise<Array<TagHistory>>}
|
|
136
|
-
*/
|
|
137
|
-
async searchHistory(options) {
|
|
138
|
-
options = options ?? {};
|
|
139
|
-
const qs = new FormHelper_1.default();
|
|
140
|
-
if (typeof options.id === "number")
|
|
141
|
-
qs.add("search[id]", options.id);
|
|
142
|
-
if (typeof options.tag === "string")
|
|
143
|
-
qs.add("search[tag]", options.tag);
|
|
144
|
-
if (typeof options.user === "string")
|
|
145
|
-
qs.add("search[user_name]", options.user);
|
|
146
|
-
if (typeof options.user_id === "number")
|
|
147
|
-
qs.add("search[user_id]", options.user_id);
|
|
148
|
-
if (typeof options.page !== "undefined")
|
|
149
|
-
qs.add("page", options.page);
|
|
150
|
-
if (typeof options.limit === "number")
|
|
151
|
-
qs.add("limit", options.limit);
|
|
152
|
-
const res = await this.main.request.get(`/tag_type_versions.json?${qs.build()}`);
|
|
153
|
-
if (res && !Array.isArray(res) && "tag_type_versions" in res)
|
|
154
|
-
return [];
|
|
155
|
-
return res.map(info => new TagHistory_1.default(this.main, info));
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Get autocomplete results
|
|
159
|
-
*
|
|
160
|
-
* @param {string} match - the string to get results for
|
|
161
|
-
* @returns {Promise<Array<AutocompleteResult>>}
|
|
162
|
-
*/
|
|
163
|
-
async getAutocomplete(match) {
|
|
164
|
-
if (!match)
|
|
165
|
-
throw new Error("string to match is required in Tags#getAutocomplete");
|
|
166
|
-
const qs = new FormHelper_1.default().add("search[name_matches]", match);
|
|
167
|
-
const res = await this.main.request.get(`/tags/autocomplete.json?${qs.build()}`);
|
|
168
|
-
if (res && !Array.isArray(res))
|
|
169
|
-
return [];
|
|
170
|
-
return res;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
exports.default = Tags;
|
|
174
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tb2R1bGVzL1RhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSw0REFBb0M7QUFDcEMsMEVBQWtEO0FBVWxELG9FQUE0QztBQUM1QywyREFBa0Q7QUFFbEQsTUFBcUIsSUFBSTtJQUNQLElBQUksQ0FBZ0I7SUFDcEIsSUFBSSxDQUFPO0lBQzVCLFlBQVksSUFBVTtRQUNyQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1lBQzdCLElBQUksRUFBRTtnQkFDTCxHQUFHO29CQUNGLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ25MLENBQUM7Z0JBQ0QsWUFBWSxFQUFFLEtBQUs7Z0JBQ25CLFVBQVUsRUFBSSxLQUFLO2FBQ25CO1lBQ0QsSUFBSSxFQUFFO2dCQUNMLEtBQUssRUFBUyxJQUFJO2dCQUNsQixZQUFZLEVBQUUsS0FBSztnQkFDbkIsVUFBVSxFQUFJLEtBQUs7Z0JBQ25CLFFBQVEsRUFBTSxLQUFLO2FBQ25CO1NBQ0QsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFVO1FBQ25CLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFnQixTQUFTLEVBQUUsT0FBTyxD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
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import type E621 from "..";
|
|
2
|
-
import type { SearchTakedownsOptions, CreateTakedownOptions, ModifyTakedownOptions } from "../types";
|
|
3
|
-
import Takedown from "../structures/Takedown";
|
|
4
|
-
export default class Takedowns {
|
|
5
|
-
private readonly auth;
|
|
6
|
-
private readonly main;
|
|
7
|
-
constructor(main: E621);
|
|
8
|
-
/**
|
|
9
|
-
* Get a takedown by its id
|
|
10
|
-
*
|
|
11
|
-
* @param {number} id - The id of the note to get
|
|
12
|
-
* @returns {Promise<(Takedown | null)>}
|
|
13
|
-
*/
|
|
14
|
-
get(id: number): Promise<Takedown | null>;
|
|
15
|
-
/**
|
|
16
|
-
* Search for takedowns
|
|
17
|
-
*
|
|
18
|
-
* @param {object} [options]
|
|
19
|
-
* @param {TakedownStatus} [options.status] - narrow the results by status
|
|
20
|
-
* @param {string} [options.source] - narrow the results by source (requires admin)
|
|
21
|
-
* @param {string} [options.reason] - narrow the results by reason (requires admin)
|
|
22
|
-
* @param {string} [options.admin_response] - narrow the results by admin response (requires admin)
|
|
23
|
-
* @param {boolean} [options.reason_hidden] - narrow the results by if the reason is hidden (requires admin)
|
|
24
|
-
* @param {string} [options.instructions] - narrow the results by special instructions (requires admin)
|
|
25
|
-
* @param {number} [options.post_id] - narrow the results by post id (requires admin)
|
|
26
|
-
* @param {string} [options.email] - narrow the results by email (requires admin)
|
|
27
|
-
* @param {string} [options.ip_address] - narrow the results by ip address (requires admin)
|
|
28
|
-
* @param {string} [options.vericode] - narrow the results by verification code (requires admin)
|
|
29
|
-
* @param {SearchTakedownsOrder} [options.order] - the order of th returned results
|
|
30
|
-
* @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
|
|
31
|
-
* @param {number} [options.limit] - limit the maximum amount of results returned
|
|
32
|
-
* @returns {Promise<Array<Takedown>>}
|
|
33
|
-
*/
|
|
34
|
-
search(options?: SearchTakedownsOptions): Promise<Takedown[]>;
|
|
35
|
-
/**
|
|
36
|
-
* Create a takedown
|
|
37
|
-
*
|
|
38
|
-
* * Requires Authentication
|
|
39
|
-
*
|
|
40
|
-
* @param {object} options
|
|
41
|
-
* @param {string} options.source - the source of the takedown
|
|
42
|
-
* @param {string} options.email - a valid email for the takedown
|
|
43
|
-
* @param {(number | Array<number> | string | Array<string>)} [options.post_ids] - post ids or full post urls the takedown concerns (this and instructions are mutally exclusive)
|
|
44
|
-
* @param {string} [options.instructions] - a set of special instructions (this and post_ids are mutally exclusive)
|
|
45
|
-
* @param {string} options.reason - the reason for the takedown
|
|
46
|
-
* @param {boolean} [options.reason_hidden=false] - the hide the reason of the takedown
|
|
47
|
-
* @returns {Promise<Takedown>}
|
|
48
|
-
*/
|
|
49
|
-
create(options: CreateTakedownOptions): Promise<Takedown>;
|
|
50
|
-
/**
|
|
51
|
-
* modify a takedown
|
|
52
|
-
*
|
|
53
|
-
* * Requires Authentication
|
|
54
|
-
*
|
|
55
|
-
* * Requires Admin
|
|
56
|
-
*
|
|
57
|
-
* @param {number} id - the id of the takedown to edit
|
|
58
|
-
* @param {object} options
|
|
59
|
-
* @param {boolean} [options.process_takedown] - if the takedown should be processed
|
|
60
|
-
* @param {string} [options.delete_reason] - the reason to add to posts that are deleted
|
|
61
|
-
* @param {Record<string | number, boolean>} [options.takedown_posts] - object of id-boolean values, false = keep, true = delete
|
|
62
|
-
* @param {string | Array<string>} [options.takedown_add_posts_tags] - list of tags to match and add to the takedown
|
|
63
|
-
* @param {number | Array<number>} [options.takedown_add_posts_ids] - list of posts to add to the takedown
|
|
64
|
-
* @param {("pending" | "inactive")} [options.status] - mark the takedown inactive or not
|
|
65
|
-
* @param {string} [options.notes] - admin notes
|
|
66
|
-
* @param {boolean} [options.reason_hidden] - if the reason should be hidden
|
|
67
|
-
* @returns {Promise<Takedown>}
|
|
68
|
-
*/
|
|
69
|
-
modify(id: number, options: ModifyTakedownOptions): Promise<Takedown>;
|
|
70
|
-
/**
|
|
71
|
-
* Delete a takedown
|
|
72
|
-
*
|
|
73
|
-
* * Requires Authentication
|
|
74
|
-
*
|
|
75
|
-
* * Requires Admin
|
|
76
|
-
*
|
|
77
|
-
* @param {number} id - the id of the takedownto delete
|
|
78
|
-
* @returns {Promise<null>}
|
|
79
|
-
*/
|
|
80
|
-
delete(id: number): Promise<null>;
|
|
81
|
-
}
|
|
@@ -1,195 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const FormHelper_1 = __importDefault(require("../util/FormHelper"));
|
|
7
|
-
const RequestHandler_1 = require("../util/RequestHandler");
|
|
8
|
-
const Takedown_1 = __importDefault(require("../structures/Takedown"));
|
|
9
|
-
class Takedowns {
|
|
10
|
-
auth;
|
|
11
|
-
main;
|
|
12
|
-
constructor(main) {
|
|
13
|
-
Object.defineProperties(this, {
|
|
14
|
-
auth: {
|
|
15
|
-
get() {
|
|
16
|
-
return !this.main.options.authUser || !this.main.options.authKey ? null : `Basic ${Buffer.from(`${this.main.options.authUser}:${this.main.options.authKey}`).toString("base64")}`;
|
|
17
|
-
},
|
|
18
|
-
configurable: false,
|
|
19
|
-
enumerable: false
|
|
20
|
-
},
|
|
21
|
-
main: {
|
|
22
|
-
value: main,
|
|
23
|
-
configurable: false,
|
|
24
|
-
enumerable: false,
|
|
25
|
-
writable: false
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Get a takedown by its id
|
|
31
|
-
*
|
|
32
|
-
* @param {number} id - The id of the note to get
|
|
33
|
-
* @returns {Promise<(Takedown | null)>}
|
|
34
|
-
*/
|
|
35
|
-
async get(id) {
|
|
36
|
-
const res = await this.main.request.get(`/takedowns/${id}.json`).catch(err => {
|
|
37
|
-
if (err instanceof RequestHandler_1.APIError && err.statusCode === 404)
|
|
38
|
-
return null;
|
|
39
|
-
throw err;
|
|
40
|
-
});
|
|
41
|
-
return res === null ? null : new Takedown_1.default(this.main, res);
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Search for takedowns
|
|
45
|
-
*
|
|
46
|
-
* @param {object} [options]
|
|
47
|
-
* @param {TakedownStatus} [options.status] - narrow the results by status
|
|
48
|
-
* @param {string} [options.source] - narrow the results by source (requires admin)
|
|
49
|
-
* @param {string} [options.reason] - narrow the results by reason (requires admin)
|
|
50
|
-
* @param {string} [options.admin_response] - narrow the results by admin response (requires admin)
|
|
51
|
-
* @param {boolean} [options.reason_hidden] - narrow the results by if the reason is hidden (requires admin)
|
|
52
|
-
* @param {string} [options.instructions] - narrow the results by special instructions (requires admin)
|
|
53
|
-
* @param {number} [options.post_id] - narrow the results by post id (requires admin)
|
|
54
|
-
* @param {string} [options.email] - narrow the results by email (requires admin)
|
|
55
|
-
* @param {string} [options.ip_address] - narrow the results by ip address (requires admin)
|
|
56
|
-
* @param {string} [options.vericode] - narrow the results by verification code (requires admin)
|
|
57
|
-
* @param {SearchTakedownsOrder} [options.order] - the order of th returned results
|
|
58
|
-
* @param {(number |`${"" | "a" | "b"}${number}`)} [options.page] - page of results to get
|
|
59
|
-
* @param {number} [options.limit] - limit the maximum amount of results returned
|
|
60
|
-
* @returns {Promise<Array<Takedown>>}
|
|
61
|
-
*/
|
|
62
|
-
async search(options) {
|
|
63
|
-
options = options ?? {};
|
|
64
|
-
const qs = new FormHelper_1.default();
|
|
65
|
-
if (typeof options.status === "string")
|
|
66
|
-
qs.add("search[status]", options.status);
|
|
67
|
-
if (typeof options.source === "string")
|
|
68
|
-
qs.add("search[source]", options.source);
|
|
69
|
-
if (typeof options.reason === "string")
|
|
70
|
-
qs.add("search[reason]", options.reason);
|
|
71
|
-
if (typeof options.admin_response === "string")
|
|
72
|
-
qs.add("search[notes]", options.admin_response);
|
|
73
|
-
if (typeof options.reason_hidden === "boolean")
|
|
74
|
-
qs.add("search[reason_hidden]", options.reason_hidden);
|
|
75
|
-
if (typeof options.instructions === "string")
|
|
76
|
-
qs.add("search[instructions]", options.instructions);
|
|
77
|
-
if (typeof options.post_id === "number")
|
|
78
|
-
qs.add("search[post_id]", options.post_id);
|
|
79
|
-
if (typeof options.email === "string")
|
|
80
|
-
qs.add("search[email]", options.email);
|
|
81
|
-
if (typeof options.ip_address === "string")
|
|
82
|
-
qs.add("search[ip_addr]", options.ip_address);
|
|
83
|
-
if (typeof options.vericode === "string")
|
|
84
|
-
qs.add("search[vericode]", options.vericode);
|
|
85
|
-
if (typeof options.order === "string")
|
|
86
|
-
qs.add("search[order]", options.order);
|
|
87
|
-
if (typeof options.page !== "undefined")
|
|
88
|
-
qs.add("page", options.page);
|
|
89
|
-
if (typeof options.limit === "number")
|
|
90
|
-
qs.add("limit", options.limit);
|
|
91
|
-
const res = await this.main.request.get(`/takedowns.json?${qs.build()}`);
|
|
92
|
-
return res.map(info => new Takedown_1.default(this.main, info));
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* Create a takedown
|
|
96
|
-
*
|
|
97
|
-
* * Requires Authentication
|
|
98
|
-
*
|
|
99
|
-
* @param {object} options
|
|
100
|
-
* @param {string} options.source - the source of the takedown
|
|
101
|
-
* @param {string} options.email - a valid email for the takedown
|
|
102
|
-
* @param {(number | Array<number> | string | Array<string>)} [options.post_ids] - post ids or full post urls the takedown concerns (this and instructions are mutally exclusive)
|
|
103
|
-
* @param {string} [options.instructions] - a set of special instructions (this and post_ids are mutally exclusive)
|
|
104
|
-
* @param {string} options.reason - the reason for the takedown
|
|
105
|
-
* @param {boolean} [options.reason_hidden=false] - the hide the reason of the takedown
|
|
106
|
-
* @returns {Promise<Takedown>}
|
|
107
|
-
*/
|
|
108
|
-
async create(options) {
|
|
109
|
-
this.main.request.authCheck.call(this, "Takedowns#create");
|
|
110
|
-
if (!options)
|
|
111
|
-
throw new Error("options is required in Takedowns#create");
|
|
112
|
-
if (typeof options.post_ids !== "undefined" && typeof options.instructions !== "undefined")
|
|
113
|
-
process.emitWarning("only one of options.post_ids, options.instructions should be provided to Takedowns#create. options.post_ids overrides options.instructions.");
|
|
114
|
-
const qs = new FormHelper_1.default()
|
|
115
|
-
.add("takedown[source]", options.source)
|
|
116
|
-
.add("takedown[email]", options.email)
|
|
117
|
-
.add("takedown[reason]", options.reason);
|
|
118
|
-
if (typeof options.reason_hidden === "boolean")
|
|
119
|
-
qs.add("takedown[reason_hidden]", options.reason_hidden);
|
|
120
|
-
if (typeof options.post_ids !== "undefined") {
|
|
121
|
-
if (typeof options.post_ids === "number" || typeof options.post_ids === "string")
|
|
122
|
-
qs.add("takedown[post_ids]", options.post_ids);
|
|
123
|
-
else if (Array.isArray(options.post_ids))
|
|
124
|
-
qs.add("takedown[post_ids]", options.post_ids.join(" "));
|
|
125
|
-
}
|
|
126
|
-
if (typeof options.instructions === "string")
|
|
127
|
-
qs.add("takedown[instructions]", options.instructions);
|
|
128
|
-
const res = await this.main.request.post("/takedowns.json", qs.build());
|
|
129
|
-
return new Takedown_1.default(this.main, res);
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* modify a takedown
|
|
133
|
-
*
|
|
134
|
-
* * Requires Authentication
|
|
135
|
-
*
|
|
136
|
-
* * Requires Admin
|
|
137
|
-
*
|
|
138
|
-
* @param {number} id - the id of the takedown to edit
|
|
139
|
-
* @param {object} options
|
|
140
|
-
* @param {boolean} [options.process_takedown] - if the takedown should be processed
|
|
141
|
-
* @param {string} [options.delete_reason] - the reason to add to posts that are deleted
|
|
142
|
-
* @param {Record<string | number, boolean>} [options.takedown_posts] - object of id-boolean values, false = keep, true = delete
|
|
143
|
-
* @param {string | Array<string>} [options.takedown_add_posts_tags] - list of tags to match and add to the takedown
|
|
144
|
-
* @param {number | Array<number>} [options.takedown_add_posts_ids] - list of posts to add to the takedown
|
|
145
|
-
* @param {("pending" | "inactive")} [options.status] - mark the takedown inactive or not
|
|
146
|
-
* @param {string} [options.notes] - admin notes
|
|
147
|
-
* @param {boolean} [options.reason_hidden] - if the reason should be hidden
|
|
148
|
-
* @returns {Promise<Takedown>}
|
|
149
|
-
*/
|
|
150
|
-
async modify(id, options) {
|
|
151
|
-
this.main.request.authCheck.call(this, "Takedowns#modify");
|
|
152
|
-
if (!options)
|
|
153
|
-
throw new Error("options is required in Takedowns#modify");
|
|
154
|
-
const qs = new FormHelper_1.default();
|
|
155
|
-
if (typeof options.process_takedown === "boolean")
|
|
156
|
-
qs.add("process_takedown", options.process_takedown);
|
|
157
|
-
if (typeof options.delete_reason === "string")
|
|
158
|
-
qs.add("delete_reason", options.delete_reason);
|
|
159
|
-
if (typeof options.takedown_posts !== "undefined") {
|
|
160
|
-
Object.entries(options.takedown_posts).forEach(([post, val]) => qs.add(`takedown_posts[${post}]`, val));
|
|
161
|
-
}
|
|
162
|
-
if (typeof options.takedown_add_posts_tags === "string")
|
|
163
|
-
qs.add("takedown-add-posts-tags", options.takedown_add_posts_tags);
|
|
164
|
-
if (Array.isArray(options.takedown_add_posts_tags) && options.takedown_add_posts_tags.length > 0)
|
|
165
|
-
qs.add("takedown-add-posts-tags", options.takedown_add_posts_tags.join(" "));
|
|
166
|
-
if (typeof options.takedown_add_posts_ids === "string")
|
|
167
|
-
qs.add("takedown-add-posts-ids", options.takedown_add_posts_ids);
|
|
168
|
-
if (Array.isArray(options.takedown_add_posts_ids) && options.takedown_add_posts_ids.length > 0)
|
|
169
|
-
qs.add("takedown-add-posts-ids", options.takedown_add_posts_ids.join(" "));
|
|
170
|
-
if (typeof options.status === "string")
|
|
171
|
-
qs.add("takedown[status]", options.status);
|
|
172
|
-
if (typeof options.notes === "string")
|
|
173
|
-
qs.add("takedown[notes]", options.notes);
|
|
174
|
-
if (typeof options.reason_hidden === "string")
|
|
175
|
-
qs.add("takedown[reason_hidden]", options.reason_hidden);
|
|
176
|
-
const res = await this.main.request.put(`/notes/${id}.json`, qs.build());
|
|
177
|
-
return new Takedown_1.default(this.main, res);
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Delete a takedown
|
|
181
|
-
*
|
|
182
|
-
* * Requires Authentication
|
|
183
|
-
*
|
|
184
|
-
* * Requires Admin
|
|
185
|
-
*
|
|
186
|
-
* @param {number} id - the id of the takedownto delete
|
|
187
|
-
* @returns {Promise<null>}
|
|
188
|
-
*/
|
|
189
|
-
async delete(id) {
|
|
190
|
-
this.main.request.authCheck.call(this, "Takedowns#delete");
|
|
191
|
-
return this.main.request.delete(`/takedowns/${id}.json`);
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
exports.default = Takedowns;
|
|
195
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFrZWRvd25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21vZHVsZXMvVGFrZWRvd25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBU0Esb0VBQTRDO0FBQzVDLDJEQUFrRDtBQUNsRCxzRUFBOEM7QUFFOUMsTUFBcUIsU0FBUztJQUNaLElBQUksQ0FBZ0I7SUFDcEIsSUFBSSxDQUFPO0lBQzVCLFlBQVksSUFBVTtRQUNyQixNQUFNLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFO1lBQzdCLElBQUksRUFBRTtnQkFDTCxHQUFHO29CQUNGLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQ25MLENBQUM7Z0JBQ0QsWUFBWSxFQUFFLEtBQUs7Z0JBQ25CLFVBQVUsRUFBSSxLQUFLO2FBQ25CO1lBQ0QsSUFBSSxFQUFFO2dCQUNMLEtBQUssRUFBUyxJQUFJO2dCQUNsQixZQUFZLEVBQUUsS0FBSztnQkFDbkIsVUFBVSxFQUFJLEtBQUs7Z0JBQ25CLFFBQVEsRUFBTSxLQUFLO2FBQ25CO1NBQ0QsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFVO1FBQ25CLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFxQixjQUFjLEVBQUUsT0FBTyxDQUFD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
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import type E621 from "..";
|
|
2
|
-
import type { UserFeedbackProperties, SearchUserFeedbackOptions, CreateUserFeedbackOptions, ModifyUserFeedbackOptions } from "../types";
|
|
3
|
-
export default class UserFeedback {
|
|
4
|
-
private readonly auth;
|
|
5
|
-
private readonly main;
|
|
6
|
-
constructor(main: E621);
|
|
7
|
-
/**
|
|
8
|
-
* Get a specific user feedback
|
|
9
|
-
*
|
|
10
|
-
* @param {number} id - The id of the feedback to fetch
|
|
11
|
-
* @returns {Promise<(UserFeedbackProperties | null)>}
|
|
12
|
-
*/
|
|
13
|
-
get(id: number): Promise<UserFeedbackProperties | null>;
|
|
14
|
-
/**
|
|
15
|
-
* Search for user feedback
|
|
16
|
-
*
|
|
17
|
-
* @param {object} [options]
|
|
18
|
-
* @param {string} [options.username] - narrow the search by a specific target
|
|
19
|
-
* @param {string} [options.creator] - narrow the search by a specific creator
|
|
20
|
-
* @param {string} [options.body] - narrow the search by the content of the feedback
|
|
21
|
-
* @param {FeedbackCategories} [options.category] - narrow the search by the type
|
|
22
|
-
* @param {(number |`${"" | "a" | "b"}${number}`)} [page] - page of results to get
|
|
23
|
-
* @param {number} [options.limit] - limit the maximum returned results
|
|
24
|
-
* @returns {Promise<Array<UserFeedbackProperties>>}
|
|
25
|
-
*/
|
|
26
|
-
search(options?: SearchUserFeedbackOptions): Promise<UserFeedbackProperties[]>;
|
|
27
|
-
/**
|
|
28
|
-
* Add feedback to a user
|
|
29
|
-
*
|
|
30
|
-
* * Requires Authentication
|
|
31
|
-
*
|
|
32
|
-
* * Requires Moderator
|
|
33
|
-
*
|
|
34
|
-
* @param {object} options
|
|
35
|
-
* @param {string} options.username - the user the feedback is for
|
|
36
|
-
* @param {FeedbackCategories} options.category - the type of feedback
|
|
37
|
-
* @param {string} options.body - the content of the feedback
|
|
38
|
-
* @returns {Promise<UserFeedbackProperties>}
|
|
39
|
-
*/
|
|
40
|
-
create(options: CreateUserFeedbackOptions): Promise<UserFeedbackProperties>;
|
|
41
|
-
/**
|
|
42
|
-
* Modify an existing user feedback
|
|
43
|
-
*
|
|
44
|
-
* * Requires Authentication
|
|
45
|
-
*
|
|
46
|
-
* * Requires Moderator
|
|
47
|
-
*
|
|
48
|
-
* @param {number} id - the id of the feedback to edit
|
|
49
|
-
* @param {object} options
|
|
50
|
-
* @param {string} [options.body] - the content of the feedback
|
|
51
|
-
* @param {FeedbackCategories} [options.category] - the type of feedback
|
|
52
|
-
* @returns {Promise<UserFeedbackProperties>}
|
|
53
|
-
*/
|
|
54
|
-
modify(id: number, options: ModifyUserFeedbackOptions): Promise<UserFeedbackProperties>;
|
|
55
|
-
/**
|
|
56
|
-
* Delete an existing user feedback
|
|
57
|
-
*
|
|
58
|
-
* * Requires Authentication
|
|
59
|
-
*
|
|
60
|
-
* * Requires Moderator
|
|
61
|
-
*
|
|
62
|
-
* @param {number} id - the id of the feedback to delete
|
|
63
|
-
* @returns {Promise<null>}
|
|
64
|
-
*/
|
|
65
|
-
delete(id: number): Promise<null>;
|
|
66
|
-
}
|