Files
discord-decomp/modules/instant_invite/native/components/InstantInviteAgeText.tsx
T
2026-11-01 12:12:55 +02:00

55 lines
2.0 KiB
TypeScript

// Metro module 11810 (f11811).
import { View } from "react-native";
import CreateInviteModalStore from "../../../../stores/CreateInviteModalStore";
import { createStyles } from "../../../../design/components/Styles/native/createStyles";
import { useStateFromStores } from "../../../../_bundle/Module589";
import { Text } from "../../../../design/components/Text/native/Text";
import { maxAgeString } from "../../../../utils/InstantInviteUtils";
import { PressableOpacity } from "../../../../design/void/Pressables/native/Pressables";
import { handlePressSettings } from "../InstantInviteUtils";
import { intl, t } from "../../../../intl/index.native";
const useStyles = createStyles({
inviteAgeContainer: {
flexDirection: "row",
alignItems: "center",
flexWrap: "wrap"
}
});
export default function InstantInviteAgeText(props) {
const { style, channel, callbackActionSheet } = props;
let canEditInvite = props.canEditInvite;
if (canEditInvite === void 0) {
canEditInvite = true;
}
const { onEdit, source } = props;
const styles = useStyles();
const stateFromStores = useStateFromStores([CreateInviteModalStore], () => CreateInviteModalStore.getInviteSettings());
let r25 = null;
if (stateFromStores != null) {
const r41 = [<Text variant="text-xs/normal">
{maxAgeString(stateFromStores.maxAge, stateFromStores.maxUses)}
{" "}
</Text>, ,];
if (canEditInvite) {
canEditInvite = <PressableOpacity onPress={() => {
handlePressSettings(channel, callbackActionSheet, source);
if (onEdit != null) {
onEdit();
}
}} accessibilityRole="link" accessibilityLabel={intl.string(t["VNe8P/"])} hitSlop={{
top: 8,
left: 8,
bottom: 8,
right: 8
}}>
<Text variant="text-xs/normal" color="text-link">
{intl.string(t["VNe8P/"])}
</Text>
</PressableOpacity>;
}
r41[1] = canEditInvite;
r25 = <View style={[styles.inviteAgeContainer, style]}>{r41}</View>;
}
return r25;
};