// Metro module 4005 (f4006). import UserSettingsProtoStore from "../user_settings/UserSettingsProtoStore"; import SelectedGuildStore from "../../stores/SelectedGuildStore"; import Durations from "../../utils/Durations"; import { disableNewUserDismissibleContent } from "./NewUserDismissibleContentRegistry"; import { isVersionedDismissibleContent, isSnowflakeBoundDismissibleContent, isTimeRecurringDismissibleContent, isSingleUseGuildDismissibleContent, isTimeRecurringGuildDismissibleContent, isSnowflakeBoundGuildDismissibleContent } from "./DismissibleContentTypes"; import { isVersionedDismissibleContentDismissed, isTimeRecurringDismissibleContentDismissed, UNSAFE_isSingleUseGuildDismissibleContentDismissed, UNSAFE_isTimeRecurringGuildDismissibleContentDismissed, UNSAFE_isSnowflakeBoundGuildDismissibleContentDismissed, markDismissibleContentAsDismissedPreProcessing, markDismissibleContentAsDismissedPostProcessing, UNSAFE_addGuildDismissedContent, getGuildNextNumTimesDismissed, UNSAFE_addTimeRecurringGuildDismissedContent, UNSAFE_addSnowflakeBoundGuildDismissedContent } from "./DismissibleContentUtils"; import SnowflakeUtils from "../../utils/SnowflakeUtils"; import { hasBit } from "../../utils/Uint8ArrayUtils"; import { useStateFromStores } from "../../_bundle/Module589"; import { addDismissedContent } from "../user_settings/UserSettingsProtoActionCreators"; const UNSAFE_isDismissibleContentDismissed = function UNSAFE_isDismissibleContentDismissed(id, r5 = {}) { let r101; const { bypassNewUserCheck = false, cooldownDurationMs = Durations.Millis.WEEK, guildId } = r5; if (!bypassNewUserCheck && disableNewUserDismissibleContent(id)) { return true; } if (isVersionedDismissibleContent(id)) { return isVersionedDismissibleContentDismissed(id).isDismissed; } if (isSnowflakeBoundDismissibleContent(id)) { const r82 = SnowflakeUtils.fromTimestamp(Date.now()); if (disableNewUserDismissibleContent(id)) { r101 = { isDismissed: true, lastDismissedSnowflakeId: null }; } else { const userContent = UserSettingsProtoStore.settings.userContent; const lastDismissedSnowflakeId = userContent == null ? void 0 : userContent.recurringDismissibleContentStates[id]?.lastDismissedObjectId; r101 = { isDismissed: lastDismissedSnowflakeId != null && SnowflakeUtils.compare(r82, lastDismissedSnowflakeId) !== 1, lastDismissedSnowflakeId }; } return r101.isDismissed; } if (isTimeRecurringDismissibleContent(id)) { return isTimeRecurringDismissibleContentDismissed(id, { cooldownDurationMs }).isDismissed; } if (isSingleUseGuildDismissibleContent(id)) { return UNSAFE_isSingleUseGuildDismissibleContentDismissed(id, guildId); } if (isTimeRecurringGuildDismissibleContent(id)) { return UNSAFE_isTimeRecurringGuildDismissibleContentDismissed(id, guildId); } if (isSnowflakeBoundGuildDismissibleContent(id)) { return UNSAFE_isSnowflakeBoundGuildDismissibleContentDismissed(id, guildId); } const dismissedContents = UserSettingsProtoStore.settings.userContent?.dismissedContents; return dismissedContents != null && hasBit(dismissedContents, id); }; export { UNSAFE_isDismissibleContentDismissed }; export function useIsDismissibleContentDismissed_UNSAFE(c13775_0, r7 = {}) { let c13775_1 = r7; return useStateFromStores([UserSettingsProtoStore, SelectedGuildStore], () => UNSAFE_isDismissibleContentDismissed(c13775_0, c13775_1)); } export async function UNSAFE_markDismissibleContentAsDismissed(c24903_0, c24903_1) { let c24903_3; c24903_3 = void 0; let c29250_0 = c24903_0; let r30 = c24903_1; if (r30 === void 0) { r30 = {}; } let c29250_1 = r30; await void 0; if (!(0, UNSAFE_isDismissibleContentDismissed)(c29250_0, { bypassNewUserCheck: true })) { markDismissibleContentAsDismissedPreProcessing(c29250_0, c29250_1); await addDismissedContent(c29250_0); markDismissibleContentAsDismissedPostProcessing(c29250_0, c29250_1); } } export function UNSAFE_isSnowflakeBoundDismissibleContentDismissed(a0, a1) { if (disableNewUserDismissibleContent(a0)) { return { isDismissed: true, lastDismissedSnowflakeId: null }; } const userContent = UserSettingsProtoStore.settings.userContent; const lastDismissedSnowflakeId = userContent == null ? void 0 : userContent.recurringDismissibleContentStates[a0]?.lastDismissedObjectId; return { isDismissed: lastDismissedSnowflakeId != null && SnowflakeUtils.compare(a1, lastDismissedSnowflakeId) !== 1, lastDismissedSnowflakeId }; } export async function UNSAFE_markSingleUseGuildDismissibleContentAsDismissed(c24904_0, c24904_1, c24904_2) { let c24904_4; c24904_4 = void 0; let c29251_0 = c24904_0; let c29251_1 = c24904_1; let r32 = c24904_2; if (r32 === void 0) { r32 = {}; } let c29251_2 = r32; await void 0; markDismissibleContentAsDismissedPreProcessing(c29251_0, c29251_2); await UNSAFE_addGuildDismissedContent(c29251_0, c29251_1, 1); markDismissibleContentAsDismissedPostProcessing(c29251_0, c29251_2); } export async function UNSAFE_markTimeRecurringGuildDismissibleContentAsDismissed(c24905_0, c24905_1, c24905_2) { let c24905_4; c24905_4 = void 0; let c29252_0 = c24905_0; let c29252_1 = c24905_2; const guildNextNumTimesDismissed = getGuildNextNumTimesDismissed(c24905_0, c24905_1); markDismissibleContentAsDismissedPreProcessing(c24905_0, c24905_2); await UNSAFE_addTimeRecurringGuildDismissedContent(c24905_0, c24905_1, guildNextNumTimesDismissed); markDismissibleContentAsDismissedPostProcessing(c29252_0, c29252_1); } export async function UNSAFE_markSnowflakeBoundGuildDismissibleContentAsDismissed(c24906_0, snowflakeId, c24906_2, c24906_3) { let c24906_5; c24906_5 = void 0; let c29253_0 = c24906_0; let c29253_1 = c24906_3; const guildNextNumTimesDismissed = getGuildNextNumTimesDismissed(c24906_0, c24906_2); markDismissibleContentAsDismissedPreProcessing(c24906_0, { ...c24906_3, snowflakeId }); await UNSAFE_addSnowflakeBoundGuildDismissedContent(c24906_0, snowflakeId, c24906_2, guildNextNumTimesDismissed); markDismissibleContentAsDismissedPostProcessing(c29253_0, c29253_1); }