/* Metro module 1311; source: modules/user_settings/SelectivelySyncedUserSettingsStore.tsx; dependencies: [6, 7, 15, 17, 18, 661, 566, 587, 22, 694, 2] */ import ClassCallCheck from '../../by-id/module-00006-ClassCallCheck.js'; /* Metro dependency 6 */ import CreateClass from '../../by-id/module-00007-CreateClass.js'; /* Metro dependency 7 */ import PossibleConstructorReturn from '../../by-id/module-00015-PossibleConstructorReturn.js'; /* Metro dependency 15 */ import Module00017 from '../../by-id/module-00017.js'; /* Metro dependency 17 */ import Inherits from '../../by-id/module-00018-Inherits.js'; /* Metro dependency 18 */ import Flux from '../../external/discord_common/js/packages/flux/index.tsx'; /* Metro dependency 566 */ import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as StorageModule from '../../external/discord_common/js/packages/storage/Storage.tsx'; /* Metro dependency 587 */ import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */ function _fun14463(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#14463, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:6, offset: 0x00e07797, size: 343 bytes, params: 8, frame: 19 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); let env0_9 = {}; const PersistedStore = (Flux).PersistedStore; let value = _fun14467(PersistedStore); value.displayName = 'SelectivelySyncedUserSettingsStore'; value.persistKey = 'SelectivelySyncedUserSettingsStore'; value.migrations = [_fun14474, _fun14475]; value = new value(importDefault(694) /* metro dependency 694: Dispatcher */, {SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE: SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE, LOGOUT: function() { env0_9 = {}; }}); (FileImportTrackerModule).fileFinishedImporting('modules/user_settings/SelectivelySyncedUserSettingsStore.tsx'); exports.default = value; function _isNativeReflectConstruct_14464() { // fn#14464, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:179, offset: 0x00e078ee, size: 94 bytes, params: 1, frame: 18 var Boolean; var prototype; var valueOf; var call; var Reflect; var construct; var closure; var value; var error; try { Boolean = global.Boolean; prototype = Boolean.prototype; valueOf = prototype.valueOf; call = valueOf.call; Reflect = global.Reflect; construct = Reflect.construct; Boolean = global.Boolean; closure = function() { }; value = Reflect.apply(construct, Reflect, [Boolean, [], closure]); value = Reflect.apply(call, valueOf, [value]); var result = !value; } catch (error) { } return (_isNativeReflectConstruct_14464_isNativeReflectConstruct = function() { return !!result; })(); } function _fun14467(a0) { // fn#14467, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:387, offset: 0x00e0794c, size: 164 bytes, params: 2, frame: 16 const SelectivelySyncedUserSettingsStore2 = SelectivelySyncedUserSettingsStore; Inherits(SelectivelySyncedUserSettingsStore2, a0); return CreateClass(SelectivelySyncedUserSettingsStore2, [{key: 'initialize', value: value_14469}, {key: 'getState', value: value_14470}, {key: 'shouldSync', value: value_14471}, {key: 'getTextSettings', value: value_14472}, {key: 'getAppearanceSettings', value: value_14473}]); function SelectivelySyncedUserSettingsStore() { // fn#14468, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:399, offset: 0x00e079f0, size: 113 bytes, params: 1, frame: 20 const value = environment.__proto__; env1_3(this, SelectivelySyncedUserSettingsStore); const value3 = env1_6(SelectivelySyncedUserSettingsStore); return env1_5(this, _isNativeReflectConstruct_14464() ? global.Reflect.construct(value3, arguments, env1_6(this).constructor) : value3.apply(this, arguments)); } function value_14469(a0) { // fn#14469, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:787, offset: 0x00e07a61, size: 22 bytes, params: 2, frame: 2 const r1 = a0 ?? ({}); value = environment.__proto__; } function value_14470() { // fn#14470, offset: 0x00e07a77, size: 9 bytes, params: 1, frame: 1 return env1_9; } function value_14471(a0) { // fn#14471, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:884, offset: 0x00e07a80, size: 39 bytes, params: 2, frame: 3 const value = environment.__proto__; return env1_9[a0]?.shouldSync !== false; } function value_14472() { // fn#14472, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:981, offset: 0x00e07aa7, size: 31 bytes, params: 1, frame: 3 const value = environment.__proto__; return env1_9.text?.settings; } function value_14473() { // fn#14473, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:1077, offset: 0x00e07ac6, size: 32 bytes, params: 1, frame: 3 const value = environment.__proto__; return env1_9.appearance?.settings; } } function _fun14474() { // fn#14474, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:1286, offset: 0x00e07ae6, size: 296 bytes, params: 1, frame: 19 var object; var object2; const Storage = (StorageModule).Storage; const r6 = Storage.get('UserSettingsSync') ?? ({}); const r5 = Storage.get('UserSettingsStore') ?? ({}); Storage.remove('UserSettingsSync'); const object3 = {}; const TEXT = UserSettingsSections.TEXT; if (r6[TEXT] === false) { object = {shouldSync: false}; object.settings = (importDefault(22) /* metro dependency 22 */).pick(r5, ['inlineAttachmentMedia', 'inlineEmbedMedia', 'renderEmbeds', 'renderReactions', 'animateEmoji', 'animateStickers', 'gifAutoPlay', 'defaultReactionEmoji']); object3.text = object; } const APPEARANCE = UserSettingsSections.APPEARANCE; if (r6[APPEARANCE] === false) { object2 = {shouldSync: false}; object2.settings = (importDefault(22) /* metro dependency 22 */).pick(r5, ['theme', 'clientThemeSettings', 'developerMode']); object3.appearance = object2; } return object3; } function SELECTIVELY_SYNCED_USER_SETTINGS_UPDATE({changes}) { // fn#14476, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:2068, offset: 0x00e07c9f, size: 192 bytes, params: 2, frame: 22 var r15; var shouldSync; var r3; var propertyName; var propertyName2; var property; var settings; var binding; var properties4; var properties5; var properties6; var propertyName3; var propertyName4; var settings2; for (propertyName in changes) { property = changes[propertyName]; shouldSync = property.shouldSync; settings = property.settings; if (shouldSync !== true) { if (shouldSync !== false) { continue; } binding = env0_9; binding[propertyName] = {shouldSync: shouldSync, settings: {}}; property = env0_9[propertyName]; if (property == null) { shouldSync = undefined; continue; } shouldSync = property.shouldSync; if (shouldSync !== false) { r15 = propertyName2; continue; } properties4 = Object.keys(settings); properties5 = 0; properties6 = properties4.length; if (properties4 === undefined) { r15 = propertyName2; continue; } for (r3 = properties5; true; r3 = propertyName4) { propertyName3 = properties4[r3]; propertyName4 = r3 + 1; if (propertyName3 === undefined) { r15 = propertyName2; break; } settings2 = env0_9[propertyName].settings; settings2[propertyName3] = settings[propertyName3]; } } else { delete env0_9[propertyName]; r15 = propertyName2; } } } } function _fun14475(a0) { // fn#14475, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1438:1815, offset: 0x00e07c0e, size: 145 bytes, params: 2, frame: 15 var r5; var theme; var appearance; var value2; var settings; var object; var object2; var object3; const value = undefined; if (a0 == null) { theme = value; } else { appearance = a0.appearance; value2 = appearance == null; if (value2) { theme = value; r5 = value2; } else { settings = appearance.settings; if (settings == null) { theme = value; r5 = value2; } else { theme = settings.theme; r5 = value2; } } } if (theme === 'amoled') { object = {}; copyDataProperties(object, a0, r5); object2 = {}; appearance = a0.appearance; copyDataProperties(object2, appearance, r5); object3 = {}; appearance = a0.appearance; copyDataProperties(object3, appearance.settings, r5); object3['theme'] = 'midnight'; object2['settings'] = object3; object['appearance'] = object2; return object; } return value; } global.__d(_fun14463, 1311, [6, 7, 15, 17, 18, 661, 566, 587, 22, 694, 2]) /* metro module 1311, dependencies: [6, 7, 15, 17, 18, 661, 566, 587, 22, 694, 2] */;