101 lines
3.8 KiB
TypeScript
101 lines
3.8 KiB
TypeScript
// Metro module 15705 (f15706).
|
|
import { memo, useEffect } from "react";
|
|
import { View } from "react-native";
|
|
import RelationshipStore from "../../../stores/RelationshipStore";
|
|
import { AnalyticEvents, MessageFlags, Fonts } from "../../../Constants";
|
|
import { createStyles } from "../../../design/components/Styles/native/createStyles";
|
|
import TextStyles from "../../rebrand/native/TextStyles";
|
|
import Module712 from "../../../_bundle/Module712";
|
|
import { useMessageRequestPreview } from "../hooks/useMessageRequestPreview";
|
|
import { useStateFromStoresObject } from "../../../_bundle/Module589";
|
|
import AnalyticsUtils from "../../../utils/AnalyticsUtils";
|
|
import { intl, t } from "../../../intl/index.native";
|
|
import renderMessageMarkup from "../../messages/renderMessageMarkup";
|
|
import { getMessageStickers } from "../../stickers/StickersUtils";
|
|
import { LegacyText } from "../../../design/void/native";
|
|
const useStyles = createStyles({
|
|
systemContent: {
|
|
fontStyle: "italic",
|
|
...TextStyles(Fonts.PRIMARY_MEDIUM, Module712.colors.TEXT_DEFAULT, 12),
|
|
lineHeight: 16
|
|
},
|
|
messageContent: {
|
|
...TextStyles(Fonts.PRIMARY_MEDIUM, Module712.colors.TEXT_DEFAULT, 12),
|
|
lineHeight: 16
|
|
}
|
|
});
|
|
const r60 = memo(function MessageRequestPreview(props) {
|
|
let r2, r37, style, styles;
|
|
let channel, message;
|
|
L32: {
|
|
channel = props.channel;
|
|
style = props.style;
|
|
message = void 0;
|
|
styles = useStyles();
|
|
const messageRequestPreview = useMessageRequestPreview(channel);
|
|
const { loaded, error } = messageRequestPreview;
|
|
message = messageRequestPreview.message;
|
|
const stateFromStoresObject = useStateFromStoresObject([RelationshipStore], () => ({
|
|
isBlocked: message != null && RelationshipStore.isBlockedForMessage(message),
|
|
isIgnored: message != null && RelationshipStore.isIgnoredForMessage(message)
|
|
}), [message]);
|
|
const { isBlocked, isIgnored } = stateFromStoresObject;
|
|
useEffect(() => {
|
|
if (message != null) {
|
|
AnalyticsUtils.track(AnalyticEvents.MESSAGE_REQUEST_PREVIEW_VIEWED, {
|
|
is_spam: channel.isSpam,
|
|
channel_id: channel.id,
|
|
other_user_id: message.author.id
|
|
});
|
|
}
|
|
}, [channel, message]);
|
|
if (error) {
|
|
r37 = intl.string(t.BZHld2);
|
|
r2 = false;
|
|
} else {
|
|
r37 = null;
|
|
r2 = false;
|
|
if (loaded) {
|
|
if (message != null && isBlocked) {
|
|
r37 = intl.string(t["WPe+xL"]);
|
|
r2 = false;
|
|
break L32;
|
|
}
|
|
if (message != null && isIgnored) {
|
|
r37 = intl.string(t.uxrh1O);
|
|
r2 = false;
|
|
break L32;
|
|
}
|
|
if (message?.content != null && message.content !== "") {
|
|
const content = renderMessageMarkup(message, {
|
|
noStyleAndInteraction: true,
|
|
allowGameMentions: true
|
|
}).content;
|
|
if (!(Array.isArray(content) && content.length === 0)) {
|
|
const r108 = content == null;
|
|
r2 = true;
|
|
r37 = content;
|
|
if (!r108) {
|
|
break L32;
|
|
}
|
|
}
|
|
r37 = intl.string(t["262oPB"]);
|
|
r2 = false;
|
|
break L32;
|
|
}
|
|
if (message != null) {
|
|
r37 = getMessageStickers(message).length > 0 ? intl.string(t["zuI+by"]) : message.interaction != null ? intl.string(t["2v7kfl"]) : message.hasFlag(MessageFlags.IS_VOICE_MESSAGE) ? intl.string(t["6bhHrc"]) : message.hasFlag(MessageFlags.IS_COMPONENTS_V2) ? intl.string(t.Xxm5i3) : intl.string(t.LoMGlg);
|
|
r2 = false;
|
|
} else {
|
|
r37 = intl.string(t["0KfDxM"]);
|
|
r2 = false;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return <View style={style}>
|
|
<LegacyText style={r2 ? styles.messageContent : styles.systemContent} numberOfLines={3} ellipsizeMode="tail">{r37}</LegacyText>
|
|
</View>;
|
|
});
|
|
export default r60;
|