(null);
const emojiStyle = useEmojiStyleConfig();
const [variationPickerEmoji] = useEmojiVariationPickerState();
const getEmojiUrl = useGetEmojiUrlConfig();
const { emojiByUnified } = usePickerDataContext();
useEmojiPreviewEvents(previewConfig.showPreview, setPreviewEmoji);
const emoji = emojiByUnified(
(previewEmoji?.unified ?? previewEmoji?.originalUnified) as
| string
| undefined,
);
const show = emoji != null && previewEmoji != null;
return ;
function PreviewContent() {
const defaultEmoji =
variationPickerEmoji ?? emojiByUnified(previewConfig.defaultEmoji);
if (!defaultEmoji) {
return null;
}
const defaultText = variationPickerEmoji
? emojiName(variationPickerEmoji)
: previewConfig.defaultCaption;
return (
<>
{show ? (
) : defaultEmoji ? (
) : null}
{show ? emojiName(emoji) : defaultText}
>
);
}
}
export type PreviewEmoji = null | {
unified: string;
originalUnified: string;
};
const styles = stylesheet.create({
preview: {
alignItems: 'center',
borderTop: '1px solid var(--epr-preview-border-color)',
height: 'var(--epr-preview-height)',
padding: '0 var(--epr-horizontal-padding)',
position: 'relative',
zIndex: 'var(--epr-preview-z-index)',
},
label: {
color: 'var(--epr-preview-text-color)',
fontSize: 'var(--epr-preview-text-size)',
padding: 'var(--epr-preview-text-padding)',
textTransform: 'capitalize',
},
emoji: {
padding: '0',
},
hideOnReactions: {
opacity: '0',
transition: 'opacity 0.5s ease-in-out',
},
});