fix(MessageManager): poll methods don't need a channel id (#10249)

* fix(MessageManager): end poll does not need channel id

* chore: rest of the work
This commit is contained in:
DD 2024-05-04 22:06:03 +03:00 committed by GitHub
parent c91d03c535
commit 0474a43751
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 7 additions and 12 deletions

View file

@ -269,19 +269,17 @@ class MessageManager extends CachedManager {
/** /**
* Ends a poll. * Ends a poll.
* @param {Snowflake} channelId The id of the channel
* @param {Snowflake} messageId The id of the message * @param {Snowflake} messageId The id of the message
* @returns {Promise<Message>} * @returns {Promise<Message>}
*/ */
async endPoll(channelId, messageId) { async endPoll(messageId) {
const message = await this.client.rest.post(Routes.expirePoll(channelId, messageId)); const message = await this.client.rest.post(Routes.expirePoll(this.channel.id, messageId));
return this._add(message, false); return this._add(message, false);
} }
/** /**
* Options used for fetching voters of an answer in a poll. * Options used for fetching voters of an answer in a poll.
* @typedef {BaseFetchPollAnswerVotersOptions} FetchPollAnswerVotersOptions * @typedef {BaseFetchPollAnswerVotersOptions} FetchPollAnswerVotersOptions
* @param {Snowflake} channelId The id of the channel
* @param {Snowflake} messageId The id of the message * @param {Snowflake} messageId The id of the message
* @param {number} answerId The id of the answer * @param {number} answerId The id of the answer
*/ */
@ -291,8 +289,8 @@ class MessageManager extends CachedManager {
* @param {FetchPollAnswerVotersOptions} options The options for fetching the poll answer voters * @param {FetchPollAnswerVotersOptions} options The options for fetching the poll answer voters
* @returns {Promise<Collection<Snowflake, User>>} * @returns {Promise<Collection<Snowflake, User>>}
*/ */
async fetchPollAnswerVoters({ channelId, messageId, answerId, after, limit }) { async fetchPollAnswerVoters({ messageId, answerId, after, limit }) {
const voters = await this.client.rest.get(Routes.pollAnswerVoters(channelId, messageId, answerId), { const voters = await this.client.rest.get(Routes.pollAnswerVoters(this.channel.id, messageId, answerId), {
query: makeURLSearchParams({ limit, after }), query: makeURLSearchParams({ limit, after }),
}); });

View file

@ -102,7 +102,7 @@ class Poll extends Base {
return Promise.reject(new DiscordjsError(ErrorCodes.PollAlreadyExpired)); return Promise.reject(new DiscordjsError(ErrorCodes.PollAlreadyExpired));
} }
return this.message.channel.messages.endPoll(this.message.channel.id, this.message.id); return this.message.channel.messages.endPoll(this.message.id);
} }
} }

View file

@ -78,7 +78,6 @@ class PollAnswer extends Base {
*/ */
fetchVoters({ after, limit } = {}) { fetchVoters({ after, limit } = {}) {
return this.poll.message.channel.fetchPollAnswerVoters({ return this.poll.message.channel.fetchPollAnswerVoters({
channelId: this.poll.message.channel.id,
messageId: this.poll.message.id, messageId: this.poll.message.id,
answerId: this.id, answerId: this.id,
after, after,

View file

@ -4399,7 +4399,6 @@ export class GuildMemberRoleManager extends DataManager<Snowflake, Role, RoleRes
} }
export interface FetchPollAnswerVotersOptions extends BaseFetchPollAnswerVotersOptions { export interface FetchPollAnswerVotersOptions extends BaseFetchPollAnswerVotersOptions {
channelId: Snowflake;
messageId: Snowflake; messageId: Snowflake;
answerId: number; answerId: number;
} }
@ -4422,7 +4421,7 @@ export abstract class MessageManager<InGuild extends boolean = boolean> extends
public react(message: MessageResolvable, emoji: EmojiIdentifierResolvable): Promise<void>; public react(message: MessageResolvable, emoji: EmojiIdentifierResolvable): Promise<void>;
public pin(message: MessageResolvable, reason?: string): Promise<void>; public pin(message: MessageResolvable, reason?: string): Promise<void>;
public unpin(message: MessageResolvable, reason?: string): Promise<void>; public unpin(message: MessageResolvable, reason?: string): Promise<void>;
public endPoll(channelId: Snowflake, messageId: Snowflake): Promise<Message>; public endPoll(messageId: Snowflake): Promise<Message>;
public fetchPollAnswerVoters(options: FetchPollAnswerVotersOptions): Promise<Collection<Snowflake, User>>; public fetchPollAnswerVoters(options: FetchPollAnswerVotersOptions): Promise<Collection<Snowflake, User>>;
} }

View file

@ -2549,9 +2549,8 @@ declare const poll: Poll;
expectType<Collection<Snowflake, User>>(await answer.fetchVoters({ after: snowflake, limit: 10 })); expectType<Collection<Snowflake, User>>(await answer.fetchVoters({ after: snowflake, limit: 10 }));
await messageManager.endPoll(snowflake, snowflake); await messageManager.endPoll(snowflake);
await messageManager.fetchPollAnswerVoters({ await messageManager.fetchPollAnswerVoters({
channelId: snowflake,
messageId: snowflake, messageId: snowflake,
answerId: 1, answerId: 1,
}); });