58 lines
2.9 KiB
TypeScript
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>} />;
|
|
};
|