/* Metro module 10289; source: modules/guild_member/GuildMemberUtils.tsx; dependencies: [1945, 1867, 3784, 1878, 3772, 661, 566, 21, 1391, 2] */ function _fun79812(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#79812, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:6, offset: 0x01e63a67, size: 396 bytes, params: 8, frame: 26 let env0_0 = require; const closure = getGuildMemberAgeInRange; const closure2 = useGuildMemberAgeInRange; const closure3 = canKickMember; const closure4 = hasKickMemberPerms; const closure5 = canBanMember; const closure6 = hasBanMemberPerms; const closure7 = canManageMessages; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const guildMemberStore = importDefault(1945) /* metro dependency 1945: GuildMemberStore */; const guildStore = importDefault(1867) /* metro dependency 1867: GuildStore */; const permissionStore = importDefault(3784) /* metro dependency 3784: PermissionStore */; const userStore = importDefault(1878) /* metro dependency 1878: UserStore */; const env0_7 = (require(3772) /* metro dependency 3772: GuildMemberConstants */).GuildMemberFlags; const env0_8 = (require(661) /* metro dependency 661: Constants */).Permissions; (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guild_member/GuildMemberUtils.tsx'); exports.getGuildMemberAgeInRange = closure; exports.useGuildMemberAgeInRange = closure2; exports.useNewMemberBadge = useNewMemberBadge; exports.useCanKickMember = function(a0, a1) { var env0_0 = a0; var env0_1 = a1; return require(dependencyMap[6]).useStateFromStores([PermissionStore], _fun79826); }; exports.canKickMember = closure3; exports.hasKickMemberPerms = closure4; exports.useCanBanMember = useCanBanMember; exports.canBanMember = closure5; exports.hasBanMemberPerms = closure6; exports.useCanManageMessages = function(a0, a1) { var env0_0 = a0; var env0_1 = a1; return require(dependencyMap[6]).useStateFromStores([PermissionStore], _fun79830); }; exports.canManageMessages = closure7; } function getGuildMemberAgeInRange(a0, {maxDaysOld, minDaysOld}, a2) { // fn#79813, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:193, offset: 0x01e63bf3, size: 220 bytes, params: 4, frame: 19 var r6; var member; let value = undefined; minDaysOld = minDaysOld === value ? 0 : minDaysOld; const guild = GuildStore.getGuild(a0); if (a2 == null) { r6 = guild == null ? value : guild.joinedAt; } else { member = GuildMemberStore.getMember(a0, a2); r6 = (member == null ? value : member.joinedAt) == null ? null : new global.Date(member.joinedAt); } if (r6 == null) { return false; } const Date = global.Date; value = Date.now(); const getTime = r6.getTime; value -= Reflect.apply(getTime, r6, []); return (maxDaysOld == null || value <= env0_9 * maxDaysOld) && value >= env0_9 * minDaysOld; } function useGuildMemberAgeInRange(a0, a1, a2) { // fn#79814, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:488, offset: 0x01e63ccf, size: 89 bytes, params: 4, frame: 17 const env0_0 = a0; const env0_1 = a1; const env0_2 = a2; return (require(566) /* metro dependency 566: flux */).useStateFromStores([], _fun79815, [a1, a0, a2]); } function canKickMember(a0, a1) { // fn#79816, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:613, offset: 0x01e63d49, size: 109 bytes, params: 3, frame: 18 let value = a2; const value2 = undefined; const iterator = (value !== value2 ? value : [PermissionStore])[Symbol.iterator](); let item2 = iterator.next(); const item = item2.value; item2 = item2.done ? undefined : iterator; value = item2 === value2; const r6 = value ? value2 : item; if (!value) { item2.return(); } return a1 != null && hasKickMemberPerms(a0, a1, [r6]) && !a0.isProvisional; } function hasKickMemberPerms(a0, a1) { // fn#79817, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:711, offset: 0x01e63db6, size: 117 bytes, params: 3, frame: 17 let value = a2; const value2 = undefined; const iterator = (value !== value2 ? value : [PermissionStore])[Symbol.iterator](); let item2 = iterator.next(); const item = item2.value; item2 = item2.done ? undefined : iterator; value = item2 === value2; const r4 = value ? value2 : item; if (!value) { item2.return(); } return a1 != null && r4.canManageUser(Permissions.KICK_MEMBERS, a0, a1) && !a0.isNonUserBot(); } function canBanMember(a0, a1) { // fn#79818, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:823, offset: 0x01e63e2b, size: 109 bytes, params: 3, frame: 18 let value = a2; const value2 = undefined; const iterator = (value !== value2 ? value : [PermissionStore])[Symbol.iterator](); let item2 = iterator.next(); const item = item2.value; item2 = item2.done ? undefined : iterator; value = item2 === value2; const r6 = value ? value2 : item; if (!value) { item2.return(); } return a1 != null && hasBanMemberPerms(a0, a1, [r6]) && !a0.isProvisional; } function hasBanMemberPerms(a0, a1) { // fn#79819, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:919, offset: 0x01e63e98, size: 129 bytes, params: 3, frame: 17 let value = a2; const value2 = undefined; const iterator = (value !== value2 ? value : [PermissionStore])[Symbol.iterator](); let item2 = iterator.next(); const item = item2.value; item2 = item2.done ? undefined : iterator; value = item2 === value2; const r4 = value ? value2 : item; if (!value) { item2.return(); } return a1 != null && r4.canManageUser(Permissions.BAN_MEMBERS, a0, a1) && !a0.isNonUserBot() && !a0.bot; } function canManageMessages(a0, a1) { // fn#79820, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1037, offset: 0x01e63f19, size: 124 bytes, params: 3, frame: 17 let value = a2; const value2 = undefined; const iterator = (value !== value2 ? value : [PermissionStore])[Symbol.iterator](); let item2 = iterator.next(); const item = item2.value; item2 = item2.done ? undefined : iterator; value = item2 === value2; const r4 = value ? value2 : item; if (!value) { item2.return(); } return a0 != null && a1 != null && r4.canManageUser(Permissions.MANAGE_MESSAGES, a0, a1) && !a0.isNonUserBot(); } function useNewMemberBadge(a0, a1) { // fn#79821, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1359, offset: 0x01e63f95, size: 190 bytes, params: 3, frame: 23 const env0_0 = a0; const env0_1 = a1; return useGuildMemberAgeInRange(a0, {maxDaysOld: 7}, a1) && !(require(566) /* metro dependency 566: flux */).useStateFromStores([GuildStore], _fun79823) && !(require(566) /* metro dependency 566: flux */).useStateFromStores([UserStore], _fun79824) && !(require(566) /* metro dependency 566: flux */).useStateFromStores([GuildMemberStore], _fun79822); } function useCanKickMember(a0, a1) { // fn#79825, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1863, offset: 0x01e6414e, size: 73 bytes, params: 3, frame: 14 const env0_0 = a0; const env0_1 = a1; return (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], _fun79826); } function useCanBanMember(a0, a1) { // fn#79827, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:2051, offset: 0x01e641c0, size: 65 bytes, params: 3, frame: 13 const env0_0 = a0; const env0_1 = a1; return (require(566) /* metro dependency 566: flux */).useStateFromStores([], _fun79828); } function useCanManageMessages(a0, a1) { // fn#79829, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:2233, offset: 0x01e6421d, size: 73 bytes, params: 3, frame: 14 const env0_0 = a0; const env0_1 = a1; return (require(566) /* metro dependency 566: flux */).useStateFromStores([PermissionStore], _fun79830); } function _fun79815() { // fn#79815, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:567, offset: 0x01e63d28, size: 33 bytes, params: 1, frame: 15 return getGuildMemberAgeInRange(env0_0, require, importDefault); } function _fun79822() { // fn#79822, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1405, offset: 0x01e64053, size: 102 bytes, params: 1, frame: 17 const value2 = undefined; const flagUtilsModule = require(1391) /* metro dependency 1391: FlagUtils */; const hasFlag = flagUtilsModule.hasFlag; const member = GuildMemberStore.getMember(env0_0, require); const r1 = (member == null ? value2 : member.flags) ?? 0; const DID_REJOIN = GuildMemberFlags.DID_REJOIN; return Reflect.apply(hasFlag, flagUtilsModule, [r1, DID_REJOIN]); } function _fun79823() { // fn#79823, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1548, offset: 0x01e640b9, size: 105 bytes, params: 1, frame: 13 var r0; var Date; let value = environment.__proto__; const guild = GuildStore.getGuild(env0_0); const value4 = guild != null; if (value4) { value = importDefault(21) /* metro dependency 21: SnowflakeUtils */; value = value.extractTimestamp(guild.id); Date = global.Date; value = Date.now() - value; value = value < 604800000; r0 = value; } else { r0 = value4; } return r0; } function _fun79824() { // fn#79824, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1722, offset: 0x01e64122, size: 44 bytes, params: 1, frame: 11 const value = environment.__proto__; return UserStore.getUser(require)?.bot; } function _fun79826() { // fn#79826, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:1933, offset: 0x01e64197, size: 41 bytes, params: 1, frame: 15 return canKickMember(env0_0, require, [PermissionStore]); } function _fun79828() { // fn#79828, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:2119, offset: 0x01e64201, size: 28 bytes, params: 1, frame: 13 return canBanMember(env0_0, require); } function _fun79830() { // fn#79830, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:10475:2307, offset: 0x01e64266, size: 41 bytes, params: 1, frame: 15 return canManageMessages(env0_0, require, [PermissionStore]); }