/* Metro module 7896; source: actions/UserSettingsActionCreators.tsx; dependencies: [5, 3964, 1311, 1310, 661, 1313, 1362, 1314, 1345, 694, 3829, 2] */ function _fun63228(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#63228, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:6, offset: 0x01b76eaa, size: 333 bytes, params: 8, frame: 19 var object2; let env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = importDefault(5) /* metro dependency 5 */; const clientThemesBackgroundStore = importDefault(3964) /* metro dependency 3964: ClientThemesBackgroundStore */; const selectivelySyncedUserSettingsStore = importDefault(1311) /* metro dependency 1311: SelectivelySyncedUserSettingsStore */; const themeStore = importDefault(1310) /* metro dependency 1310: ThemeStore */; const env0_7 = (require(661) /* metro dependency 661: Constants */).ThemeTypes; const themeConstantsModule = require(1313) /* metro dependency 1313: ThemeConstants */; themeConstantsModule.SystemTheme; const env0_8 = themeConstantsModule.SystemThemeState; object2 = {overrideLocale: overrideLocale, updatedUnsyncedSettings: updatedUnsyncedSettings, setShouldSyncTextSettings: setShouldSyncTextSettings, setShouldSyncAppearanceSettings: setShouldSyncAppearanceSettings, applySettingsOverride: applySettingsOverride, clearSettingsOverride: function(a0) { var r5; importDefault(dependencyMap[9]).dispatch({type: 'USER_SETTINGS_OVERRIDE_CLEAR', settings: copyRestArgs(0, r5)}); }, updateLocale: function(a0) { var env0_0 = a0; var PreloadedUserSettingsActionCreators = require(dependencyMap[6]).PreloadedUserSettingsActionCreators; var INFREQUENT_USER_ACTION = require(dependencyMap[6]).UserSettingsDelay.INFREQUENT_USER_ACTION; return PreloadedUserSettingsActionCreators.updateAsync('localization', _fun63241, INFREQUENT_USER_ACTION); }, updateTheme: updateTheme}; (require(2) /* metro dependency 2 */).fileFinishedImporting('actions/UserSettingsActionCreators.tsx'); exports.default = object2; exports.saveGuildFolders = function(a0) { var env0_0 = a0; var PreloadedUserSettingsActionCreators = require(dependencyMap[6]).PreloadedUserSettingsActionCreators; var FREQUENT_USER_ACTION = require(dependencyMap[6]).UserSettingsDelay.FREQUENT_USER_ACTION; return PreloadedUserSettingsActionCreators.updateAsync('guildFolders', _fun63245, FREQUENT_USER_ACTION); }; exports.saveClientTheme = saveClientTheme; } function convertThemeToProto(a0) { // fn#63229, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:204, offset: 0x01b76ff7, size: 243 bytes, params: 2, frame: 12 const Theme = (require(1314) /* metro dependency 1314: preloaded_user_settings */).Theme; const DARK = ThemeTypes.DARK; if (DARK !== a0) { var LIGHT = ThemeTypes.LIGHT; if (LIGHT === a0) { return Theme.LIGHT; } var DARKER = ThemeTypes.DARKER; if (DARKER === a0) { return Theme.DARKER; } var MIDNIGHT = ThemeTypes.MIDNIGHT; if (MIDNIGHT === a0) { return Theme.MIDNIGHT; } } return Theme.DARK; } function convertClientThemeSettingsToProto(a0) { // fn#63230, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:447, offset: 0x01b770ea, size: 173 bytes, params: 2, frame: 17 var r1; var object2; const object4 = {}; const backgroundGradientPresetId = a0.backgroundGradientPresetId; const value = undefined; object4.backgroundGradientPresetId = backgroundGradientPresetId != null ? (require(1345) /* metro dependency 1345: wrappers */).UInt32Value.create({value: a0.backgroundGradientPresetId}) : value; let customUserThemeSettings = a0.customUserThemeSettings; if (customUserThemeSettings != null) { object2 = {}; customUserThemeSettings = a0.customUserThemeSettings; object2.colors = customUserThemeSettings.colors; customUserThemeSettings = a0.customUserThemeSettings; object2.gradientColorStops = customUserThemeSettings.gradientColorStops; customUserThemeSettings = a0.customUserThemeSettings; object2.gradientAngle = customUserThemeSettings.gradientAngle; customUserThemeSettings = a0.customUserThemeSettings; object2.baseMix = customUserThemeSettings.baseMix; r1 = object2; } else { r1 = value; } object4.customUserThemeSettings = r1; return object4; } function overrideLocale(a0) { // fn#63231, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:907, offset: 0x01b77197, size: 57 bytes, params: 2, frame: 13 (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'USER_SETTINGS_LOCALE_OVERRIDE', locale: a0}); } function updatedUnsyncedSettings(a0) { // fn#63232, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:992, offset: 0x01b771d0, size: 55 bytes, params: 2, frame: 13 (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'UNSYNCED_USER_SETTINGS_UPDATE', settings: a0}); } function setShouldSyncTextSettings(a0) { // fn#63233, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:1088, offset: 0x01b77207, size: 306 bytes, params: 2, frame: 20 var r6; var object; const defaultImport = importDefault(694) /* metro dependency 694: Dispatcher */; const dispatch = defaultImport.dispatch; if (a0) { r6 = {}; } else { object = {}; object.inlineAttachmentMedia = (require(3829) /* metro dependency 3829: UserSettings */).InlineAttachmentMedia.getSetting(); object.inlineEmbedMedia = (require(3829) /* metro dependency 3829: UserSettings */).InlineEmbedMedia.getSetting(); object.renderEmbeds = (require(3829) /* metro dependency 3829: UserSettings */).RenderEmbeds.getSetting(); object.renderReactions = (require(3829) /* metro dependency 3829: UserSettings */).RenderReactions.getSetting(); object.animateEmoji = (require(3829) /* metro dependency 3829: UserSettings */).AnimateEmoji.getSetting(); object.animateStickers = (require(3829) /* metro dependency 3829: UserSettings */).AnimateStickers.getSetting(); object.gifAutoPlay = (require(3829) /* metro dependency 3829: UserSettings */).GifAutoPlay.getSetting(); r6 = object; } Reflect.apply(dispatch, defaultImport, [{type: 'SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE', changes: {text: {shouldSync: a0, settings: r6}}}]); } function setShouldSyncAppearanceSettings(a0) { // fn#63234, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:1635, offset: 0x01b77339, size: 34 bytes, params: 2, frame: 11 const env0_0 = a0; return env0_3(_fun63236)(); } function applySettingsOverride(a0) { // fn#63238, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:2371, offset: 0x01b7751c, size: 57 bytes, params: 2, frame: 13 (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'USER_SETTINGS_OVERRIDE_APPLY', settings: a0}); } function updateLocale(a0) { // fn#63240, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:2573, offset: 0x01b77591, size: 85 bytes, params: 2, frame: 17 const env0_0 = a0; const PreloadedUserSettingsActionCreators = (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).PreloadedUserSettingsActionCreators; const updateAsync = PreloadedUserSettingsActionCreators.updateAsync; const UserSettingsDelay = (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).UserSettingsDelay; const INFREQUENT_USER_ACTION = UserSettingsDelay.INFREQUENT_USER_ACTION; return Reflect.apply(updateAsync, PreloadedUserSettingsActionCreators, ['localization', _fun63241, INFREQUENT_USER_ACTION]); } function updateTheme(a0) { // fn#63242, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:2751, offset: 0x01b77627, size: 169 bytes, params: 2, frame: 20 var PreloadedUserSettingsActionCreators; const env0_0 = a0; (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE', changes: {appearance: {settings: {theme: a0}}}}); if (SelectivelySyncedUserSettingsStore.shouldSync('appearance')) { PreloadedUserSettingsActionCreators = (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).PreloadedUserSettingsActionCreators; PreloadedUserSettingsActionCreators.updateAsync('appearance', _fun63243, (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).UserSettingsDelay.INFREQUENT_USER_ACTION); } } function saveGuildFolders(a0) { // fn#63244, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:3166, offset: 0x01b776f0, size: 85 bytes, params: 2, frame: 17 const env0_0 = a0; const PreloadedUserSettingsActionCreators = (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).PreloadedUserSettingsActionCreators; const updateAsync = PreloadedUserSettingsActionCreators.updateAsync; const UserSettingsDelay = (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).UserSettingsDelay; const FREQUENT_USER_ACTION = UserSettingsDelay.FREQUENT_USER_ACTION; return Reflect.apply(updateAsync, PreloadedUserSettingsActionCreators, ['guildFolders', _fun63245, FREQUENT_USER_ACTION]); } function saveClientTheme({backgroundGradientPresetId, customUserThemeSettings, theme, useSystemTheme}) { // fn#63247, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:3709, offset: 0x01b778a2, size: 328 bytes, params: 2, frame: 26 let value = a1; const r4 = value !== undefined ? value : (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).UserSettingsDelay.INFREQUENT_USER_ACTION; value = theme === 'system'; let r15 = value ? SystemThemeState.ON : SystemThemeState.OFF; r15 = useSystemTheme ?? r15; (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'UNSYNCED_USER_SETTINGS_UPDATE', settings: {useSystemTheme: r15}}); (importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE', changes: {appearance: {settings: {clientThemeSettings: {backgroundGradientPresetId: backgroundGradientPresetId, customUserThemeSettings: customUserThemeSettings}, theme: value ? undefined : theme}}}}); if (SelectivelySyncedUserSettingsStore.shouldSync('appearance')) { return (require(1362) /* metro dependency 1362: UserSettingsProtoActionCreators */).PreloadedUserSettingsActionCreators.updateAsync('appearance', function(a0) { a0.theme = convertThemeToProto(theme); a0.clientThemeSettings = convertClientThemeSettingsToProto({backgroundGradientPresetId: backgroundGradientPresetId, customUserThemeSettings: customUserThemeSettings}); }, r4); } } function* _fun63236() { // fn#63236, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:1641, offset: 0x01b77364, size: 301 bytes, params: 1, frame: 24 var environment; var r8; var value3; var binding; var binding2; var property; var value4; var PreloadedUserSettingsActionCreators; var updateAsync; var value5; var UserSettingsDelay; var INFREQUENT_USER_ACTION; var closure; var value6; var value7; var value8; var value9; var object2; var gradientPreset; var error; if (false) { return undefined; } value = environment.__proto__; if (require) { value3 = environment.__proto__.__proto__; try { binding = env2_0; } catch (error) { return undefined; } try { binding2 = env2_2; } catch (error) { return undefined; } try { property = binding2[6]; } catch (error) { return undefined; } try { value4 = binding(property); } catch (error) { return undefined; } try { PreloadedUserSettingsActionCreators = value4.PreloadedUserSettingsActionCreators; } catch (error) { return undefined; } try { updateAsync = PreloadedUserSettingsActionCreators.updateAsync; } catch (error) { return undefined; } try { property = binding2[6]; } catch (error) { return undefined; } try { value5 = binding(property); } catch (error) { return undefined; } try { UserSettingsDelay = value5.UserSettingsDelay; } catch (error) { return undefined; } try { INFREQUENT_USER_ACTION = UserSettingsDelay.INFREQUENT_USER_ACTION; } catch (error) { return undefined; } try { } catch (error) { return undefined; } try { closure = _fun63237; } catch (error) { return undefined; } try { value6 = Reflect.apply(updateAsync, PreloadedUserSettingsActionCreators, ['appearance', closure, INFREQUENT_USER_ACTION]); } catch (error) { return undefined; } yield value6; try { value7 = undefined; value8 = false; } catch (error) { return undefined; } if (value8) { return value7; } value9 = environment.__proto__.__proto__; } binding = env2_1; const value10 = undefined; const value11 = binding(env2_2[9]); const dispatch = value11.dispatch; const object = {}; object.shouldSync = require; if (require) { r8 = {}; } else { object2 = {}; object2.theme = env2_6.theme; gradientPreset = env2_4.gradientPreset; object2.clientThemeSettings = {backgroundGradientPresetId: gradientPreset == null ? value10 : gradientPreset.id}; object2.developerMode = env2_0(env2_2[10]).DeveloperMode.getSetting(); r8 = object2; } object.settings = r8; Reflect.apply(dispatch, value11, [{type: 'SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE', changes: {appearance: object}}]); return value10; } function _fun63241(a0) { // fn#63241, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:2648, offset: 0x01b775e6, size: 65 bytes, params: 2, frame: 13 const value = environment.__proto__; const StringValue = (require(1345) /* metro dependency 1345: wrappers */).StringValue; a0.locale = StringValue.create({value: env0_0}); } function _fun63243(a0) { // fn#63243, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:2973, offset: 0x01b776d0, size: 32 bytes, params: 2, frame: 11 const value = environment.__proto__; a0.theme = convertThemeToProto(env0_0); } function _fun63245(a0) { // fn#63245, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:3274, offset: 0x01b77745, size: 37 bytes, params: 2, frame: 11 a0.folders = env0_0.map(_fun63246); } function _fun63237(a0) { // fn#63237, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:1744, offset: 0x01b77491, size: 139 bytes, params: 2, frame: 17 let value = environment.__proto__.__proto__.__proto__; let binding = env3_9; const theme = env3_6.theme; const value2 = undefined; a0.theme = binding(theme); binding = env3_10; const object2 = {}; const gradientPreset = env3_4.gradientPreset; object2.backgroundGradientPresetId = gradientPreset == null ? value2 : gradientPreset.id; const ClientThemeSettings = env3_0(env3_2[10]).ClientThemeSettings; value = ClientThemeSettings.getSetting(); object2.customUserThemeSettings = value == null ? value2 : value.customUserThemeSettings; a0.clientThemeSettings = binding(object2); return value2; } function _fun63246(a0) { // fn#63246, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:8074:3295, offset: 0x01b7776a, size: 312 bytes, params: 2, frame: 18 var Int64Value; var UInt64Value; var StringValue; const GuildFolder = (require(1314) /* metro dependency 1314: preloaded_user_settings */).GuildFolder; let create = GuildFolder.create; let object2 = {}; object2.guildIds = a0.guildIds; const value2 = Reflect.apply(create, GuildFolder, [object2]); if (a0.folderId != null) { Int64Value = (require(1345) /* metro dependency 1345: wrappers */).Int64Value; create = Int64Value.create; object2 = {}; object2.value = global.String(a0.folderId); value2.id = Reflect.apply(create, Int64Value, [object2]); } if (a0.folderColor != null) { UInt64Value = (require(1345) /* metro dependency 1345: wrappers */).UInt64Value; create = UInt64Value.create; object2 = {}; object2.value = global.String(a0.folderColor); value2.color = Reflect.apply(create, UInt64Value, [object2]); } if (a0.folderName != null && a0.folderName !== '') { StringValue = (require(1345) /* metro dependency 1345: wrappers */).StringValue; create = StringValue.create; object2 = {}; object2.value = global.String(a0.folderName); value2.name = Reflect.apply(create, StringValue, [object2]); } return value2; }