diff --git a/src/components/Reactions/DELETE_ME_PLEASE.tsx b/src/components/Reactions/DELETE_ME_PLEASE.tsx
new file mode 100644
index 00000000..55d1083e
--- /dev/null
+++ b/src/components/Reactions/DELETE_ME_PLEASE.tsx
@@ -0,0 +1,83 @@
+import * as React from 'react';
+
+import {FaceSmile} from '@gravity-ui/icons';
+import {Button, Flex, Icon, Link, Palette, Popup} from '@gravity-ui/uikit';
+
+import {block} from '../utils/cn';
+
+import {i18n} from './i18n';
+
+import './Reactions.scss';
+
+const b = block('reactions');
+
+export function PopupWithPalette() {
+ return usePopup('Просто Palette', );
+}
+
+export function PopupWithButton() {
+ return usePopup('Просто кнопка', );
+}
+
+export function PopupWithLink() {
+ return usePopup('Просто кнопка', ссылка);
+}
+
+function usePopup(label: string, paletteContent: React.ReactNode) {
+ const [addReactionsElement, setAddReactionsElement] = React.useState(
+ null,
+ );
+
+ const [palettePopupOpened, setPalettePopupOpened] = React.useState(false);
+
+ const onOpenPalettePopup = React.useCallback(() => setPalettePopupOpened(true), []);
+ const onClosePalettePopup = React.useCallback(() => setPalettePopupOpened(false), []);
+ const onTogglePalettePopup = React.useCallback(
+ () => (palettePopupOpened ? onClosePalettePopup() : onOpenPalettePopup()),
+ [onClosePalettePopup, onOpenPalettePopup, palettePopupOpened],
+ );
+
+ const onOpenedChanged = React.useCallback(
+ (opened: boolean) => {
+ if (!opened) {
+ onClosePalettePopup();
+ }
+ },
+ [onClosePalettePopup],
+ );
+
+ const addReactionButton = (
+
+ );
+
+ const addReactionPopup = (
+
+ {paletteContent}
+
+ );
+
+ return (
+
+ {addReactionButton}
+ {addReactionPopup}
+
+ );
+}
diff --git a/src/components/Reactions/Reaction.tsx b/src/components/Reactions/Reaction.tsx
index 9fb5f503..ce5970dd 100644
--- a/src/components/Reactions/Reaction.tsx
+++ b/src/components/Reactions/Reaction.tsx
@@ -49,18 +49,18 @@ export function Reaction(props: ReactionInnerProps) {
const onClickCallback = React.useCallback(() => onClick?.(value), [onClick, value]);
- const buttonRef = React.useRef(null);
- const {onMouseEnter, onMouseLeave} = useReactionsPopup(props.reaction, buttonRef);
+ const [buttonElement, setButtonElement] = React.useState(null);
+ const {onMouseEnter, onMouseLeave} = useReactionsPopup(props.reaction, buttonElement);
const {openedTooltip: currentHoveredReaction} = useReactionsContext();
const button = (