Skip to content

Commit

Permalink
refactor guild.translate
Browse files Browse the repository at this point in the history
  • Loading branch information
Arhusien committed Oct 31, 2023
1 parent 8f98886 commit 1fc915d
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 30 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@johnbotapp/discord-html-transcripts",
"version": "3.2.5",
"version": "3.2.6",
"description": "A nicely formatted html transcript generator for discord.js.",
"main": "dist/index.js",
"homepage": "https://github.com/johnbotapp/discord-html-transcripts",
Expand Down
10 changes: 5 additions & 5 deletions src/generator/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,10 @@ export default async function renderMessages({ messages, channel, callbacks, ...
{/* header */}
<section>
<span style={{ fontSize: '28px', color: "#fff", fontWeight: 600 }}>
{channel.isDMBased() ? 'Welcome to' : `${channel.guild?.translate ? await channel.guild.translate("tickets/attachments:WELCOME_TO") : "Welcome to"} #${channel.name.startsWith("closed-") ? channel.name.slice(7) : channel.name} !`}
{channel.isDMBased() ? 'Welcome to' : `${channel.guild?.translate?.("tickets/attachments:WELCOME_TO") ?? "Welcome to"} #${channel.name.startsWith("closed-") ? channel.name.slice(7) : channel.name} !`}
</span>
<span style={{ fontSize: '16px', color: "#b9bbbe", fontWeight: 400 }}>
{channel.isDMBased() ? 'This is the start of the' : `${channel.guild?.translate ? await channel.guild.translate("tickets/attachments:CHANNEL_START") : "This is the start of the"} #${channel.name.startsWith("closed-") ? channel.name.slice(7) : channel.name}.`}
{channel.isDMBased() ? 'This is the start of the' : `${channel.guild?.translate?.("tickets/attachments:CHANNEL_START") ?? "This is the start of the"} #${channel.name.startsWith("closed-") ? channel.name.slice(7) : channel.name}.`}
</span>
</section>
<header>
Expand All @@ -125,15 +125,15 @@ export default async function renderMessages({ messages, channel, callbacks, ...
{channel.isDMBased() ? 'Direct Messages' : `${channel.name.startsWith("closed-") ? channel.name.slice(7) : channel.name}`}
{/*<div className='divider'></div>
<span style={{ fontSize: '16px', color: "#b9bbbe", fontWeight: 400 }}>
{messages.length} {channel.isDMBased() ? messages.length > 1 ? 'messages' : 'message' : `${channel.guild?.translate ? messages.length > 1 ? (await channel.guild.translate("words:MESSAGE_2")).toLowerCase() : (await channel.guild.translate("words:MESSAGE_1")).toLowerCase() : `message${messages.length > 1 ? 's' : ''}`}`}
{messages.length} {channel.isDMBased() ? messages.length > 1 ? 'messages' : 'message' : `${channel.guild?.translate ? messages.length > 1 ? (channel.guild.translate("words:MESSAGE_2")).toLowerCase() : (channel.guild.translate("words:MESSAGE_1")).toLowerCase() : `message${messages.length > 1 ? 's' : ''}`}`}
</span>*/}
</header>
</div>
);

const footerElement = (
<footer>
{channel.isDMBased() ? 'This archive has been generated on the' : `${channel.guild?.translate ? await channel.guild.translate("tickets/attachments:ARCHIVE_GENERATE") : "This archive has been generated on the"}`}
{channel.isDMBased() ? 'This archive has been generated on the' : `${channel.guild?.translate?.("tickets/attachments:ARCHIVE_GENERATE") ?? "This archive has been generated on the"}`}
{' '}
<time id="footer-timestamp" data-timestamp={Math.floor(new Date().getTime() / 1000)} data-local="fr-FR"></time>
</footer>
Expand All @@ -142,7 +142,7 @@ export default async function renderMessages({ messages, channel, callbacks, ...
const contextMenu = (
<div id="context-menu" className="context-menu">
<div className="item">
{channel.isDMBased() ? 'Copy Message ID' : `${channel.guild?.translate ? await channel.guild.translate("tickets/attachments:COPY_MESSAGE_ID") : "Copy Message ID"}`}
{channel.isDMBased() ? 'Copy Message ID' : `${channel.guild?.translate?.("tickets/attachments:COPY_MESSAGE_ID") ?? "Copy Message ID"}`}
</div>
</div>
)
Expand Down
6 changes: 3 additions & 3 deletions src/generator/renderers/message.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,8 @@ export default async function renderMessage(message: Message, context: RenderMes
name={message.thread.name}
cta={
message.thread.messageCount
? `${message.thread.messageCount} ${(message.guild && message.guild?.translate) ? message.thread.messageCount > 1 ? await message.guild.translate("words:MESSAGE_2") : await message.guild.translate("words:MESSAGE_1") : `Message${message.thread.messageCount > 1 ? 's' : ''}`}`
: (message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:SEE_THREAD") : 'View Thread'
? `${message.thread.messageCount} ${message.thread.messageCount > 1 ? await message.guild?.translate?.("tickets/words:MESSAGE_2") : await message.guild?.translate?.("tickets/words:MESSAGE_1") ?? `Message${message.thread.messageCount > 1 ? 's' : ''}` }`
: `${message.guild?.translate?.("tickets/attachments:SEE_THREAD") ?? 'View Thread'}`
}
>
{message.thread.lastMessage ? (
Expand All @@ -103,7 +103,7 @@ export default async function renderMessage(message: Message, context: RenderMes
)}
</DiscordThreadMessage>
) : (
`${(message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:MESSAGES_NOT_SAVED") : 'Thread messages not saved.'}`
`${message.guild?.translate?.("tickets/attachments:MESSAGES_NOT_SAVED") ?? 'Thread messages not saved.'}`
)}
</DiscordThread>
)}
Expand Down
6 changes: 3 additions & 3 deletions src/generator/renderers/reply.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export default async function renderReply(message: Message, context: RenderMessa
const referencedMessage = context.messages.find((m) => m.id === message.reference!.messageId);

if (!referencedMessage) return <DiscordReply slot="reply">
{ (message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:MESSAGE_NOT_BE_LOADED") : "Message could not be loaded."}
{ `${message.guild?.translate?.("tickets/attachments:MESSAGE_NOT_BE_LOADED") ?? "Message could not be loaded."}` }
</DiscordReply>;

const isCrosspost = referencedMessage.reference && referencedMessage.reference.guildId !== message.guild?.id;
Expand Down Expand Up @@ -39,11 +39,11 @@ export default async function renderReply(message: Message, context: RenderMessa
</span>
) : isCommand ? (
<em data-goto={referencedMessage.id}>
{ (message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:SEE_COMMAND") : "Click to see command."}
{ `${message.guild?.translate?.("tickets/attachments:SEE_COMMAND") ?? "Click to see command."}` }
</em>
) : (
<em data-goto={referencedMessage.id}>
{ (message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:SEE_ATTACHMENTS") : "Click to see attachment."}
{ `${message.guild?.translate?.("tickets/attachments:SEE_ATTACHMENTS") ?? "Click to see attachment."}` }
</em>
)}
</DiscordReply>
Expand Down
36 changes: 18 additions & 18 deletions src/generator/renderers/systemMessage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ export default async function renderSystemMessage(message: Message) {
case MessageType.UserJoin:
return (
<DiscordSystemMessage id={`m-${message.id}`} key={message.id} type="join">
{await JoinMessage(message.member, message.author)}
{JoinMessage(message.member, message.author)}
</DiscordSystemMessage>
);

Expand All @@ -19,10 +19,10 @@ export default async function renderSystemMessage(message: Message) {
<Highlight color={message.member?.roles.color?.hexColor}>
{message.author.displayName ?? message.author.username}
</Highlight> {
(message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:PINNED") : "pinned"
`${message.guild?.translate?.("tickets/attachments:PINNED") ?? "pinned"}`
} {' '}
<i data-goto={message.reference?.messageId}>{ message.guild ? await message.guild.translate("tickets/attachments:A_MESSAGE") : "a message" }</i> {' '} {
(message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:IN_THIS_CHANNEL") : "to this channel"
<i data-goto={message.reference?.messageId}>{ `${message.guild?.translate?.("tickets/attachments:A_MESSAGE") ?? "a message"}` }</i> {' '} {
`${message.guild?.translate?.("tickets/attachments:IN_THIS_CHANNEL") ?? "to this channel"}`
}.
{/* reactions */}
{message.reactions.cache.size > 0 && (
Expand All @@ -49,7 +49,7 @@ export default async function renderSystemMessage(message: Message) {
<Highlight color={message.member?.roles.color?.hexColor}>
{message.author.displayName ?? message.author.username}
</Highlight> {
(message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:BOOSTED_SERVEUR") : "boosted the server!"
`${message.guild?.translate?.("tickets/attachments:BOOSTED_SERVEUR") ?? "boosted the server!"}`
}
</DiscordSystemMessage>
);
Expand All @@ -60,7 +60,7 @@ export default async function renderSystemMessage(message: Message) {
<Highlight color={message.member?.roles.color?.hexColor}>
{message.author.displayName ?? message.author.username}
</Highlight> {
(message.guild && message.guild?.translate) ? await message.guild.translate("tickets/attachments:STARTED_THREAD") : "started a thread:"
`${message.guild?.translate?.("tickets/attachments:STARTED_THREAD") ?? "started a thread:"}`
} <i data-goto={message.reference?.messageId}>{message.content}</i>
</DiscordSystemMessage>
);
Expand All @@ -74,23 +74,23 @@ export function Highlight({ children, color }: { children: React.ReactNode; colo
return <i style={{ color: color ?? 'white' }}>{children}</i>;
}

export async function JoinMessage(member: GuildMember | null, fallbackUser: User) {
export function JoinMessage(member: GuildMember | null, fallbackUser: User) {
const allJoinMessages = [
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_0") : "{{user}} has arrived.",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_1") : "A wild {{user}} appears.",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_2") : "{{user}} just arrived!",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_3") : "{{user}} has joined the group.",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_4") : "Welcome, {{user}}. Say hi!",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_5") : "{{user}} just slipped into the server.",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_6") : "Everyone, welcome {{user}} as it should be!",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_7") : "Hooray, you did it, {{user}}!",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_8") : "Welcome, {{user}}. Hope you brought some pizza",
(member && member.guild?.translate) ? await member.guild.translate("tickets/attachments:DISCORD_JOIN_MESSAGE_9") : "{{user}} has bounced into the server."
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_0") ?? "{{user}} has arrived.",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_1") ?? "A wild {{user}} appears.",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_2") ?? "{{user}} just arrived!",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_3") ?? "{{user}} has joined the group.",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_4") ?? "Welcome, {{user}}. Say hi!",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_5") ?? "{{user}} just slipped into the server.",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_6") ?? "Everyone, welcome {{user}} as it should be!",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_7") ?? "Hooray, you did it, {{user}}!",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_8") ?? "Welcome, {{user}}. Hope you brought some pizza",
member?.guild?.translate?.("tickets/attachments:DISCORD_JOIN_MESSAGE_9") ?? "{{user}} has bounced into the server."
];

const randomMessage = allJoinMessages[Math.floor(Math.random() * allJoinMessages.length)];

return randomMessage
return (randomMessage as string)
.split('{{user}}')
.flatMap((item, i) => [
item,
Expand Down

0 comments on commit 1fc915d

Please sign in to comment.