Files
discord-decomp/modules/activities/utils/ActivityFlagUtils.tsx
T
2026-11-01 12:12:55 +02:00

41 lines
2.0 KiB
TypeScript

// Metro module 10477 (f10478).
import { ActivityFlags, ActivityPartyPrivacy } from "../../../Constants";
import { AllowActivityPartyPrivacyFriends, AllowActivityPartyPrivacyVoiceChannel } from "../../user_settings/UserSettings";
import { Storage } from "../../../_bundle/Module595";
import { hasFlag } from "../../../_bundle/Module1384";
import isEmbeddedActivity from "./isEmbeddedActivity";
export function computeActivityFlags({ secrets }, r11 = false, r7 = false, r10 = false, r9 = ActivityPartyPrivacy.PRIVATE) {
let r33;
const r0 = r11 ? ActivityFlags.INSTANCE | 0 : 0;
const r1 = secrets?.join != null ? r0 | ActivityFlags.JOIN : r0;
const r20 = r10 ? r1 | ActivityFlags.CONTEXTLESS : r1;
if (r7) {
const r55 = r20 | ActivityFlags.EMBEDDED;
const setting3 = AllowActivityPartyPrivacyFriends.getSetting();
const setting4 = AllowActivityPartyPrivacyVoiceChannel.getSetting();
const PARTY_PRIVACY_FRIENDS2 = ActivityFlags.PARTY_PRIVACY_FRIENDS;
const r70 = setting3 ? r55 | PARTY_PRIVACY_FRIENDS2 : r55 & ~PARTY_PRIVACY_FRIENDS2;
const PARTY_PRIVACY_VOICE_CHANNEL2 = ActivityFlags.PARTY_PRIVACY_VOICE_CHANNEL;
r33 = r55 | (setting4 ? r70 | PARTY_PRIVACY_VOICE_CHANNEL2 : r70 & ~PARTY_PRIVACY_VOICE_CHANNEL2);
} else {
const r25 = r9 === ActivityPartyPrivacy.PUBLIC || Storage.get("ACTIVITIES_FORCE_PUBLIC");
r33 = r20;
if (r25) {
const setting = AllowActivityPartyPrivacyFriends.getSetting();
const setting2 = AllowActivityPartyPrivacyVoiceChannel.getSetting();
const PARTY_PRIVACY_FRIENDS = ActivityFlags.PARTY_PRIVACY_FRIENDS;
const r2 = setting ? r20 | PARTY_PRIVACY_FRIENDS : r20 & ~PARTY_PRIVACY_FRIENDS;
const PARTY_PRIVACY_VOICE_CHANNEL = ActivityFlags.PARTY_PRIVACY_VOICE_CHANNEL;
r33 = r20 | (setting2 ? r2 | PARTY_PRIVACY_VOICE_CHANNEL : r2 & ~PARTY_PRIVACY_VOICE_CHANNEL);
}
}
return r33;
}
export function isContextlessEmbeddedActivity(a0) {
let r11 = a0?.flags;
if (r11 == null) {
r11 = 0;
}
return hasFlag(r11, ActivityFlags.CONTEXTLESS) && isEmbeddedActivity(a0);
}