Files
discord-decomp/modules/premium/powerups/native/GuildPowerupsDeactivateAlert.tsx
T
2026-11-01 12:12:55 +02:00

58 lines
2.9 KiB
TypeScript

// Metro module 11631 (f11632).
import { View } from "react-native";
import { createStyles } from "../../../../design/components/Styles/native/createStyles";
import Module712 from "../../../../_bundle/Module712";
import useGuildPowerupOnDeactivate from "../hooks/useGuildPowerupOnDeactivate";
import useDeactivateWarningText from "../hooks/useDeactivateWarningText";
import { useLogPowerupModalOpened, ModalType } from "../analytics/GuildPowerupAnalytics";
import { AlertModal } from "../../../../design/components/AlertModal/native/AlertModal.native";
import { CircleErrorIcon } from "../../../../design/components/Icon/native/redesign/generated/CircleErrorIcon";
import { intl, t } from "../../../../intl/index.native";
import GuildPowerups_messages from "../GuildPowerups.messages";
import { AlertActions, AlertActionButton } from "../../../../design/components/AlertModal/native/AlertModal.native";
import { Text } from "../../../../design/components/Text/native/Text";
const useStyles = createStyles({
headerContainer: {
width: 64,
height: 64,
alignItems: "center",
justifyContent: "center",
borderRadius: Module712.radii.round,
backgroundColor: Module712.colors.BACKGROUND_MOD_SUBTLE,
alignSelf: "center"
},
extraContentContainer: {
paddingHorizontal: Module712.space.PX_12
},
warningText: {
textAlign: "center"
}
});
export default function GuildPowerupsDeactivateAlert(props) {
const { guildId, powerup } = props;
const styles = useStyles();
const guildPowerupOnDeactivate = useGuildPowerupOnDeactivate(guildId, powerup);
const { onDeactivate, error } = guildPowerupOnDeactivate;
const deactivateWarningText = useDeactivateWarningText(guildId, powerup);
useLogPowerupModalOpened(guildId, powerup, ModalType.DEACTIVATE);
return <AlertModal header={<View style={styles.headerContainer}>
<CircleErrorIcon color={Module712.colors.INTERACTIVE_ICON_DEFAULT} size="custom" style={{
width: 40,
height: 40
}} />
</View>} title={intl.formatToPlainString(GuildPowerups_messages.iEBw1M, {
perk: powerup.title
})} content={intl.formatToPlainString(GuildPowerups_messages["7o0K+2"], {
perk: powerup.title
})} actions={<AlertActions>
{error != null && <Text style={styles.warningText} variant="text-xs/semibold" color="text-feedback-critical">{error}</Text>}
<AlertActionButton key="deactivate" variant="destructive" onPress={(event) => {
event.stopPropagation();
return onDeactivate();
}} text={intl.string(GuildPowerups_messages.PYPdl4)} />
<AlertActionButton key="cancel" onPress={() => {}} variant="secondary" text={intl.string(t["ETE/oC"])} />
</AlertActions>} extraContent={<View style={styles.extraContentContainer}>
{deactivateWarningText.map((item, index) => <Text key={index} style={styles.warningText} variant={item.critical ? "text-sm/semibold" : "text-sm/medium"} color={item.critical ? "text-feedback-critical" : void 0}>{item.text}</Text>)}
</View>} />;
};