Skip to content

Commit aa468ad

Browse files
committed
Implement jumboable
1 parent 23d137b commit aa468ad

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

packages/react/src/components/DiscordMessage.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,18 @@ export type DiscordMessageProps = PropsWithChildren<{
1919
}>
2020

2121
type MaybeTwemojiProps = PropsWithChildren<{
22-
useTwemoji?: boolean
22+
useTwemoji?: boolean,
23+
jumboable?: boolean
2324
}>
2425

2526

2627
function MaybeTwemoji({
2728
useTwemoji,
29+
jumboable,
2830
children,
2931
}: MaybeTwemojiProps): ReactElement {
3032
if (useTwemoji) {
31-
return <Twemoji>{children}</Twemoji>
33+
return <Twemoji options={{ className: `emoji${jumboable ? ' jumboable' : ''}` }}>{children}</Twemoji>
3234
}
3335
return <>{children}</>
3436
}
@@ -111,8 +113,12 @@ export default function DiscordMessage({
111113
if (ephemeralMessage) messageClasses += ' discord-ephemeral-highlight'
112114
if (highlightMessage && !ephemeralMessage) messageClasses += ' discord-mention-highlight'
113115

116+
const emoji_regex = /^(?:[\p{Extended_Pictographic}\u{1F3FB}-\u{1F3FF}\u{1F9B0}-\u{1F9B3}]|\s)*$/ug
117+
114118
return (
115-
<MaybeTwemoji useTwemoji={useTwemoji}>
119+
<MaybeTwemoji useTwemoji={useTwemoji} jumboable={emoji_regex.test(
120+
(slots.default ? slots.default : '').toString(),
121+
)}>
116122
<div className={messageClasses}>
117123
{slots.interactions}
118124
<div className="discord-message-content">

0 commit comments

Comments
 (0)