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

27 lines
1.6 KiB
TypeScript

// Metro module 13047 (f13048).
import { useCallback } from "react";
import { MessageRequestRestrictedGuildIds, RestrictedGuildIds } from "../../../user_settings/UserSettings";
import { getSanitizedMessageRequestRestrictedGuilds } from "../../../../utils/UserSettingsUtils";
import { ActionSheetSwitchRow } from "../../../../design/components/Sheet/native/ActionSheetRow.native";
import { intl, t } from "../../../../intl/index.native";
import useIsStricterMessageRequests from "../../hooks/useIsStricterMessageRequests";
const MessageRequestRestrictedGuildPrivacyOption = function MessageRequestRestrictedGuildPrivacyOption(props) {
const guild = props.guild;
const id = guild.id;
const r8 = MessageRequestRestrictedGuildIds.useSetting().includes(id);
const disabled = RestrictedGuildIds.useSetting().includes(guild.id);
const callback = useCallback((a0) => {
const sanitizedMessageRequestRestrictedGuilds = getSanitizedMessageRequestRestrictedGuilds();
if (a0) {
sanitizedMessageRequestRestrictedGuilds.delete(id);
} else {
sanitizedMessageRequestRestrictedGuilds.add(id);
}
MessageRequestRestrictedGuildIds.updateSetting(Array.from(sanitizedMessageRequestRestrictedGuilds));
}, [id]);
return <ActionSheetSwitchRow label={intl.string(t["7UgSGP"])} subLabel={intl.string(t.INRaYb)} value={disabled ? !disabled : !r8} onValueChange={callback} disabled={disabled} />;
};
export function useMessageRequestPrivacyOption({ guild }) {
return useIsStricterMessageRequests() ? null : <MessageRequestRestrictedGuildPrivacyOption guild={guild} />;
}