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

211 lines
9.7 KiB
TypeScript

// Metro module 13882 (f13883).
import FrecencyStore from "../../stores/FrecencyStore";
import GuildMemberCountStore from "../../stores/GuildMemberCountStore";
import GuildStore from "../../stores/GuildStore";
import SortedGuildStore from "../../stores/SortedGuildStore";
import { GuildActivityStatusRestrictionDefaultV2, ProfileVisibility } from "../../_bundle/Module1306";
import { getSanitizedActivityRestrictedGuilds } from "../../utils/UserSettingsUtils";
import { intl, t } from "../../intl/index.native";
import { DefaultGuildsActivityRestrictedV2, ActivityRestrictedGuilds } from "../user_settings/UserSettings";
let c9680_6, c9680_7, getProfileVisibilitySettingName;
const computeAffectedGuilds = function computeAffectedGuilds(setting, mappedActivityValue) {
let r54, r74, flattenedGuildIds;
if (setting === mappedActivityValue) {
return null;
}
const ACTIVITY_STATUS_OFF = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF;
let r0 = 2;
const r1 = ACTIVITY_STATUS_OFF !== setting ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS !== setting ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === setting ? 0 : -1 : 1 : 2;
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF !== mappedActivityValue) {
r0 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS !== mappedActivityValue ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === mappedActivityValue ? 0 : -1 : 1;
}
if (!(r1 < 0) && !(r0 < 0)) {
const r6 = r0 < r1 ? c9680_6.RESTRICTING : c9680_6.EXPANDING;
let RESTRICTING, sanitizedActivityRestrictedGuilds;
L24: {
RESTRICTING = r6;
sanitizedActivityRestrictedGuilds = getSanitizedActivityRestrictedGuilds();
flattenedGuildIds = SortedGuildStore.getFlattenedGuildIds();
if (setting === GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF) {
const ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS;
r54 = "large_only";
if (mappedActivityValue === ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS) {
break L24;
}
}
if (setting === GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS) {
const ACTIVITY_STATUS_OFF2 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF;
r54 = "large_only";
if (mappedActivityValue === ACTIVITY_STATUS_OFF2) {
break L24;
}
}
L23: {
if (!(setting === GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON && mappedActivityValue === GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS)) {
const ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS2 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS;
r74 = "all";
if (setting !== ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS2) {
break L23;
}
r74 = mappedActivityValue === GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON ? "small_only" : "all";
} else {
r74 = "small_only";
}
}
r54 = r74;
}
let c20766_2 = r54;
const affectedGuildIds = flattenedGuildIds.filter((flattenedGuildId) => {
if (GuildStore.getGuild(flattenedGuildId) == null) {
return false;
}
const r7 = sanitizedActivityRestrictedGuilds.has(flattenedGuildId);
if (RESTRICTING === c9680_6.RESTRICTING && r7) {
return false;
}
if (RESTRICTING === c9680_6.EXPANDING && !r7) {
return false;
}
if (c20766_2 === "all") {
return true;
}
const memberCount = GuildMemberCountStore.getMemberCount(flattenedGuildId);
return memberCount == null ? RESTRICTING === c9680_6.RESTRICTING : c20766_2 === "large_only" ? memberCount > 200 : memberCount <= 200;
});
const length = affectedGuildIds.length;
let r83 = null;
if (length !== 0) {
affectedGuildIds.sort((a, b) => {
const guild = GuildStore.getGuild(a);
const guild2 = GuildStore.getGuild(b);
return guild?.joinedAt == null ? guild2?.joinedAt == null ? 0 : guild?.joinedAt == null ? 1 : guild2?.joinedAt == null ? -1 : new Date(guild2.joinedAt).getTime() - new Date(guild.joinedAt).getTime() : guild?.joinedAt == null ? 1 : guild2?.joinedAt == null ? -1 : new Date(guild2.joinedAt).getTime() - new Date(guild.joinedAt).getTime();
});
r83 = {
affectedGuildIds,
direction: RESTRICTING
};
}
return r83;
}
return null;
};
getProfileVisibilitySettingName = function getProfileVisibilitySettingName(a0) {
if (ProfileVisibility.FRIENDS_AND_ALL_GUILDS === a0) {
return intl.string(t.Boxc8R).toLowerCase();
}
if (ProfileVisibility.FRIENDS_AND_SMALL_GUILDS === a0) {
return intl.string(t.YOIKBt).toLowerCase();
}
if (ProfileVisibility.FRIENDS_ONLY === a0) {
return intl.string(t.u0nlJv).toLowerCase();
}
return "";
};
c9680_6 = {
RESTRICTING: "restricting",
EXPANDING: "expanding"
};
c9680_7 = new Map([[ProfileVisibility.FRIENDS_AND_ALL_GUILDS, GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF], [ProfileVisibility.FRIENDS_AND_SMALL_GUILDS, GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS], [ProfileVisibility.FRIENDS_ONLY, GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON]]);
export { c9680_6 as ChangeDirection };
export function getPermissiveness(a0) {
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF === a0) {
return 2;
}
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS === a0) {
return 1;
}
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === a0) {
return 0;
}
return -1;
}
export function profileVisibilityToActivityRestriction(a0) {
let r5 = c9680_7.get(a0);
if (r5 == null) {
r5 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF;
}
return r5;
}
export { computeAffectedGuilds };
export function getActivityRestrictionSettingName(a0) {
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF === a0) {
return intl.string(t.FzgQna).toLowerCase();
}
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS === a0) {
return intl.string(t["1hvuGH"]).toLowerCase();
}
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === a0) {
return intl.string(t.fQc5la).toLowerCase();
}
return "";
}
export { getProfileVisibilitySettingName };
export function getProfileToActivityUpsellStrings(a0, a1) {
return {
title: intl.string(a0 ? t.eYDA7D : t["9jYwjo"]),
subtitle: intl.format(a0 ? t["c5/jDc"] : t.ajzh8S, {
settingName: a1
}),
confirmText: intl.string(a0 ? t["6uPZV1"] : t.a9PIyD),
toastContent: intl.string(a0 ? t.AdpgML : t["Q7E+QF"])
};
}
export function getUpsellStrings(a0, a1) {
return {
title: intl.string(a0 ? t.jRx1Aa : t.S0Y0bh),
subtitle: intl.format(a0 ? t.Fs96LO : t.GcoYX8, {
settingName: a1
}),
confirmText: intl.string(a0 ? t["4DM5HJ"] : t.WRrDtI),
toastContent: intl.string(a0 ? t.AdpgML : t["Q7E+QF"])
};
}
export function computeProfileToActivityUpsell(a0, a1) {
let mappedActivityValue = c9680_7.get(a1);
if (mappedActivityValue == null) {
mappedActivityValue = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF;
}
const setting = DefaultGuildsActivityRestrictedV2.getSetting();
if (setting === mappedActivityValue) {
return null;
}
let r29 = c9680_7.get(a0);
if (r29 == null) {
r29 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF;
}
const ACTIVITY_STATUS_OFF = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF;
let r0 = 2;
const r1 = ACTIVITY_STATUS_OFF !== r29 ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS !== r29 ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === r29 ? 0 : -1 : 1 : 2;
const r2 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF !== mappedActivityValue ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS !== mappedActivityValue ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === mappedActivityValue ? 0 : -1 : 1 : 2;
const r3 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF !== setting ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS !== setting ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === setting ? 0 : -1 : 1 : 2;
if (GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_OFF !== mappedActivityValue) {
r0 = GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON_FOR_LARGE_GUILDS !== mappedActivityValue ? GuildActivityStatusRestrictionDefaultV2.ACTIVITY_STATUS_ON === mappedActivityValue ? 0 : -1 : 1;
}
if (r1 > r2 !== r3 > r0) {
return null;
}
const r82 = computeAffectedGuilds(setting, mappedActivityValue);
if (r82 == null) {
return null;
}
return {
affectedGuildIds: r82.affectedGuildIds,
direction: r82.direction,
settingName: getProfileVisibilitySettingName(a1),
mappedActivityValue
};
}
export function sortGuildIdsByFrecency(a0) {
return [...a0].sort((a, b) => FrecencyStore.getScoreWithoutFetchingLatest(b) - FrecencyStore.getScoreWithoutFetchingLatest(a));
}
export function applyBulkGuildRestrictionChange(a0, a1) {
const sanitizedActivityRestrictedGuilds2 = getSanitizedActivityRestrictedGuilds();
const set = new Set(a1);
let c20767_0 = set;
if (a0 === c9680_6.RESTRICTING) {
ActivityRestrictedGuilds.updateSetting([...new Set([...sanitizedActivityRestrictedGuilds2, ...set])]);
} else {
ActivityRestrictedGuilds.updateSetting([...sanitizedActivityRestrictedGuilds2].filter((item) => !c20767_0.has(item)));
}
}