Files
discord-decomp/modules/explicit_media_redaction/SensitiveMediaExplicitRedactionSettingsUtils.tsx
T
2026-11-01 12:12:55 +02:00

141 lines
5.5 KiB
TypeScript

// Metro module 5881 (f5882).
import UserStore from "../../stores/UserStore";
import { ExplicitContentFilterTypes } from "../user_settings/privacy_and_safety/DMSafetyConstants";
import { ExplicitContentRedaction } from "../../_bundle/Module1306";
import { isSettingTeenByDefault } from "../regional_feature_config/RegionalFeatureConfigUtils";
import { SettingsDefaultFeature } from "../../_bundle/Module3875";
import { ExplicitContentFilter, ExplicitContentSettings } from "../user_settings/UserSettings";
import { getShouldObscureForSetting } from "./SensitiveMediaRedactionSettingUtils";
let c3681_3, c3681_4, c3681_5, c3681_6;
const resolveExplicitContentSettingWithDefaults = function resolveExplicitContentSettingWithDefaults(a0) {
let r35, r48;
const setting = a0.setting;
let isDm = a0.isDm;
if (isDm === void 0) {
isDm = false;
}
let isFriend = a0.isFriend;
if (isFriend === void 0) {
isFriend = false;
}
if (setting != null && setting !== ExplicitContentRedaction.UNSET_EXPLICIT_CONTENT_REDACTION) {
return setting;
}
const currentUser = UserStore.getCurrentUser();
if (isSettingTeenByDefault(SettingsDefaultFeature.SENSITIVE_CONTENT)) {
if (isDm === void 0) {
isDm = false;
}
if (isFriend === void 0) {
isFriend = false;
}
r35 = isDm && !isFriend ? ExplicitContentRedaction.BLOCK : ExplicitContentRedaction.BLUR;
} else if (currentUser?.nsfwAllowed === false) {
const r43 = isDm === void 0 ? false : isDm;
const r44 = isFriend === void 0 ? false : isFriend;
if (r43) {
const setting3 = ExplicitContentFilter.getSetting();
r48 = r44 ? c3681_5[setting3] : c3681_6[setting3];
} else {
r48 = ExplicitContentRedaction.BLUR;
}
r35 = r48;
} else {
const r30 = isDm === void 0 ? false : isDm;
const r31 = isFriend === void 0 ? false : isFriend;
if (r30) {
const setting2 = ExplicitContentFilter.getSetting();
r35 = r31 ? c3681_3[setting2] : c3681_4[setting2];
} else {
r35 = ExplicitContentRedaction.SHOW;
}
}
return r35;
};
const r19 = {};
r19[ExplicitContentFilterTypes.DISABLED.valueOf()] = ExplicitContentRedaction.SHOW;
r19[ExplicitContentFilterTypes.NON_FRIENDS.valueOf()] = ExplicitContentRedaction.SHOW;
r19[ExplicitContentFilterTypes.FRIENDS_AND_NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLOCK;
c3681_3 = r19;
const r41 = {};
r41[ExplicitContentFilterTypes.DISABLED.valueOf()] = ExplicitContentRedaction.SHOW;
r41[ExplicitContentFilterTypes.NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLOCK;
r41[ExplicitContentFilterTypes.FRIENDS_AND_NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLOCK;
c3681_4 = r41;
const r63 = {};
r63[ExplicitContentFilterTypes.DISABLED.valueOf()] = ExplicitContentRedaction.BLUR;
r63[ExplicitContentFilterTypes.NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLUR;
r63[ExplicitContentFilterTypes.FRIENDS_AND_NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLOCK;
c3681_5 = r63;
const r85 = {};
r85[ExplicitContentFilterTypes.DISABLED.valueOf()] = ExplicitContentRedaction.BLUR;
r85[ExplicitContentFilterTypes.NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLOCK;
r85[ExplicitContentFilterTypes.FRIENDS_AND_NON_FRIENDS.valueOf()] = ExplicitContentRedaction.BLOCK;
c3681_6 = r85;
export { c3681_5 as TEEN_EXPLICIT_CONTENT_FILTER_TO_EXPLICIT_CONTENT_REDACTION_FRIEND_DM };
export { c3681_6 as TEEN_EXPLICIT_CONTENT_FILTER_TO_EXPLICIT_CONTENT_REDACTION_NON_FRIEND_DM };
export { resolveExplicitContentSettingWithDefaults };
export function resolveSettingWithDefaultsForTeen({ isDm = false, isFriend = false }) {
if (isDm) {
const setting = ExplicitContentFilter.getSetting();
return isFriend ? c3681_5[setting] : c3681_6[setting];
}
return ExplicitContentRedaction.BLUR;
}
export function getExplicitContentSettingOrDefault(a0) {
const r4 = a0 == null ? ExplicitContentSettings.getSetting() : a0;
return {
explicitContentGuilds: resolveExplicitContentSettingWithDefaults({
setting: r4?.explicitContentGuilds
}),
explicitContentNonFriendDm: resolveExplicitContentSettingWithDefaults({
setting: r4?.explicitContentNonFriendDm,
isDm: true
}),
explicitContentFriendDm: resolveExplicitContentSettingWithDefaults({
setting: r4?.explicitContentFriendDm,
isDm: true,
isFriend: true
})
};
}
export function updateExplicitContentSetting(a0) {
const setting = ExplicitContentSettings.getSetting();
ExplicitContentSettings.updateSetting({
...{
explicitContentGuilds: resolveExplicitContentSettingWithDefaults({
setting: setting?.explicitContentGuilds
}),
explicitContentNonFriendDm: resolveExplicitContentSettingWithDefaults({
setting: setting?.explicitContentNonFriendDm,
isDm: true
}),
explicitContentFriendDm: resolveExplicitContentSettingWithDefaults({
setting: setting?.explicitContentFriendDm,
isDm: true,
isFriend: true
})
},
...a0
});
}
export function shouldRedactMessageMediaForForum() {
if (UserStore.getCurrentUser() == null) {
return false;
}
const setting = ExplicitContentSettings.getSetting();
const r18 = resolveExplicitContentSettingWithDefaults({
setting: setting?.explicitContentGuilds
});
resolveExplicitContentSettingWithDefaults({
setting: setting?.explicitContentNonFriendDm,
isDm: true
});
resolveExplicitContentSettingWithDefaults({
setting: setting?.explicitContentFriendDm,
isDm: true,
isFriend: true
});
return getShouldObscureForSetting(r18);
}