/* Metro module 15883; source: modules/guild_automod/AutomodStore.tsx; dependencies: [57, 5, 31, 11454, 661, 685, 15884, 690, 11459, 4131, 3769, 2] */ import Module00005 from '../../by-id/module-00005.js'; /* Metro dependency 5 */ import Module00057 from '../../by-id/module-00057.js'; /* Metro dependency 57 */ import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */ import * as ReactModule from '../../by-id/module-00031-React.js'; /* Metro dependency 31 */ import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */ import * as Module00685Module from '../../by-id/module-00685.js'; /* Metro dependency 685 */ import * as ReactBatchUpdatesNativeModule from '../../external/discord_common/js/shared/utils/ReactBatchUpdates.native.tsx'; /* Metro dependency 690 */ import * as Module03769Module from '../../by-id/module-03769.js'; /* Metro dependency 3769 */ import * as ConstantsModule2 from './Constants.tsx'; /* Metro dependency 11454 */ function _fun122535(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#122535, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:6, offset: 0x0256b7c6, size: 290 bytes, params: 8, frame: 20 const env0_0 = require; const useSyncAutomodRules2 = useSyncAutomodRules; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_7 = {}; let value = Module00685Module; value = value.createWithEqualityFn(_fun122540); (FileImportTrackerModule).fileFinishedImporting('modules/guild_automod/AutomodStore.tsx'); exports.useAutomodStore = value; exports.getRuleCountByTriggerType = getRuleCountByTriggerType; exports.useSyncAutomodRules = useSyncAutomodRules2; exports.useSyncAutomodRulesEffect = useSyncAutomodRulesEffect; exports.useAutomodRulesList = useAutomodRulesList; function useSyncAutomodRules(a0) { // fn#122536, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1427, offset: 0x0256b8e8, size: 190 bytes, params: 2, frame: 21 const env0_0 = a0; let binding = ReactModule; const [property, env0_1] = Module00057(binding.useState(false), 2); const value5 = Module00057(env0_8(function(a0) { return [a0.syncRules, a0.fetching]; }, (require(3769) /* metro dependency 3769 */).shallow), 2); const property2 = value5[0]; const property3 = value5[1]; const property32 = property3; const items2 = [property]; binding = ReactModule; const useCallback = binding.useCallback; items2[1] = Reflect.apply(useCallback, binding, [property32(_fun122539), [a0, property3, property2]]); return items2; function* _fun122539() { // fn#122539, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1604, offset: 0x0256b9ce, size: 115 bytes, params: 1, frame: 14 var binding; var value3; var value4; var value5; var error; if (true) { value = environment.__proto__; if (!env1_3) { if (require == null) { return undefined; } try { } catch (error) { dependencyMap(false); throw error; } try { dependencyMap(true); } catch (error) { dependencyMap(false); throw error; } try { binding = env1_2; } catch (error) { dependencyMap(false); throw error; } try { } catch (error) { dependencyMap(false); throw error; } try { value3 = binding(require); } catch (error) { dependencyMap(false); throw error; } yield value3; try { value4 = undefined; value5 = false; } catch (error) { dependencyMap(false); throw error; } if (value5) { dependencyMap(false); return value4; } dependencyMap(false); } } } } function _fun122540(a0, a1) { // fn#122540, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:234, offset: 0x0256ba41, size: 101 bytes, params: 3, frame: 13 const env0_0 = a0; const env0_1 = a1; const object = {'rules': null, 'fetching': false, 'error': null}; object.rules = {}; object.updateRule = updateRule; object.removeRule = removeRule; const env0_2 = Module00005(_fun122551); object.syncRules = syncRules; return object; function updateRule(a0) { // fn#122541, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:292, offset: 0x0256baa6, size: 220 bytes, params: 2, frame: 17 var environment; var items2; const env0_0 = a0; const guildId = a0.guildId; const env0_2 = a0.id; const triggerType = a0.triggerType; let property = require().rules[guildId]; property = (property ?? ({}))[triggerType]; const r6 = property ?? []; let value = r6.some(function({id}) { return id === id; }); const value2 = r6.filter(_fun122543); if (value) { value = value2.map(_fun122544); } else { items2 = []; value = arraySpread(items2, value2, 0, r6); items2[value] = a0; value + 1; } value = environment.__proto__; (ReactBatchUpdatesNativeModule).batchUpdates(_fun122545); function _fun122543(a0) { // fn#122543, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:431, offset: 0x0256bb82, size: 69 bytes, params: 2, frame: 12 let value = environment.__proto__.__proto__; value = Reflect.apply((require(15884) /* metro dependency 15884: SystemRulesUtils */).isDefaultRuleId, value, [a0.id]); return value ? a0.triggerType !== triggerType : !value; } function _fun122544(a0) { // fn#122544, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:497, offset: 0x0256bbc7, size: 25 bytes, params: 2, frame: 4 const value = a0; return value.id !== id ? value : env0_0; } function _fun122545() { // fn#122545, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:546, offset: 0x0256bbe0, size: 80 bytes, params: 1, frame: 16 const binding = env1_0; const object2 = {}; copyDataProperties(object2, rules, undefined); const guildIdBinding = guildId; const object3 = {}; copyDataProperties(object3, ConstantsModule2.AutomodTriggerType, undefined); object3[triggerType] = ConstantsModule.EMPTY_STRING_SNOWFLAKE_ID; object2[guildIdBinding] = object3; binding({rules: object2, error: null}); } } function removeRule(a0, a1) { // fn#122546, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:612, offset: 0x0256bc30, size: 133 bytes, params: 3, frame: 15 var environment; const env0_0 = a0; const env0_1 = a1; const property = require().rules[a1]; const Object = global.Object; const env0_4 = Object.keys(property).reduce(_fun122547, {}); const value = environment.__proto__; (ReactBatchUpdatesNativeModule).batchUpdates(_fun122549); function _fun122547(a0, a1) { // fn#122547, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:668, offset: 0x0256bcb5, size: 67 bytes, params: 3, frame: 13 const Number = global.Number; const value = Number(a1); const r4 = Module00005[value] ?? []; a0[value] = r4.filter(_fun122548); return a0; function _fun122548({id}) { // fn#122548, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:738, offset: 0x0112d1a9, size: 21 bytes, params: 2, frame: 2 return id !== env1_0; } } function _fun122549() { // fn#122549, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:782, offset: 0x0256bcf8, size: 58 bytes, params: 1, frame: 14 const binding = env1_0; const object2 = {}; copyDataProperties(object2, rules, undefined); object2[require] = env0_4; binding({rules: object2, error: null}); } } function* _fun122551(a0) { // fn#122551, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:842, offset: 0x0256bd3d, size: 333 bytes, params: 2, frame: 18 var environment; var binding; var binding2; var fetchAutomodRules; var value5; var closure; var rules; var binding3; var batchUpdates; var error; var binding4; var APIError; var prototype; var aPIError; if (true) { var env0_0 = a0; var env0_1; var env0_2; var env0_3; var Date = global.Date; var now = Date.now; value = Reflect.apply(now, Date, []); var property = env2_7[a0]; reduciblePort32: while (true) { exceptionLanding31: while (true) { if (value - (property ?? 0) > 20000) { binding = env2_7; Date = global.Date; now = Date.now; binding[a0] = Reflect.apply(now, Date, []); try { binding = env2_0; } catch (error) { break exceptionLanding31; } try { binding2 = env2_1; } catch (error) { break exceptionLanding31; } try { property = binding2[8]; } catch (error) { break exceptionLanding31; } try { value = binding(property); } catch (error) { break exceptionLanding31; } try { fetchAutomodRules = value.fetchAutomodRules; } catch (error) { break exceptionLanding31; } try { value = Reflect.apply(fetchAutomodRules, value, [a0]); } catch (error) { break exceptionLanding31; } yield value; try { value = undefined; value5 = false; } catch (error) { break exceptionLanding31; } if (value5) { return value; } try { closure = _fun122552; } catch (error) { break exceptionLanding31; } try { value = closure(value); } catch (error) { break exceptionLanding31; } try { env0_1 = value; } catch (error) { break exceptionLanding31; } value = environment.__proto__; try { } catch (error) { break exceptionLanding31; } try { value = dependencyMap(); } catch (error) { break exceptionLanding31; } try { rules = value.rules; } catch (error) { break exceptionLanding31; } try { env0_2 = rules; } catch (error) { break exceptionLanding31; } try { binding = env2_0; } catch (error) { break exceptionLanding31; } try { binding3 = env2_1; } catch (error) { break exceptionLanding31; } try { property = binding3[7]; } catch (error) { break exceptionLanding31; } try { value = binding(property); } catch (error) { break exceptionLanding31; } try { batchUpdates = value.batchUpdates; } catch (error) { break exceptionLanding31; } try { closure = _fun122554; } catch (error) { break exceptionLanding31; } try { Reflect.apply(batchUpdates, value, [closure]); } catch (error) { break exceptionLanding31; } break reduciblePort32; } break reduciblePort32; } binding = env2_0; binding4 = env2_1; APIError = binding(binding4[9]).APIError; prototype = APIError.prototype; value = Object.create(prototype, {constructor: {value: APIError}}); aPIError = new APIError(); value = aPIError instanceof Object ? aPIError : value; env0_3 = value; value = binding(binding4[7]); batchUpdates = value.batchUpdates; Reflect.apply(batchUpdates, value, [_fun122555]); break reduciblePort32; } } function _fun122552(a0) { // fn#122552, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:964, offset: 0x0256be8a, size: 127 bytes, params: 2, frame: 14 const object = {}; const binding = env3_5; const KEYWORD = binding.KEYWORD; object[KEYWORD] = []; const ML_SPAM = binding.ML_SPAM; object[ML_SPAM] = []; const DEFAULT_KEYWORD_LIST = binding.DEFAULT_KEYWORD_LIST; object[DEFAULT_KEYWORD_LIST] = []; const MENTION_SPAM = binding.MENTION_SPAM; object[MENTION_SPAM] = []; const USER_PROFILE = binding.USER_PROFILE; object[USER_PROFILE] = []; const SERVER_POLICY = binding.SERVER_POLICY; object[SERVER_POLICY] = []; a0.forEach(_fun122553); return object; function _fun122553(a0) { // fn#122553, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1113, offset: 0x0256bf09, size: 40 bytes, params: 2, frame: 11 const property = env0_0[a0.triggerType]; if (property != null) { property.push(a0); } } } function _fun122554() { // fn#122554, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1242, offset: 0x0256bf31, size: 58 bytes, params: 1, frame: 14 const object2 = {}; copyDataProperties(object2, rules, undefined); object2[env0_0] = env0_1; require({rules: object2, error: null}); } function _fun122555() { // fn#122555, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1347, offset: 0x0256bf6b, size: 29 bytes, params: 1, frame: 11 require({error: env0_3}); } } function syncRules() { // fn#122556, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1373, offset: 0x00d6b059, size: 30 bytes, params: 1, frame: 13 return env0_2.apply(this, arguments); } } function getRuleCountByTriggerType(a0, a1) { // fn#122557, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1803, offset: 0x0256bf88, size: 63 bytes, params: 3, frame: 11 const binding = env0_8; const getState = binding.getState; let r0 = Reflect.apply(getState, binding, []).rules[a0]?.[a1]; r0 = r0 ?? []; return r0.length; } function useSyncAutomodRulesEffect(a0) { // fn#122558, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:1966, offset: 0x0256bfc7, size: 97 bytes, params: 2, frame: 16 const value3 = Module00057(useSyncAutomodRules(a0), 2); const property = value3[0]; const property2 = value3[1]; ReactModule.useEffect(_fun122559, [a0, property2]); return [property, property2]; function _fun122559() { // fn#122559, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:2076, offset: 0x0256c028, size: 29 bytes, params: 1, frame: 11 env1_3(_fun122561)(); function* _fun122561() { // fn#122561, original name: ?anon_0_, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:2084, offset: 0x0256c050, size: 39 bytes, params: 1, frame: 11 if (true) { value = environment.__proto__.__proto__; yield require(); } } } } function useAutomodRulesList(a0) { // fn#122562, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:2150, offset: 0x0256c077, size: 59 bytes, params: 2, frame: 14 const env0_0 = a0; return env0_8(_fun122563, (Module03769Module).shallow); function _fun122563({rules, updateRule, removeRule}) { // fn#122563, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:16091:2192, offset: 0x0256c0b2, size: 78 bytes, params: 2, frame: 7 return {rulesByTriggerType: rules[env0_0 ?? EMPTY_STRING_SNOWFLAKE_ID] ?? ({}), updateRule: updateRule, removeRule: removeRule}; } } } global.__d(_fun122535, 15883, [57, 5, 31, 11454, 661, 685, 15884, 690, 11459, 4131, 3769, 2]) /* metro module 15883, dependencies: [57, 5, 31, 11454, 661, 685, 15884, 690, 11459, 4131, 3769, 2] */;