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

44 lines
1.9 KiB
TypeScript

// Metro module 11603 (f11604).
import { useRef, useEffect } from "react";
import { ContentDismissActionType } from "../../../../dismissible_content/DismissibleContentConstants";
import useGuildPowerupRollbackModalConfig from "../../hooks/useGuildPowerupRollbackModalConfig";
import { useSelectedDismissibleContent } from "../../../../dismissible_content/hooks/useSelectedDismissibleContent";
import openGuildPowerupRollbackSheet, { GUILD_POWERUP_ROLLBACK_SHEET_KEY } from "../utils/openGuildPowerupRollbackSheet";
import ActionSheetActionCreators from "../../../../action_sheet/native/ActionSheetActionCreators";
export default function useShowGuildPowerupRollbackSheet(a0, a1, r7 = false) {
const guildPowerupRollbackModalConfig = useGuildPowerupRollbackModalConfig(a0, a1);
let shouldShow = guildPowerupRollbackModalConfig.shouldShow;
const modalConfig = guildPowerupRollbackModalConfig.modalConfig;
if (shouldShow) {
shouldShow = modalConfig != null;
}
if (shouldShow) {
shouldShow = !r7;
}
const r15 = [];
if (shouldShow) {
r15.push(modalConfig.dismissibleContent);
}
const [r26, r27] = useSelectedDismissibleContent(r15);
let c19025_1 = r26;
let c19025_2 = r27;
const ref = useRef(false);
useEffect(() => {
if (!(ref.current || modalConfig == null || modalConfig.primaryButtonText == null || c19025_1 !== modalConfig.dismissibleContent)) {
ref.current = true;
openGuildPowerupRollbackSheet({
header: modalConfig.header,
body: modalConfig.bodies.join("\n\n"),
ctaText: modalConfig.primaryButtonText,
onCtaPress: () => {
c19025_2(ContentDismissActionType.TAKE_ACTION);
ActionSheetActionCreators.hideActionSheet(GUILD_POWERUP_ROLLBACK_SHEET_KEY);
},
onDismiss: () => {
c19025_2(ContentDismissActionType.USER_DISMISS);
}
});
}
}, [r26, modalConfig, r27]);
};