// Copyright 2020 Signal Messenger, LLC // SPDX-License-Identifier: AGPL-3.0-only import type { CSSProperties, ReactNode } from 'react'; import React, { forwardRef } from 'react'; import classNames from 'classnames'; import { Button } from 'react-aria-components'; import type { LocalizerType } from '../types/Util'; import { FunStaticEmoji } from './fun/FunEmoji'; import { strictAssert } from '../util/assert'; import { getEmojiVariantByKey, getEmojiVariantKeyByValue, isEmojiVariantValue, } from './fun/data/emojis'; export enum ReactionPickerPickerStyle { Picker, Menu, } export const ReactionPickerPickerEmojiButton = React.forwardRef< HTMLButtonElement, { emoji: string; isSelected: boolean; onClick: () => unknown; title?: string; } >(function ReactionPickerPickerEmojiButtonInner( { emoji, onClick, isSelected, title }, ref ) { strictAssert( isEmojiVariantValue(emoji), 'Expected a valid emoji variant value' ); const emojiVariantKey = getEmojiVariantKeyByValue(emoji); const emojiVariant = getEmojiVariantByKey(emojiVariantKey); return ( ); }); export function ReactionPickerPickerMoreButton({ i18n, onClick, }: Readonly<{ i18n: LocalizerType; onClick: () => unknown; }>): JSX.Element { return (