// 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 (