import {View} from 'react-native' import {type ChatBskyConvoDefs, type ModerationOpts} from '@atproto/api' import {useLingui} from '@lingui/react/macro' import {MessageContextMenu} from '#/components/dms/MessageContextMenu' import {useMessageReplies} from '#/components/dms/MessageReplies' import {SwipeToReply} from '#/components/dms/SwipeToReply' import type * as bsky from '#/types/bsky' export function ActionsWrapper({ message, isFromSelf, senderProfile, moderationOpts, children, }: { message: ChatBskyConvoDefs.MessageView isFromSelf: boolean senderProfile?: bsky.profile.AnyProfileView moderationOpts: ModerationOpts | undefined children: React.ReactNode }) { const {t: l} = useLingui() const {setReply} = useMessageReplies() return ( setReply(message)}> {swipeGesture => ( {trigger => // will always be true, since this file is platform split trigger.IS_NATIVE && ( trigger.control.open('full')}> {children} ) } )} ) }