]> Untitled Git - lemmy-ui.git/blob - src/shared/components/common/emoji-mart.tsx
Merge branch 'main' into custom-emojis
[lemmy-ui.git] / src / shared / components / common / emoji-mart.tsx
1 import { Component } from "inferno";
2 import { getEmojiMart } from "../../utils";
3
4
5 interface EmojiMartProps {
6     onEmojiClick?(val: any): any;
7     pickerOptions: any;
8 }
9
10 export class EmojiMart extends Component<
11     EmojiMartProps
12 > {
13     constructor(props: any, context: any) {
14         super(props, context);
15         this.handleEmojiClick = this.handleEmojiClick.bind(this);
16     }
17     componentDidMount() {
18         let div: any = document.getElementById("emoji-picker");
19         if (div) {
20             div.appendChild(getEmojiMart(this.handleEmojiClick, this.props.pickerOptions));
21         }
22     }
23
24     render() {
25         return (
26             <div id="emoji-picker"></div>
27         );
28     }
29
30     handleEmojiClick(e: any) {
31         this.props.onEmojiClick?.(e);
32     }
33 }