Skip to content

Commit 575b81c

Browse files
committed
fix: emojipicker can sometimes fail to mount
1 parent 91ff6e3 commit 575b81c

File tree

1 file changed

+22
-21
lines changed

1 file changed

+22
-21
lines changed

packages/react/src/components/Comments/EmojiPicker.tsx

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -39,27 +39,28 @@ export const EmojiPicker = (props: {
3939
{props.children}
4040
</div>
4141
</Components.Generic.Popover.Trigger>
42-
{createPortal(
43-
<Components.Generic.Popover.Content
44-
className={"bn-emoji-picker-popover"}
45-
variant={"panel-popover"}
46-
>
47-
<Picker
48-
perLine={7}
49-
onClickOutside={() => {
50-
setOpen(false);
51-
props.onOpenChange?.(false);
52-
}}
53-
onEmojiSelect={(emoji: { native: string }) => {
54-
props.onEmojiSelect(emoji);
55-
setOpen(false);
56-
props.onOpenChange?.(false);
57-
}}
58-
theme={blockNoteContext?.colorSchemePreference}
59-
/>
60-
</Components.Generic.Popover.Content>,
61-
editor.domElement!.parentElement!,
62-
)}
42+
{editor.domElement?.parentElement &&
43+
createPortal(
44+
<Components.Generic.Popover.Content
45+
className={"bn-emoji-picker-popover"}
46+
variant={"panel-popover"}
47+
>
48+
<Picker
49+
perLine={7}
50+
onClickOutside={() => {
51+
setOpen(false);
52+
props.onOpenChange?.(false);
53+
}}
54+
onEmojiSelect={(emoji: { native: string }) => {
55+
props.onEmojiSelect(emoji);
56+
setOpen(false);
57+
props.onOpenChange?.(false);
58+
}}
59+
theme={blockNoteContext?.colorSchemePreference}
60+
/>
61+
</Components.Generic.Popover.Content>,
62+
editor.domElement.parentElement,
63+
)}
6364
</Components.Generic.Popover.Root>
6465
);
6566
};

0 commit comments

Comments
 (0)