3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-15 05:41:51 +00:00

fix: partial summary

This commit is contained in:
Ruby 2024-05-12 13:10:56 +02:00
parent 4252cb5ce0
commit 112bbc5478
No known key found for this signature in database
GPG key ID: 74D9DB37B03A4804
5 changed files with 15 additions and 13 deletions

View file

@ -121,11 +121,11 @@ export class GuildSavedMessages extends BaseGuildRepository<SavedMessage> {
if (msg.poll) {
data.poll = {
question: msg.poll.question,
answers: Array.from(msg.poll.answers.values()).map((answer) => ({
id: answer.id,
text: answer.text,
})),
question: msg.poll.question,
};
}

View file

@ -65,13 +65,13 @@ export interface ISavedMessageStickerData {
}
export interface ISavedMessagePollData {
question: {
text: string;
};
answers: {
id: number;
text: string | null;
}[];
question: {
text: string;
};
}
export interface ISavedMessageData {

View file

@ -30,5 +30,10 @@ export function getTextMatchPartialSummary(
return `visible name: ${visibleName}`;
} else if (type === "customstatus") {
return `custom status: ${context.member!.presence?.activities.find((a) => a.type === ActivityType.Custom)?.name}`;
} else if (type == "poll") {
const message = context.message!;
const channel = pluginData.guild.channels.cache.get(message.channel_id as Snowflake);
const channelMention = channel ? verboseChannelMention(channel) : `\`#${message.channel_id}\``;
return `poll in ${channelMention}:\n${messageSummary(message)}`;
}
}

View file

@ -15,14 +15,7 @@ type TextTriggerWithMultipleMatchTypes = {
match_polls: boolean;
};
export type MatchableTextType =
| "message"
| "embed"
| "visiblename"
| "username"
| "nickname"
| "customstatus"
| "polls";
export type MatchableTextType = "message" | "embed" | "visiblename" | "username" | "nickname" | "customstatus" | "poll";
type YieldedContent = [MatchableTextType, string];
@ -69,6 +62,6 @@ export async function* matchMultipleTextTypesOnMessage(
}
if (trigger.match_polls && msg.data.poll) {
yield ["polls", JSON.stringify(msg.data.poll)];
yield ["poll", JSON.stringify(msg.data.poll)];
}
}

View file

@ -1326,6 +1326,10 @@ export function messageSummary(msg: SavedMessage) {
"\n";
}
if (msg.data.poll) {
result += "Poll: ```" + escapeCodeBlock(JSON.stringify(msg.data.poll)) + "```";
}
return result;
}