/* Metro module 15883; source: modules/guild_automod/AutomodStore.tsx; dependencies: [57, 5, 31, 11454, 661, 685, 15884, 690, 11459, 4131, 3769, 2] */ 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 closure = useSyncAutomodRules; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_2 = importDefault(57) /* metro dependency 57 */; const env0_3 = importDefault(5) /* metro dependency 5 */; const env0_4 = importAll(31) /* metro dependency 31 */; const env0_5 = (require(11454) /* metro dependency 11454: Constants */).AutomodTriggerType; const env0_6 = (require(661) /* metro dependency 661: Constants */).EMPTY_STRING_SNOWFLAKE_ID; const env0_7 = {}; let value = require(685) /* metro dependency 685 */; value = value.createWithEqualityFn(_fun122540); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_automod/AutomodStore.tsx'); exports.useAutomodStore = value; exports.getRuleCountByTriggerType = getRuleCountByTriggerType; exports.useSyncAutomodRules = closure; 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 = env0_4; const [property, env0_1] = env0_2(binding.useState(false), 2); const value5 = env0_2(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 env0_3 = property3; const items2 = [property]; binding = env0_4; const useCallback = binding.useCallback; items2[1] = Reflect.apply(useCallback, binding, [env0_3(_fun122539), [a0, property3, property2]]); return items2; } 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 object2 = {'rules': null, 'fetching': false, 'error': null}; object2.rules = {}; object2.updateRule = updateRule; object2.removeRule = removeRule; const env0_2 = env0_3(_fun122551); object2.syncRules = syncRules; return object2; } 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 = env0_2(useSyncAutomodRules(a0), 2); const property = value3[0]; const property2 = value3[1]; env0_4.useEffect(_fun122559, [a0, property2]); return [property, property2]; } 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, (require(3769) /* metro dependency 3769 */).shallow); } 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 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 items; 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 { items = []; value = arraySpread(items, value2, 0, r6); items[value] = a0; value + 1; } value = environment.__proto__; (require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun122545); } 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__; (require(690) /* metro dependency 690: ReactBatchUpdatesNative */).batchUpdates(_fun122549); } 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 _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 _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}; } 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 object = {}; copyDataProperties(object, rules, undefined); const guildIdBinding = guildId; const object4 = {}; copyDataProperties(object4, env0_5, undefined); object4[triggerType] = env0_6; object[guildIdBinding] = object4; binding({rules: object, error: null}); } 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 = env0_3[value] ?? []; a0[value] = r4.filter(_fun122548); return a0; } 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 object = {}; copyDataProperties(object, rules, undefined); object[require] = env0_4; binding({rules: object, error: null}); } 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 object2 = {}; const binding = env3_5; const KEYWORD = binding.KEYWORD; object2[KEYWORD] = []; const ML_SPAM = binding.ML_SPAM; object2[ML_SPAM] = []; const DEFAULT_KEYWORD_LIST = binding.DEFAULT_KEYWORD_LIST; object2[DEFAULT_KEYWORD_LIST] = []; const MENTION_SPAM = binding.MENTION_SPAM; object2[MENTION_SPAM] = []; const USER_PROFILE = binding.USER_PROFILE; object2[USER_PROFILE] = []; const SERVER_POLICY = binding.SERVER_POLICY; object2[SERVER_POLICY] = []; a0.forEach(_fun122553); return object2; } 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 object = {}; copyDataProperties(object, rules, undefined); object[env0_0] = env0_1; require({rules: object, 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* _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 _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); } }