react-emoji-toggle-button
Version:
A flexible and reusable React package to use an emoji picker and connect it with a text input using Ref. Toggle emoji button for React apps.
63 lines (62 loc) • 2.16 kB
TypeScript
import { Dispatch } from 'react';
import { ThemeConfig } from '../types';
declare const emojiList: string[];
declare const handleMouseEnter: ({ setCurrentEmoji, showEmojiPicker, }: {
setCurrentEmoji: Dispatch<React.SetStateAction<string>>;
showEmojiPicker: boolean;
}) => void;
export type PickerPosition = "top-right" | "top-left" | "bottom-right" | "bottom-left";
declare const getPickerPositionStyle: ({ position, pickerWidth, pickerHeight, }: {
position: PickerPosition;
pickerHeight: number;
pickerWidth: number;
}) => {
bottom: string;
right: string;
top?: undefined;
left?: undefined;
transform?: undefined;
} | {
top: string;
right: string;
bottom?: undefined;
left?: undefined;
transform?: undefined;
} | {
top: string;
left: string;
transform: string;
bottom?: undefined;
right?: undefined;
};
declare const defaultThemeConfig: ThemeConfig;
declare const insertTextAtCursor: (inputElement: HTMLInputElement | HTMLTextAreaElement, text: string) => void;
declare const defaultFontFamily = "\"Twemoji Country Flags\", \"Helvetica\", \"Comic Sans\", serif";
declare const defaultEmojisPerRow = 6;
declare const defaultEmojiItemSize = 40;
declare const defaultPickerWidth = 320;
declare const defaultPickerHeight = 420;
declare const defaultListHeight = 330;
declare const defaultBadEmojisList: string[];
declare const sizeConfig: {
sm: {
emojiItemSize: number;
pickerWidth: number;
pickerHeight: number;
listHeight: number;
};
md: {
emojiItemSize: number;
pickerWidth: number;
pickerHeight: number;
listHeight: number;
};
lg: {
emojiItemSize: number;
pickerWidth: number;
pickerHeight: number;
listHeight: number;
};
};
declare const categoryEmojiMap: Record<string, string>;
export { emojiList, handleMouseEnter, getPickerPositionStyle, defaultThemeConfig, insertTextAtCursor, defaultFontFamily, defaultEmojisPerRow, defaultEmojiItemSize, defaultPickerWidth, defaultPickerHeight, defaultListHeight, sizeConfig, categoryEmojiMap, defaultBadEmojisList, };