28 lines
1.3 KiB
TypeScript
28 lines
1.3 KiB
TypeScript
// Metro module 10382 (f10383).
|
|
import { useMemo, useCallback } from "react";
|
|
import { intl, t } from "../../../intl/index.native";
|
|
import InAppNotificationActionCreators from "../../../actions/native/InAppNotificationActionCreators";
|
|
import { getRootNavigationRef } from "../../main_tabs_v2/RootNavigationRef.native";
|
|
import { NotificationPressable } from "./Notification";
|
|
import { Avatar, AvatarSizes } from "../../../design/void/native";
|
|
import { SystemMessageText } from "./MessagePreviewText";
|
|
export default function MessageRequestInAppNotification(props) {
|
|
const notification = props.notification;
|
|
const { author, numMutualGuilds } = notification;
|
|
return <NotificationPressable icon={<Avatar user={author} size={AvatarSizes.NORMAL} guildId={void 0} />} header={useMemo(() => ({
|
|
type: "simple",
|
|
text: intl.formatToPlainString(t.LeYU4d, {
|
|
name: author.username,
|
|
count: numMutualGuilds
|
|
})
|
|
}), [author.username, numMutualGuilds])} onPress={useCallback(() => {
|
|
InAppNotificationActionCreators.clearNotification();
|
|
const rootNavigationRef = getRootNavigationRef();
|
|
if (rootNavigationRef != null) {
|
|
rootNavigationRef.navigate("message-requests");
|
|
}
|
|
}, [])} notification={notification}>
|
|
<SystemMessageText text={intl.string(t["Bx4/Lf"])} />
|
|
</NotificationPressable>;
|
|
};
|