// Module ID: 4067 // Function ID: 4068 // Name: isSyncedModeThemesEnabled // Dependencies: [1303, 1302, 1304, 1340, 1376, 1372, 1874, 4068, 1305, 1348, 4071, 1358, 4094, 3901, 3928, 1347, 4097, 589, 4098, 709, 2] // Module 4067 (isSyncedModeThemesEnabled) import initialize from "initialize"; import handleThemeChange from "handleThemeChange"; import CHANNEL_SIDEBAR_WIDTH from "CHANNEL_SIDEBAR_WIDTH"; import handleConnectionClosedOrResumed from "handleConnectionClosedOrResumed"; import { isGuildTextChannelType } from "createChannelRecord"; import ensureGuildLoaded from "ensureGuildLoaded"; import mergeGuildAvatar from "mergeGuildAvatar"; import { BACKGROUND_GRADIENT_PRESETS_MAP as closure_12 } from "ThemeTypes"; import { SystemThemeState } from "SystemThemeState"; import { PersistedStore } from "initialize"; const require = arg1; function isSyncedModeThemesEnabled() { return require(1348) /* useIsMobileVisualRefreshExperimentEnabled */.isMobileVisualRefreshEnabled("ClientThemesBackgroundStore"); } function reset() { if (c14) { let c3; } let c16 = false; let c15 = false; } function handleUserStoreChange() { const tmp = !importDefault(3901).canUseClientThemes(currentUser.getCurrentUser()); if (tmp === c14) { return false; } else { c14 = tmp; let c16 = false; } const obj = importDefault(3901); } function handleSelectivelySyncedStoreChange() { if (initialize.shouldSync("appearance")) { const ClientThemeSettings = require(3928) /* explicitContentFromProto */.ClientThemeSettings; const backgroundGradientPresetId = ClientThemeSettings.getSetting().backgroundGradientPresetId; if (null == backgroundGradientPresetId) { if (null == c3) { return false; } else { c3 = undefined; } } else if (dependencyMap[backgroundGradientPresetId] === c3) { return false; } else { c3 = tmp5; } } else { return false; } } function handleSyncedModeChange() { return require(1347) /* isPerModeThemingActive */.isPerModeThemingActive(isSyncedModeThemesEnabled); } function handleSameAsDeviceThemeToggle() { return require(1348) /* useIsMobileVisualRefreshExperimentEnabled */.isMobileVisualRefreshEnabled("ClientThemesBackgroundStore"); } function handleUserSettingsProtoStoreUpdate() { if (initialize.shouldSync("appearance")) { const ClientThemeSettings = require(3928) /* explicitContentFromProto */.ClientThemeSettings; const backgroundGradientPresetId = ClientThemeSettings.getSetting().backgroundGradientPresetId; let result = useSystemTheme.useSystemTheme !== SystemThemeState.ON; if (!result) { result = null == backgroundGradientPresetId; } if (!result) { let tmpResult = tmp(1347); result = tmpResult.isPerModeThemingActive(isSyncedModeThemesEnabled); } if (!result) { tmpResult = tmp(4097); tmpResult.setUseSystemTheme(SystemThemeState.OFF); } if (null != backgroundGradientPresetId) { let tmp13 = null == tmp12; if (!tmp13) { let id; if (user != null) { id = user.id; } let id1; if (tmp12 != null) { id1 = tmp12.id; } tmp13 = id === id1; } if (!tmp13) { user = tmp12; } } else if (null != user) { user = undefined; } } else { return false; } } let c14 = true; let c15 = false; let c16 = false; class ClientThemesBackgroundStore extends PersistedStore { constructor() { applyArgumentsResult = HermesBuiltin.applyArguments(new.target, new.target); items = []; items[0] = (gradientPreset) => { let gradientPresetId; if (gradientPreset != null) { gradientPreset = gradientPreset.gradientPreset; if (gradientPreset != null) { gradientPresetId = gradientPreset.id; } } return { gradientPresetId }; }; applyArgumentsResult.migrations = items; return applyArgumentsResult; } } const prototype = ClientThemesBackgroundStore.prototype; prototype["initialize"] = function initialize(gradientPresetId) { let c16 = false; if (null != gradientPresetId) { let tmp; if (null != gradientPresetId.gradientPresetId) { tmp = dependencyMap[gradientPresetId.gradientPresetId]; } let closure_3 = tmp; let closure_14 = true !== gradientPresetId.canUseClientThemes; } this.waitFor(ensureGuildLoaded, initialize, handleThemeChange, CHANNEL_SIDEBAR_WIDTH, handleConnectionClosedOrResumed, mergeGuildAvatar); const items = [mergeGuildAvatar]; this.syncWith(items, handleUserStoreChange); const items1 = [initialize]; this.syncWith(items1, handleSelectivelySyncedStoreChange); }; prototype["getState"] = function getState() { if (c14) { let obj = {}; } else { let id; if (user != null) { id = user.id; } obj = { gradientPresetId: null, canUseClientThemes: true }; obj[0] = id; } return obj; }; Object.defineProperty(prototype, "gradientPreset", { get: function gradientPreset() { if (obj.isPerModeThemingActive(isSyncedModeThemesEnabled)) { if (c14) { let tmp10; if (c16) { tmp10 = closure_3; } return tmp10; } else { syncedClientTheme = syncedClientTheme.getSyncedClientTheme(syncedClientTheme.systemTheme); let prop; if (syncedClientTheme != null) { prop = syncedClientTheme.backgroundGradientPresetId; } let tmp7; if (null != prop) { tmp7 = dependencyMap[prop]; } return tmp7; } } else { return closure_3; } obj = require(1347) /* isPerModeThemingActive */; }, set: undefined }); prototype["getLinearGradient"] = function getLinearGradient() { let linearGradientForBackgroundGradient = null; if (null != this.gradientPreset) { linearGradientForBackgroundGradient = require(4098) /* getThemeForColor */.getLinearGradientForBackgroundGradient(tmp.gradientPreset); const obj = require(4098) /* getThemeForColor */; } return linearGradientForBackgroundGradient; }; Object.defineProperty(prototype, "isPreview", { get: function isPreview() { return c14; }, set: undefined }); Object.defineProperty(prototype, "isCoachmark", { get: function isCoachmark() { return c15; }, set: undefined }); Object.defineProperty(prototype, "mobilePendingThemeIndex", { get: function mobilePendingThemeIndex() { return closure_4; }, set: undefined }); ClientThemesBackgroundStore.displayName = "ClientThemesBackgroundStore"; ClientThemesBackgroundStore.persistKey = "ClientThemesBackgroundStore"; const clientThemesBackgroundStore = new ClientThemesBackgroundStore(require("dispatcher"), { UPDATE_BACKGROUND_GRADIENT_PRESET: function handleUpdateBackgroundGradientPreset(presetId) { presetId = presetId.presetId; let closure_16 = c14; let tmp; if (null != presetId) { tmp = dependencyMap[presetId]; } let closure_3 = tmp; }, UPDATE_MOBILE_PENDING_THEME_INDEX: function handleUpdateMobilePendingThemeIndex(mobileThemesIndex) { mobileThemesIndex = mobileThemesIndex.mobileThemesIndex; let tmp; if (null != mobileThemesIndex) { tmp = mobileThemesIndex; } let closure_4 = tmp; }, RESET_PREVIEW_CLIENT_THEME: function handleResetPreviewClientTheme() { let c3; let c16 = false; }, CLIENT_THEMES_EDITOR_CLOSE: reset, CHANNEL_SELECT: function handleChannelSelect(channelId) { channelId = channelId.channelId; if (null != channelId) { if (null != channelId.guildId) { if (!obj2.UNSAFE_isDismissibleContentDismissed(require(1358) /* DismissibleContent */.DismissibleContent.CLIENT_THEMES_COACHMARK)) { if (tmp6Result.ageEligibleForPremiumUpsell(tmp)) { channel = channel.getChannel(channelId); let tmp4 = null != channel; if (tmp4) { tmp4 = isGuildTextChannelType(channel.type); } if (tmp4) { let c15 = true; } } tmp6Result = tmp6(4094); } obj2 = require(4071) /* UNSAFE_isDismissibleContentDismissed */; tmp6 = require; } } }, LOGOUT: reset, CACHE_LOADED: handleUserSettingsProtoStoreUpdate, CONNECTION_OPEN: handleUserSettingsProtoStoreUpdate, OVERLAY_INITIALIZE: handleUserSettingsProtoStoreUpdate, SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE: handleUserSettingsProtoStoreUpdate, UNSYNCED_USER_SETTINGS_UPDATE: handleUserSettingsProtoStoreUpdate, USER_SETTINGS_PROTO_UPDATE: handleUserSettingsProtoStoreUpdate, SYSTEM_THEME_CHANGE: handleSyncedModeChange, UPDATE_SYNCED_CLIENT_THEME: handleSyncedModeChange, SET_SAME_AS_DEVICE_THEME_ENABLED: handleSameAsDeviceThemeToggle, CLEAR_SYNCED_CLIENT_THEMES: handleSameAsDeviceThemeToggle }); let result = require("CHANNEL_SIDEBAR_WIDTH").fileFinishedImporting("modules/client_themes/ClientThemesBackgroundStore.tsx"); export default clientThemesBackgroundStore;