2026-07-20 16:05:17 +00:00
// Module ID: 1917
2026-07-24 07:16:23 +00:00
// Function ID: 21604
2026-07-20 16:05:17 +00:00
// Name: _isNativeReflectConstruct
2026-07-23 10:11:24 +00:00
// Dependencies: [6, 7, 15, 17, 18, 1918, 1909, 1194, 1348, 1910, 1838, 3746, 3, 3747, 1912, 1360, 21, 1828, 1829, 1860, 1327, 1880, 22, 3748, 566, 686, 2]
2026-07-20 16:05:17 +00:00
// Exports: getUserCommunicationDisabledVersion
// Module 1917 (_isNativeReflectConstruct)
2026-07-23 10:11:24 +00:00
import _isNativeReflectConstruct from "_isNativeReflectConstruct" ;
import closure_4 from "_isNativeReflectConstruct" ;
import hasFlag from "hasFlag" ;
import parseAvatarDecorationData from "parseAvatarDecorationData" ;
import parseSkuIdFromServerData from "parseSkuIdFromServerData" ;
import { clearCommunicationDisabledNotice as closure_8 } from "DISMISSED_COMMUNICATION_DISABLED_NOTIFICATION_GUILDS_KEY" ;
import closure_9 from "_isNativeReflectConstruct" ;
import closure_10 from "_isNativeReflectConstruct" ;
import closure_11 from "_isNativeReflectConstruct" ;
import _createForOfIteratorHelperLoose from "_createForOfIteratorHelperLoose" ;
import closure_13 from "_createForOfIteratorHelperLoose" ;
import { GuildMemberFlags } from "GuildMemberFlags" ;
import importDefaultResult from "_getPrototypeOf" ;
const require = arg1 ;
2026-07-20 16:05:17 +00:00
function _isNativeReflectConstruct() {
let closure_0 = ! valueOf . call ( Reflect . construct ( Boolean , [ ] , ( ) = > {
} ) ) ;
function _isNativeReflectConstruct() {
return closure_0 ;
}
const result = _isNativeReflectConstruct ( ) ;
}
2026-07-23 10:11:24 +00:00
function _createForOfIteratorHelperLoose ( iterable ) {
let closure_0 = iterable ;
iterable = "undefined" !== typeof Symbol ;
if ( iterable ) {
2026-07-20 16:05:17 +00:00
const _Symbol = Symbol ;
2026-07-23 10:11:24 +00:00
iterable = iterable [ Symbol . iterator ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( ! iterable ) {
iterable = iterable [ Symbol . iterator ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( iterable ) {
const iter = iterable . call ( iterable ) ;
2026-07-20 16:05:17 +00:00
const next = iter . next ;
return next . bind ( iter ) ;
} else {
const _Array = Array ;
2026-07-23 10:11:24 +00:00
let tmp = iterable ;
if ( ! Array . isArray ( iterable ) ) {
2026-07-20 16:05:17 +00:00
let tmp2 ;
2026-07-23 10:11:24 +00:00
if ( iterable ) {
if ( "string" === typeof iterable ) {
tmp2 = _arrayLikeToArray ( iterable , undefined ) ;
2026-07-20 16:05:17 +00:00
} else {
const toString = { } . toString ;
2026-07-23 10:11:24 +00:00
const substr = toString . call ( iterable ) . slice ( 8 , - 1 ) ;
2026-07-20 16:05:17 +00:00
let name = substr ;
if ( tmp3 ) {
2026-07-23 10:11:24 +00:00
name = iterable . constructor . name ;
2026-07-20 16:05:17 +00:00
}
if ( "Map" !== name ) {
if ( "Set" !== name ) {
if ( "Arguments" === name ) {
2026-07-23 10:11:24 +00:00
let arr = _arrayLikeToArray ( iterable , undefined ) ;
2026-07-20 16:05:17 +00:00
} else {
2026-07-23 10:11:24 +00:00
let obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/ ;
2026-07-20 16:05:17 +00:00
}
}
tmp2 = arr ;
}
const _Array2 = Array ;
2026-07-23 10:11:24 +00:00
arr = Array . from ( iterable ) ;
const callResult = toString . call ( iterable ) ;
tmp3 = "Object" === substr && iterable . constructor ;
2026-07-20 16:05:17 +00:00
}
}
tmp = tmp2 ;
if ( ! tmp2 ) {
const _TypeError = TypeError ;
const typeError = new TypeError ( "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method." ) ;
throw typeError ;
}
}
if ( tmp ) {
2026-07-23 10:11:24 +00:00
closure_0 = tmp ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
let c1 = 0 ;
2026-07-20 16:05:17 +00:00
return ( ) = > {
2026-07-23 10:11:24 +00:00
if ( closure_1 >= length . length ) {
2026-07-20 16:05:17 +00:00
let obj = { done : true } ;
} else {
obj = { done : false } ;
closure_1 = tmp3 + 1 ;
2026-07-23 10:11:24 +00:00
obj . value = length [ + closure_1 ] ;
2026-07-20 16:05:17 +00:00
}
return obj ;
} ;
}
}
function _arrayLikeToArray ( arg0 , arg1 ) {
let length ;
if ( tmp ) {
length = arg0 . length ;
}
const ArrayResult = Array ( length ) ;
for ( let num = 0 ; num < length ; num = num + 1 ) {
ArrayResult [ num ] = arg0 [ num ] ;
}
return ArrayResult ;
}
2026-07-23 10:11:24 +00:00
function trackCommunicationDisabled ( guildId , tmp4Result ) {
if ( null != tmp4Result . communicationDisabledUntil ) {
if ( obj2 . isMemberCommunicationDisabled ( tmp4Result ) ) {
const tmp2 = getCommunicationDisabledUserKey ( guildId , tmp4Result . userId ) ;
let result = dependencyMap2 [ tmp2 ] !== tmp4Result . communicationDisabledUntil ;
2026-07-20 16:05:17 +00:00
if ( result ) {
2026-07-23 10:11:24 +00:00
result = require ( 3747 ) /* isCommunicationDisabled */ . isMemberCommunicationDisabled ( tmp4Result ) ;
const obj = require ( 3747 ) /* isCommunicationDisabled */ ;
2026-07-20 16:05:17 +00:00
}
if ( result ) {
2026-07-23 10:11:24 +00:00
dependencyMap2 [ tmp2 ] = tmp4Result . communicationDisabledUntil ;
2026-07-20 16:05:17 +00:00
incrementCommunicationDisabledVersion ( tmp2 ) ;
}
}
2026-07-23 10:11:24 +00:00
obj2 = require ( 3747 ) /* isCommunicationDisabled */ ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
removeCommunicationDisabled ( guildId , tmp4Result . userId ) ;
2026-07-20 16:05:17 +00:00
}
function removeCommunicationDisabled ( id , userId ) {
if ( null != userId ) {
const tmp7 = getCommunicationDisabledUserKey ( id , userId ) ;
2026-07-23 10:11:24 +00:00
if ( null != dependencyMap2 [ tmp7 ] ) {
2026-07-20 16:05:17 +00:00
incrementCommunicationDisabledVersion ( tmp7 ) ;
}
_removeCommunicationDisabledFromMap ( getCommunicationDisabledUserKey ( id , userId ) ) ;
} else {
for ( const key10006 in closure_20 ) {
let tmp14 = key10006 ;
2026-07-23 10:11:24 +00:00
let tmp15 = getGuildIdFromCommunicationDisabledUserKey ;
if ( getGuildIdFromCommunicationDisabledUserKey ( key10006 ) !== arg0 ) {
2026-07-20 16:05:17 +00:00
continue ;
} else {
2026-07-23 10:11:24 +00:00
let tmp2 = incrementCommunicationDisabledVersion ;
let tmp3 = incrementCommunicationDisabledVersion ( key10006 ) ;
let tmp4 = _removeCommunicationDisabledFromMap ;
let tmp5 = _removeCommunicationDisabledFromMap ( key10006 ) ;
continue ;
2026-07-20 16:05:17 +00:00
}
continue ;
}
}
}
2026-07-23 10:11:24 +00:00
function incrementCommunicationDisabledVersion ( key10006 ) {
const sum = c22 + 1 ;
c22 = sum ;
closure_24 [ key10006 ] = sum ;
2026-07-20 16:05:17 +00:00
}
function _removeCommunicationDisabledFromMap ( communicationDisabledUserKey ) {
2026-07-23 10:11:24 +00:00
if ( tmp3 === store2 . getId ( ) ) {
2026-07-20 16:05:17 +00:00
callback3 ( getGuildIdFromCommunicationDisabledUserKey ( communicationDisabledUserKey ) ) ;
}
2026-07-23 10:11:24 +00:00
delete tmp [ tmp2 ] ;
2026-07-20 16:05:17 +00:00
}
function getCommunicationDisabledUserKey ( guildId , userId ) {
const items = [ ] ;
items [ constants . GUILD ] = guildId ;
items [ constants . USER ] = userId ;
return items . join ( "-" ) ;
}
function getUserIdFromCommunicationDisabledUserKey ( communicationDisabledUserKey ) {
2026-07-23 10:11:24 +00:00
return communicationDisabledUserKey . split ( "-" ) [ constants . USER ] ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
function getGuildIdFromCommunicationDisabledUserKey ( key10006 ) {
return key10006 . split ( "-" ) [ constants . GUILD ] ;
2026-07-20 16:05:17 +00:00
}
function computeDerivedMemberState ( unsafeMutableRoles , roles ) {
let iter ;
if ( 0 === roles . length ) {
2026-07-23 10:11:24 +00:00
let obj = { colorString : null , colorStrings : null , colorRoleId : undefined , hoistRoleId : undefined , iconRoleId : undefined , highestRoleId : undefined } ;
2026-07-20 16:05:17 +00:00
return obj ;
} else {
const tmp40 = _createForOfIteratorHelperLoose ( roles ) ;
const iter3 = tmp40 ( ) ;
let iter2 = iter3 ;
let tmp27 ;
let tmp28 ;
let tmp29 ;
let tmp30 ;
if ( ! iter3 . done ) {
do {
let tmp = unsafeMutableRoles [ iter2 . value ] ;
let tmp2 = tmp23 ;
let tmp3 = tmp24 ;
let tmp4 = tmp25 ;
let tmp5 = tmp26 ;
if ( null != tmp ) {
let doesRoleSortHigherResult = null == tmp26 ;
if ( ! doesRoleSortHigherResult ) {
2026-07-23 10:11:24 +00:00
let tmp6 = require ;
let tmp7 = dependencyMap ;
obj = require ( 1912 ) /* _createForOfIteratorHelperLoose */ ;
2026-07-20 16:05:17 +00:00
doesRoleSortHigherResult = obj . doesRoleSortHigher ( tmp , tmp26 ) ;
}
let tmp9 = tmp26 ;
if ( doesRoleSortHigherResult ) {
tmp9 = tmp ;
}
let tmp10 = tmp . color > 0 ;
if ( tmp10 ) {
let doesRoleSortHigherResult1 = null == tmp23 ;
if ( ! doesRoleSortHigherResult1 ) {
2026-07-23 10:11:24 +00:00
let tmp12 = require ;
let tmp13 = dependencyMap ;
let obj2 = require ( 1912 ) /* _createForOfIteratorHelperLoose */ ;
2026-07-20 16:05:17 +00:00
doesRoleSortHigherResult1 = obj2 . doesRoleSortHigher ( tmp , tmp23 ) ;
}
tmp10 = doesRoleSortHigherResult1 ;
}
let tmp14 = tmp23 ;
if ( tmp10 ) {
tmp14 = tmp ;
}
let hoist = tmp . hoist ;
if ( hoist ) {
let doesRoleSortHigherResult2 = null == tmp24 ;
if ( ! doesRoleSortHigherResult2 ) {
2026-07-23 10:11:24 +00:00
let tmp16 = require ;
let tmp17 = dependencyMap ;
let obj3 = require ( 1912 ) /* _createForOfIteratorHelperLoose */ ;
2026-07-20 16:05:17 +00:00
doesRoleSortHigherResult2 = obj3 . doesRoleSortHigher ( tmp , tmp24 ) ;
}
hoist = doesRoleSortHigherResult2 ;
}
let tmp18 = tmp24 ;
if ( hoist ) {
tmp18 = tmp ;
}
let tmp19 = null != tmp . icon || null != tmp . unicodeEmoji ;
if ( tmp19 ) {
let doesRoleSortHigherResult3 = null == tmp25 ;
if ( ! doesRoleSortHigherResult3 ) {
2026-07-23 10:11:24 +00:00
let tmp21 = require ;
let tmp22 = dependencyMap ;
let obj4 = require ( 1912 ) /* _createForOfIteratorHelperLoose */ ;
2026-07-20 16:05:17 +00:00
doesRoleSortHigherResult3 = obj4 . doesRoleSortHigher ( tmp , tmp25 ) ;
}
tmp19 = doesRoleSortHigherResult3 ;
}
tmp2 = tmp14 ;
tmp3 = tmp18 ;
tmp4 = tmp25 ;
tmp5 = tmp9 ;
if ( tmp19 ) {
tmp2 = tmp14 ;
tmp3 = tmp18 ;
tmp4 = tmp ;
tmp5 = tmp9 ;
}
}
iter = tmp40 ( ) ;
2026-07-23 10:11:24 +00:00
tmp23 = tmp2 ;
tmp24 = tmp3 ;
tmp25 = tmp4 ;
tmp26 = tmp5 ;
2026-07-20 16:05:17 +00:00
iter2 = iter ;
tmp27 = tmp2 ;
tmp28 = tmp3 ;
tmp29 = tmp4 ;
tmp30 = tmp5 ;
} while ( ! iter . done ) ;
}
obj = { } ;
let colorString ;
if ( null != tmp27 ) {
colorString = tmp27 . colorString ;
}
let tmp32 = null ;
if ( null != colorString ) {
tmp32 = colorString ;
}
obj . colorString = tmp32 ;
let colorStrings ;
if ( null != tmp27 ) {
colorStrings = tmp27 . colorStrings ;
}
let tmp34 = null ;
if ( null != colorStrings ) {
tmp34 = colorStrings ;
}
obj . colorStrings = tmp34 ;
let id ;
if ( null != tmp27 ) {
id = tmp27 . id ;
}
obj . colorRoleId = id ;
let id1 ;
if ( null != tmp29 ) {
id1 = tmp29 . id ;
}
obj . iconRoleId = id1 ;
let id2 ;
if ( null != tmp28 ) {
id2 = tmp28 . id ;
}
obj . hoistRoleId = id2 ;
let id3 ;
if ( null != tmp30 ) {
id3 = tmp30 . id ;
}
obj . highestRoleId = id3 ;
return obj ;
}
}
function createMember ( guildRoles ) {
let avatar ;
let avatarDecoration ;
let collectibles ;
let communicationDisabledUntil ;
let displayNameStyles ;
let flags ;
let fullProfileLoadedTimestamp ;
let guildId ;
let isPending ;
let joinedAt ;
let nick ;
let premiumSince ;
let roles ;
let unusualDMActivityUntil ;
let userId ;
( { userId , guildId , roles } = guildRoles ) ;
( { nick , avatar , avatarDecoration , premiumSince , isPending , joinedAt , communicationDisabledUntil , unusualDMActivityUntil , fullProfileLoadedTimestamp , flags , collectibles , displayNameStyles } = guildRoles ) ;
2026-07-23 10:11:24 +00:00
const tmp3 = computeDerivedMemberState ( guildRoles . guildRoles , roles ) ;
let obj = { userId , nick , guildId , avatar , avatarDecoration , roles , colorString : tmp3.colorString , colorStrings : tmp3.colorStrings , colorRoleId : tmp3.colorRoleId , iconRoleId : tmp3.iconRoleId , hoistRoleId : tmp3.hoistRoleId , highestRoleId : tmp3.highestRoleId , premiumSince , isPending , joinedAt , communicationDisabledUntil , unusualDMActivityUntil , fullProfileLoadedTimestamp , flags , collectibles , displayNameStyles } ;
2026-07-20 16:05:17 +00:00
const flags2 = obj . flags ;
let num = 0 ;
if ( null != flags2 ) {
num = flags2 ;
}
if ( obj2 . hasFlag ( num , GuildMemberFlags . IS_GUEST ) ) {
const flags3 = obj . flags ;
let num2 = 0 ;
if ( null != flags3 ) {
num2 = flags3 ;
}
2026-07-23 10:11:24 +00:00
obj . flags = require ( 1360 ) /* hasFlag */ . addFlag ( num2 , GuildMemberFlags . BYPASSES_VERIFICATION ) ;
const obj3 = require ( 1360 ) /* hasFlag */ ;
2026-07-20 16:05:17 +00:00
}
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return obj ;
} else {
if ( userId === store2 . getId ( ) ) {
if ( ! store . isViewingRoles ( guildId ) ) {
if ( ! store . isFullServerPreview ( guildId ) ) {
2026-07-23 10:11:24 +00:00
if ( null != table [ guildId ] ) {
delete tmp [ tmp2 ] ;
2026-07-20 16:05:17 +00:00
}
}
}
const viewingRoles = store . getViewingRoles ( guildId ) ;
obj = { } ;
const merged = Object . assign ( obj ) ;
const merged1 = Object . assign ( store . getMemberOptions ( guildId ) ) ;
if ( null != viewingRoles ) {
2026-07-23 10:11:24 +00:00
let keys = importDefault ( 21 ) . keys ( viewingRoles ) ;
const obj5 = importDefault ( 21 ) ;
2026-07-20 16:05:17 +00:00
} else {
keys = [ ] ;
}
obj [ "roles" ] = keys ;
2026-07-23 10:11:24 +00:00
table [ guildId ] = obj ;
const tmp12 = table ;
2026-07-20 16:05:17 +00:00
}
return obj ;
}
2026-07-23 10:11:24 +00:00
obj2 = require ( 1360 ) /* hasFlag */ ;
2026-07-20 16:05:17 +00:00
}
function handleCachedGuilds ( guilds ) {
let iter3 ;
const tmp = _createForOfIteratorHelperLoose ( guilds ) ;
const iter = tmp ( ) ;
let iter2 = iter ;
if ( ! iter . done ) {
do {
let value = iter2 . value ;
let tmp3 = tmp2 ;
if ( null != value . member ) {
2026-07-23 10:11:24 +00:00
let tmp11 = table2 ;
let tmp12 = table2 ;
if ( null == table2 [ value . id ] ) {
2026-07-20 16:05:17 +00:00
let member = value . member ;
} else {
member = { } ;
let tmp4 = member ;
let merged = Object . assign ( value . member ) ;
member [ "roles" ] = value . member . roles ;
}
tmp12 [ value . id ] = member ;
2026-07-23 10:11:24 +00:00
let tmp6 = dependencyMap ;
2026-07-20 16:05:17 +00:00
tmp3 = tmp2 ;
2026-07-23 10:11:24 +00:00
if ( null != dependencyMap [ value . id ] ) {
let tmp7 = dependencyMap ;
let tmp8 = dependencyMap [ value . id ] ;
2026-07-20 16:05:17 +00:00
tmp3 = tmp8 ;
if ( null != tmp8 [ value . member . userId ] ) {
let obj = { } ;
let tmp9 = obj ;
let merged1 = Object . assign ( tmp8 [ value . member . userId ] ) ;
obj [ "roles" ] = value . member . roles ;
tmp8 [ value . member . userId ] = obj ;
tmp3 = tmp8 ;
}
}
}
iter3 = tmp ( ) ;
2026-07-23 10:11:24 +00:00
tmp2 = tmp3 ;
2026-07-20 16:05:17 +00:00
iter2 = iter3 ;
} while ( ! iter3 . done ) ;
}
}
function handleGuildMemberUpdate ( arg0 ) {
let guildId ;
let user ;
( { guildId , user } = arg0 ) ;
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId + " not found during GUILD_MEMBER_UPDATE." ) ;
return false ;
} else {
2026-07-23 10:11:24 +00:00
const obj = { userId : user.id , nick : tmp , guildId , avatar : tmp2 , avatarDecoration : require ( 1828 ) /* parseAvatarDecorationData */ . parseAvatarDecorationData ( tmp3 ) , guildRoles : store4.getUnsafeMutableRoles ( guild . id ) , roles : tmp4 , premiumSince : tmp5 , isPending : tmp6 , joinedAt : tmp7 , communicationDisabledUntil : tmp8 , unusualDMActivityUntil : tmp9 } ;
2026-07-20 16:05:17 +00:00
let prop ;
if ( null != tmp13 [ user . id ] ) {
prop = tmp26 . fullProfileLoadedTimestamp ;
}
obj . fullProfileLoadedTimestamp = prop ;
obj . flags = tmp10 ;
obj . collectibles = tmp11 ;
obj . displayNameStyles = tmp12 ;
tmp13 [ user . id ] = createMember ( obj ) ;
trackCommunicationDisabled ( guildId , tmp13 [ user . id ] ) ;
}
}
}
2026-07-23 10:11:24 +00:00
function batchUpdateGuildMembers ( guildId , members ) {
let closure_0 = guildId ;
2026-07-20 16:05:17 +00:00
const importDefault = tmp ;
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId + " not found during batchUpdateGuildMembers." ) ;
let flag = false ;
} else {
2026-07-23 10:11:24 +00:00
const item = members . forEach ( ( user ) = > {
const obj = { userId : user.user.id , nick : user.nick , guildId , avatar : user.avatar , avatarDecoration : outer1_42 ( user ) , guildRoles : outer1_12.getUnsafeMutableRoles ( guild . id ) , roles : user.roles , premiumSince : user.premium_since , isPending : user.pending , joinedAt : user.joined_at , communicationDisabledUntil : user.communication_disabled_until , flags : user.flags } ;
2026-07-20 16:05:17 +00:00
let prop ;
if ( null != tmp [ user . user . id ] ) {
prop = tmp2 . fullProfileLoadedTimestamp ;
}
obj . fullProfileLoadedTimestamp = prop ;
let unusual_dm_activity_until = user . unusual_dm_activity_until ;
if ( null == unusual_dm_activity_until ) {
let prop1 ;
if ( null != tmp2 ) {
prop1 = tmp2 . unusualDMActivityUntil ;
}
unusual_dm_activity_until = prop1 ;
}
obj . unusualDMActivityUntil = unusual_dm_activity_until ;
2026-07-23 10:11:24 +00:00
obj . collectibles = guildId ( guild [ 18 ] ) . parseServerUserCollectibles ( user . collectibles ) ;
const obj2 = guildId ( guild [ 18 ] ) ;
const tmp3 = outer1_39 ;
obj . displayNameStyles = guildId ( guild [ 19 ] ) . parseServerDisplayNameStyles ( user . display_name_styles ) ;
2026-07-20 16:05:17 +00:00
tmp [ user . user . id ] = tmp3 ( obj ) ;
2026-07-23 10:11:24 +00:00
outer1_31 ( guildId , tmp [ user . user . id ] ) ;
2026-07-20 16:05:17 +00:00
} ) ;
closure_23 = closure_23 + 1 ;
flag = true ;
}
return flag ;
}
}
function getAvatarDecorationFromServerMember ( guildMember ) {
2026-07-23 10:11:24 +00:00
return require ( 1828 ) /* parseAvatarDecorationData */ . parseAvatarDecorationData ( guildMember . avatar_decoration_data ) ;
2026-07-20 16:05:17 +00:00
}
function _removeMemberFromGuild ( guildId , id ) {
2026-07-23 10:11:24 +00:00
if ( null != dependencyMap [ guildId ] ) {
if ( null != tmp3 [ id ] ) {
delete tmp [ tmp2 ] ;
2026-07-20 16:05:17 +00:00
removeCommunicationDisabled ( guildId , id ) ;
closure_23 = closure_23 + 1 ;
}
}
return false ;
}
function buildMembersFromActivityParticipants ( embeddedActivityLocationGuildId , participants ) {
const obj = { id : embeddedActivityLocationGuildId } ;
2026-07-23 10:11:24 +00:00
const found = participants . filter ( importDefault ( 1880 ) ) ;
2026-07-20 16:05:17 +00:00
obj . members = found . map ( ( member ) = > member . member ) ;
return buildMembers ( obj ) ;
}
function buildMembers ( guild ) {
let iter ;
let unusual_dm_activity_until ;
const id = guild . id ;
2026-07-23 10:11:24 +00:00
if ( ! ( id in dependencyMap ) ) {
dependencyMap [ guild . id ] = { } ;
2026-07-20 16:05:17 +00:00
}
guild = store5 . getGuild ( id ) ;
if ( null == guild ) {
return false ;
} else {
const tmp17 = _createForOfIteratorHelperLoose ( guild . members ) ;
let iter2 = tmp17 ( ) ;
if ( ! iter2 . done ) {
do {
let value = iter2 . value ;
let id2 = value . user . id ;
let tmp3 = tmp15 [ id2 ] ;
let obj = { userId : id2 , nick : value.nick , guildId : guild.id , avatar : value.avatar } ;
2026-07-23 10:11:24 +00:00
let tmp5 = getAvatarDecorationFromServerMember ;
let tmp4 = createMember ;
obj . avatarDecoration = getAvatarDecorationFromServerMember ( value ) ;
let tmp6 = store4 ;
obj . guildRoles = store4 . getUnsafeMutableRoles ( guild . id ) ;
2026-07-20 16:05:17 +00:00
( { roles : obj.roles , premium_since : obj.premiumSince , pending : obj.isPending , joined_at : obj.joinedAt , communication_disabled_until : obj.communicationDisabledUntil } = value ) ;
let prop ;
if ( null != tmp3 ) {
prop = tmp3 . fullProfileLoadedTimestamp ;
}
obj . fullProfileLoadedTimestamp = prop ;
( { flags : obj.flags , unusual_dm_activity_until } = value ) ;
if ( null == unusual_dm_activity_until ) {
let prop1 ;
if ( null != tmp3 ) {
prop1 = tmp3 . unusualDMActivityUntil ;
}
unusual_dm_activity_until = prop1 ;
}
obj . unusualDMActivityUntil = unusual_dm_activity_until ;
2026-07-23 10:11:24 +00:00
let tmp9 = require ;
let tmp10 = dependencyMap ;
let obj2 = require ( 1829 ) /* parseSkuIdFromServerData */ ;
2026-07-20 16:05:17 +00:00
obj . collectibles = obj2 . parseServerUserCollectibles ( value . collectibles ) ;
2026-07-23 10:11:24 +00:00
let obj3 = require ( 1860 ) /* wrapHue */ ;
2026-07-20 16:05:17 +00:00
obj . displayNameStyles = obj3 . parseServerDisplayNameStyles ( value . display_name_styles ) ;
let tmp4Result = tmp4 ( obj ) ;
tmp15 [ id2 ] = tmp4Result ;
2026-07-23 10:11:24 +00:00
let tmp12 = trackCommunicationDisabled ;
let tmp13 = trackCommunicationDisabled ( id , tmp4Result ) ;
2026-07-20 16:05:17 +00:00
iter = tmp17 ( ) ;
iter2 = iter ;
} while ( ! iter . done ) ;
}
return true ;
}
}
function handleGuildRoleUpdateOrDelete ( guildId ) {
2026-07-23 10:11:24 +00:00
let closure_0 = guildId ;
if ( null == dependencyMap [ guildId . guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId . guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId . guildId + " not found during " + guildId . type + "." ) ;
return false ;
} else {
const id = store2 . getId ( ) ;
2026-07-23 10:11:24 +00:00
const tmp18 = _createForOfIteratorHelperLoose ( importDefault ( 21 ) . keys ( tmp ) ) ;
2026-07-20 16:05:17 +00:00
let iter2 = tmp18 ( ) ;
if ( ! iter2 . done ) {
while ( true ) {
let value = iter2 . value ;
let tmp2 = tmp [ value ] ;
if ( null == tmp2 . roles ) {
let iter = tmp18 ( ) ;
iter2 = iter ;
if ( iter . done ) {
break ;
}
}
if ( value === id ) {
if ( "GUILD_ROLE_DELETE" === guildId . type ) {
let roles = tmp2 . roles ;
2026-07-23 10:11:24 +00:00
roles = roles . filter ( ( arg0 ) = > arg0 !== guildId . roleId ) ;
2026-07-20 16:05:17 +00:00
let obj = { userId : value , nick : tmp2.nick , guildId : guildId.guildId } ;
( { avatar : obj.avatar , avatarDecoration : obj.avatarDecoration } = tmp2 ) ;
let tmp4 = store4 ;
let tmp3 = createMember ;
obj . guildRoles = store4 . getUnsafeMutableRoles ( guild . id ) ;
obj . roles = roles ;
( { premiumSince : obj.premiumSince , isPending : obj.isPending , joinedAt : obj.joinedAt , flags : obj.flags } = tmp2 ) ;
let prop ;
if ( null != tmp2 ) {
prop = tmp2 . fullProfileLoadedTimestamp ;
}
obj . fullProfileLoadedTimestamp = prop ;
( { collectibles : obj.collectibles , displayNameStyles : obj.displayNameStyles } = tmp2 ) ;
tmp [ value ] = tmp3 ( obj ) ;
let tmp6 = trackCommunicationDisabled ;
let tmp7 = trackCommunicationDisabled ( guildId . guildId , tmp [ value ] ) ;
}
}
roles = tmp2 . roles ;
}
}
}
}
}
function handleImpersonateUpdate ( guildId ) {
guildId = guildId . guildId ;
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId + " not found during IMPERSONATE_UPDATE." ) ;
return false ;
} else {
const id = store2 . getId ( ) ;
const obj = { userId : id , nick : tmp [ id ] . nick , guildId } ;
( { avatar : obj.avatar , avatarDecoration : obj.avatarDecoration } = tmp [ id ] ) ;
obj . guildRoles = store4 . getUnsafeMutableRoles ( guild . id ) ;
( { roles : obj.roles , premiumSince : obj.premiumSince , isPending : obj.isPending , joinedAt : obj.joinedAt , communicationDisabledUntil : obj.communicationDisabledUntil , fullProfileLoadedTimestamp : obj.fullProfileLoadedTimestamp , flags : obj.flags , collectibles : obj.collectibles , displayNameStyles : obj.displayNameStyles } = tmp [ id ] ) ;
tmp [ id ] = createMember ( obj ) ;
}
}
}
function processResolvedMembers ( resolved , id ) {
2026-07-23 10:11:24 +00:00
let closure_0 = resolved ;
2026-07-20 16:05:17 +00:00
let members ;
if ( null != resolved ) {
members = resolved . members ;
}
let tmp2 = null != members && null != id ;
if ( tmp2 ) {
2026-07-23 10:11:24 +00:00
let obj = { id } ;
2026-07-20 16:05:17 +00:00
const _Object = Object ;
const entries = Object . entries ( resolved . members ) ;
const mapped = entries . map ( ( arg0 ) = > {
let tmp ;
let tmp2 ;
[ tmp , tmp2 ] = arg0 ;
let tmp3 ;
2026-07-23 10:11:24 +00:00
if ( null != users ) {
users = users . users ;
2026-07-20 16:05:17 +00:00
if ( null != users ) {
tmp3 = users [ tmp ] ;
}
}
if ( null != tmp3 ) {
const obj = { } ;
const merged = Object . assign ( tmp2 ) ;
obj [ "user" ] = tmp3 ;
return obj ;
}
} ) ;
obj . members = mapped . filter ( ( arg0 ) = > null != arg0 ) ;
tmp2 = buildMembers ( obj ) ;
}
return tmp2 ;
}
function processMessageResolvedMembers ( message , guildId ) {
2026-07-23 10:11:24 +00:00
let closure_0 = message ;
let c1 = false ;
2026-07-20 16:05:17 +00:00
const message_snapshots = message . message_snapshots ;
if ( null != message_snapshots ) {
const item = message_snapshots . forEach ( ( message ) = > {
message = message . message ;
let resolved ;
if ( null != message ) {
resolved = message . resolved ;
}
const message_reference = message . message_reference ;
let guild_id ;
if ( null != message_reference ) {
guild_id = message_reference . guild_id ;
}
2026-07-23 10:11:24 +00:00
if ( outer1_46 ( resolved , guild_id ) ) {
let c1 = true ;
2026-07-20 16:05:17 +00:00
}
} ) ;
}
2026-07-23 10:11:24 +00:00
return processResolvedMembers ( message . resolved , guildId ) || c1 ;
2026-07-20 16:05:17 +00:00
}
function handleIncomingMessage ( message ) {
return processMessageResolvedMembers ( message . message , message . guildId ) ;
}
function mergeMessageResolvedMembers ( channel_id ) {
const channel = store3 . getChannel ( channel_id . channel_id ) ;
let guild_id ;
if ( null != channel ) {
guild_id = channel . guild_id ;
}
processMessageResolvedMembers ( channel_id , guild_id ) ;
}
function handleLoadMessages ( messages ) {
messages = messages . messages ;
const item = messages . forEach ( ( arg0 ) = > {
2026-07-23 10:11:24 +00:00
outer1_48 ( arg0 ) ;
2026-07-20 16:05:17 +00:00
} ) ;
}
function handleLoadSearchResults ( data ) {
data = data . data ;
const items = [ ] ;
2026-07-23 10:11:24 +00:00
let item = data . forEach ( ( messages ) = > {
2026-07-20 16:05:17 +00:00
messages = messages . messages ;
2026-07-23 10:11:24 +00:00
let item = messages . forEach ( ( arr ) = > {
2026-07-20 16:05:17 +00:00
const item = arr . forEach ( ( arg0 ) = > {
2026-07-23 10:11:24 +00:00
outer2_0 . push ( arg0 ) ;
2026-07-20 16:05:17 +00:00
} ) ;
} ) ;
} ) ;
handleLoadMessages ( { messages : items } ) ;
}
importDefaultResult = new importDefaultResult ( "GuildMemberStore" ) ;
let closure_16 = { } ;
let closure_17 = { } ;
let closure_18 = { } ;
let closure_19 = { } ;
let closure_20 = { } ;
2026-07-23 10:11:24 +00:00
let c21 = false ;
let c22 = 0 ;
let c23 = 0 ;
2026-07-20 16:05:17 +00:00
let closure_24 = { } ;
let closure_25 = { } ;
let closure_26 = { added : [ ] , removed : [ ] } ;
let closure_27 = { GUILD : 0 , [ 0 ] : "GUILD" , USER : 1 , [ 1 ] : "USER" } ;
2026-07-23 10:11:24 +00:00
let tmp4 = ( ( Store ) = > {
2026-07-20 16:05:17 +00:00
class GuildMemberStore {
constructor ( ) {
self = this ;
2026-07-23 10:11:24 +00:00
tmp = outer1_3 ( this , GuildMemberStore ) ;
obj = outer1_6 ( GuildMemberStore ) ;
tmp2 = outer1_5 ;
if ( outer1_28 ( ) ) {
2026-07-20 16:05:17 +00:00
tmp6 = globalThis ;
_Reflect = Reflect ;
2026-07-23 10:11:24 +00:00
tmp7 = outer1_6 ;
2026-07-20 16:05:17 +00:00
tmp8 = arguments ;
2026-07-23 10:11:24 +00:00
constructResult = Reflect . construct ( obj , arguments , outer1_6 ( self ) . constructor ) ;
2026-07-20 16:05:17 +00:00
} else {
tmp3 = arguments ;
tmp4 = arguments ;
constructResult = obj ( . . . arguments ) ;
}
return tmp2 ( self , constructResult ) ;
}
}
callback2 ( GuildMemberStore , Store ) ;
let obj = {
key : "initialize" ,
value() {
2026-07-23 10:11:24 +00:00
this . waitFor ( outer1_10 , outer1_11 , outer1_12 , outer1_13 , outer1_9 ) ;
2026-07-20 16:05:17 +00:00
}
} ;
2026-07-23 10:11:24 +00:00
let items = [ obj , , , , , , , , , , , , , , , , , , , , ] ;
2026-07-20 16:05:17 +00:00
obj = {
key : "getMutableAllGuildsAndMembers" ,
value() {
2026-07-23 10:11:24 +00:00
return outer1_16 ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 1 ] = obj ;
obj = {
key : "memberOf" ,
value ( arg0 ) {
2026-07-23 10:11:24 +00:00
let closure_0 = arg0 ;
const obj = outer1_1 ( outer1_2 [ 22 ] ) ( outer1_16 ) ;
const found = outer1_1 ( outer1_2 [ 22 ] ) ( outer1_16 ) . toPairs ( ) . filter ( ( arg0 ) = > {
2026-07-20 16:05:17 +00:00
let tmp ;
[ , tmp ] = arg0 ;
return null != tmp [ closure_0 ] ;
} ) ;
2026-07-23 10:11:24 +00:00
const toPairsResult = outer1_1 ( outer1_2 [ 22 ] ) ( outer1_16 ) . toPairs ( ) ;
2026-07-20 16:05:17 +00:00
return found . map ( ( arg0 ) = > {
let tmp ;
[ tmp ] = arg0 ;
return tmp ;
} ) . value ( ) ;
}
} ;
items [ 2 ] = obj ;
items [ 3 ] = {
key : "getNicknameGuildsMapping" ,
value ( arg0 ) {
const obj = { } ;
2026-07-23 10:11:24 +00:00
for ( const key10006 in outer1_16 ) {
2026-07-20 16:05:17 +00:00
let tmp3 = key10006 ;
2026-07-23 10:11:24 +00:00
let tmp4 = outer1_16 ;
let tmp5 = outer1_16 [ key10006 ] [ arg0 ] ;
2026-07-20 16:05:17 +00:00
let nick ;
if ( null != tmp5 ) {
nick = tmp5 . nick ;
}
if ( null == nick ) {
continue ;
} else {
let _Object = Object ;
if ( ! hasOwnProperty . call ( obj , nick ) ) {
obj [ nick ] = [ ] ;
}
let arr = obj [ nick ] ;
arr = arr . push ( key10006 ) ;
2026-07-23 10:11:24 +00:00
continue ;
2026-07-20 16:05:17 +00:00
}
continue ;
}
return obj ;
}
} ;
items [ 4 ] = {
key : "getNicknames" ,
value ( arg0 ) {
return Object . keys ( this . getNicknameGuildsMapping ( arg0 ) ) ;
}
} ;
items [ 5 ] = {
key : "isMember" ,
value ( arg0 , arg1 ) {
if ( null != arg0 ) {
if ( null != arg1 ) {
2026-07-23 10:11:24 +00:00
return null != outer1_16 [ arg0 ] && null != outer1_16 [ arg0 ] [ arg1 ] ;
2026-07-20 16:05:17 +00:00
}
}
return false ;
}
} ;
items [ 6 ] = {
key : "isGuestOrLurker" ,
value ( arg0 , arg1 ) {
if ( null != arg0 ) {
if ( null != arg1 ) {
let tmp3 = null != tmp2 ;
if ( tmp3 ) {
let joinedAt ;
if ( null != tmp2 [ arg1 ] ) {
joinedAt = tmp4 . joinedAt ;
}
tmp3 = null == joinedAt ;
}
return tmp3 ;
}
}
return false ;
}
} ;
items [ 7 ] = {
key : "isCurrentUserGuest" ,
value ( arg0 ) {
if ( null == arg0 ) {
return false ;
} else {
2026-07-23 10:11:24 +00:00
const id = outer1_10 . getId ( ) ;
if ( null != outer1_16 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
if ( null != tmp4 [ id ] ) {
const flags = tmp4 [ id ] . flags ;
let hasFlagResult = null != flags ;
if ( hasFlagResult ) {
2026-07-23 10:11:24 +00:00
hasFlagResult = GuildMemberStore ( outer1_2 [ 15 ] ) . hasFlag ( flags , outer1_14 . IS_GUEST ) ;
const obj = GuildMemberStore ( outer1_2 [ 15 ] ) ;
2026-07-20 16:05:17 +00:00
}
return hasFlagResult ;
}
}
return false ;
}
}
} ;
items [ 8 ] = {
key : "getMemberIds" ,
value ( arg0 ) {
if ( null == arg0 ) {
return [ ] ;
} else {
2026-07-23 10:11:24 +00:00
if ( null == outer1_16 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
let items = [ ] ;
} else {
2026-07-23 10:11:24 +00:00
items = outer1_1 ( outer1_2 [ 16 ] ) . keys ( tmp2 ) ;
const obj = outer1_1 ( outer1_2 [ 16 ] ) ;
2026-07-20 16:05:17 +00:00
}
return items ;
}
}
} ;
items [ 9 ] = {
key : "getMembers" ,
value ( arg0 ) {
if ( null == arg0 ) {
return [ ] ;
} else {
2026-07-23 10:11:24 +00:00
if ( null == outer1_16 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
let items = [ ] ;
} else {
const _Object = Object ;
items = Object . values ( tmp2 ) ;
}
return items ;
}
}
} ;
items [ 10 ] = {
key : "getTrueMember" ,
value ( arg0 , arg1 ) {
let tmp2 = null ;
2026-07-23 10:11:24 +00:00
if ( null != outer1_16 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
tmp2 = tmp [ arg1 ] ;
}
return tmp2 ;
}
} ;
items [ 11 ] = {
key : "getMember" ,
value ( arg0 , arg1 ) {
const trueMember = this . getTrueMember ( arg0 , arg1 ) ;
let tmp2 = trueMember ;
if ( null != trueMember ) {
tmp2 = trueMember ;
2026-07-23 10:11:24 +00:00
if ( arg1 === outer1_10 . getId ( ) ) {
if ( outer1_9 . isViewingRoles ( arg0 ) ) {
2026-07-20 16:05:17 +00:00
tmp2 = trueMember ;
2026-07-23 10:11:24 +00:00
if ( null != outer1_18 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
tmp2 = tmp7 ;
}
} else {
tmp2 = trueMember ;
}
}
}
return tmp2 ;
}
} ;
items [ 12 ] = {
key : "getSelfMember" ,
value ( guildId ) {
2026-07-23 10:11:24 +00:00
return this . getMember ( guildId , outer1_10 . getId ( ) ) ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 13 ] = {
key : "getSelfMemberJoinedAt" ,
value ( arg0 ) {
const self = this ;
2026-07-23 10:11:24 +00:00
if ( null != outer1_17 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
return tmp ;
} else {
const selfMember = self . getSelfMember ( arg0 ) ;
if ( null != selfMember ) {
if ( null != selfMember . joinedAt ) {
const _Date = Date ;
const date = new Date ( selfMember . joinedAt ) ;
2026-07-23 10:11:24 +00:00
outer1_17 [ arg0 ] = date ;
2026-07-20 16:05:17 +00:00
return date ;
}
}
return null ;
}
}
} ;
items [ 14 ] = {
key : "getCachedSelfMember" ,
value ( arg0 ) {
let tmp2 = null ;
2026-07-23 10:11:24 +00:00
if ( null != outer1_19 [ arg0 ] ) {
2026-07-20 16:05:17 +00:00
tmp2 = tmp ;
}
return tmp2 ;
}
} ;
items [ 15 ] = {
key : "getNick" ,
value ( guildId , id ) {
const self = this ;
if ( null != guildId ) {
if ( null != id ) {
const member = self . getMember ( guildId , id ) ;
let nick = null ;
if ( null != member ) {
nick = member . nick ;
}
return nick ;
}
}
return null ;
}
} ;
items [ 16 ] = {
key : "getCommunicationDisabledUserMap" ,
value() {
2026-07-23 10:11:24 +00:00
return outer1_20 ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 17 ] = {
key : "getCommunicationDisabledVersion" ,
value() {
2026-07-23 10:11:24 +00:00
return outer1_22 ;
2026-07-20 16:05:17 +00:00
}
} ;
items [ 18 ] = {
key : "getPendingRoleUpdates" ,
value ( arg0 ) {
2026-07-23 10:11:24 +00:00
let tmp = outer1_25 [ arg0 ] ;
2026-07-20 16:05:17 +00:00
if ( null == tmp ) {
2026-07-23 10:11:24 +00:00
tmp = outer1_26 ;
2026-07-20 16:05:17 +00:00
}
return tmp ;
}
} ;
items [ 19 ] = {
key : "getMemberRoleWithPendingUpdates" ,
value ( guildId , id ) {
const member = this . getMember ( guildId , id ) ;
let roles ;
if ( null != member ) {
roles = member . roles ;
}
if ( null == roles ) {
roles = [ ] ;
}
let differenceResult = roles ;
2026-07-23 10:11:24 +00:00
if ( null != outer1_25 [ guildId ] ) {
const obj = outer1_1 ( outer1_2 [ 22 ] ) ;
differenceResult = obj . difference ( outer1_1 ( outer1_2 [ 22 ] ) . union ( roles , tmp2 . added ) , tmp2 . removed ) ;
const obj2 = outer1_1 ( outer1_2 [ 22 ] ) ;
2026-07-20 16:05:17 +00:00
}
return differenceResult ;
}
} ;
items [ 20 ] = {
key : "getMemberVersion" ,
value() {
2026-07-23 10:11:24 +00:00
return outer1_23 ;
2026-07-20 16:05:17 +00:00
}
} ;
return callback ( GuildMemberStore , items ) ;
2026-07-23 10:11:24 +00:00
} ) ( require ( "initialize" ) . Store ) ;
2026-07-20 16:05:17 +00:00
tmp4 . displayName = "GuildMemberStore" ;
2026-07-23 10:11:24 +00:00
tmp4 = new tmp4 ( require ( "dispatcher" ) , {
2026-07-20 16:05:17 +00:00
CONNECTION_OPEN : function handleConnectionOpen ( guilds ) {
2026-07-23 10:11:24 +00:00
if ( c21 ) {
c21 = false ;
2026-07-20 16:05:17 +00:00
} else {
let closure_16 = { } ;
let closure_17 = { } ;
}
let closure_20 = { } ;
2026-07-23 10:11:24 +00:00
( function mergeGuildMembers ( guilds ) {
2026-07-20 16:05:17 +00:00
guilds = guilds . guilds ;
const item = guilds . forEach ( ( arg0 ) = > {
2026-07-23 10:11:24 +00:00
outer2_45 ( arg0 ) ;
2026-07-20 16:05:17 +00:00
} ) ;
2026-07-23 10:11:24 +00:00
} ) ( guilds ) ;
2026-07-20 16:05:17 +00:00
} ,
CONNECTION_OPEN_SUPPLEMENTAL : function handleConnectionOpenSupplemental ( guilds ) {
guilds = guilds . guilds ;
2026-07-23 10:11:24 +00:00
let item = guilds . forEach ( ( id ) = > {
2026-07-20 16:05:17 +00:00
id = id . id ;
2026-07-23 10:11:24 +00:00
outer1_45 ( { id , members : id.members } ) ;
2026-07-20 16:05:17 +00:00
const activity_instances = id . activity_instances ;
if ( null != activity_instances ) {
const item = activity_instances . forEach ( ( participants ) = > {
2026-07-23 10:11:24 +00:00
outer2_44 ( id , participants . participants ) ;
2026-07-20 16:05:17 +00:00
} ) ;
}
} ) ;
} ,
OVERLAY_INITIALIZE : function handleInitialize ( guildMembers ) {
2026-07-23 10:11:24 +00:00
const obj = { } ;
2026-07-20 16:05:17 +00:00
const merged = Object . assign ( guildMembers . guildMembers ) ;
let closure_17 = { } ;
} ,
CACHE_LOADED : function handleCacheLoaded ( guildMembers ) {
2026-07-23 10:11:24 +00:00
let c21 = true ;
const obj = { } ;
2026-07-20 16:05:17 +00:00
const merged = Object . assign ( guildMembers . guildMembers ) ;
let closure_17 = { } ;
let closure_19 = { } ;
handleCachedGuilds ( guildMembers . guilds ) ;
} ,
CACHE_LOADED_LAZY : function handleCacheLoadedLazy ( guilds ) {
handleCachedGuilds ( guilds . guilds ) ;
} ,
GUILD_CREATE : function handleGuildCreate ( guild ) {
return buildMembers ( guild . guild ) ;
} ,
GUILD_DELETE : function handleGuildDelete ( guild ) {
2026-07-23 10:11:24 +00:00
delete tmp2 [ tmp ] ;
delete tmp2 [ tmp ] ;
2026-07-20 16:05:17 +00:00
removeCommunicationDisabled ( guild . guild . id ) ;
} ,
GUILD_MEMBER_ADD : handleGuildMemberUpdate ,
GUILD_MEMBER_UPDATE : handleGuildMemberUpdate ,
GUILD_MEMBER_UPDATE_LOCAL : function handleGuildMemberUpdateLocal ( arg0 ) {
let addedRoleIds ;
let flags ;
let guildId ;
let removedRoleIds ;
let roles ;
( { guildId , roles , addedRoleIds , removedRoleIds , flags } = arg0 ) ;
const id = store2 . getId ( ) ;
let tmp3 = null ;
2026-07-23 10:11:24 +00:00
if ( null != dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
tmp3 = tmp2 [ id ] ;
}
if ( null == tmp3 ) {
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
return false ;
} else {
2026-07-23 10:11:24 +00:00
let obj = table4 [ guildId ] ;
2026-07-20 16:05:17 +00:00
if ( null == obj ) {
obj = { } ;
}
obj = { } ;
2026-07-23 10:11:24 +00:00
const obj3 = importDefault ( 22 ) ;
const tmp4 = table4 ;
2026-07-20 16:05:17 +00:00
let added = obj . added ;
if ( null == added ) {
added = [ ] ;
}
let items = removedRoleIds ;
2026-07-23 10:11:24 +00:00
const obj4 = importDefault ( 22 ) ;
2026-07-20 16:05:17 +00:00
if ( null == removedRoleIds ) {
items = [ ] ;
}
2026-07-23 10:11:24 +00:00
obj . added = obj3 . difference ( importDefault ( 22 ) . union ( added , addedRoleIds ) , items ) ;
const unionResult = importDefault ( 22 ) . union ( added , addedRoleIds ) ;
const obj5 = importDefault ( 22 ) ;
2026-07-20 16:05:17 +00:00
let removed = obj . removed ;
if ( null == removed ) {
removed = [ ] ;
}
2026-07-23 10:11:24 +00:00
const obj6 = importDefault ( 22 ) ;
2026-07-20 16:05:17 +00:00
if ( null == addedRoleIds ) {
addedRoleIds = [ ] ;
}
2026-07-23 10:11:24 +00:00
obj . removed = obj5 . difference ( importDefault ( 22 ) . union ( removed , removedRoleIds ) , addedRoleIds ) ;
2026-07-20 16:05:17 +00:00
tmp4 [ guildId ] = obj ;
obj = { userId : id , guildId } ;
( { nick : obj7.nick , avatar : obj7.avatar , avatarDecoration : obj7.avatarDecoration } = tmp3 ) ;
obj . guildRoles = store4 . getUnsafeMutableRoles ( guild . id ) ;
if ( null == roles ) {
roles = tmp3 . roles ;
}
obj . roles = roles ;
( { premiumSince : obj7.premiumSince , isPending : obj7.isPending , joinedAt : obj7.joinedAt } = tmp3 ) ;
if ( null == flags ) {
flags = tmp3 . flags ;
}
obj . flags = flags ;
( { fullProfileLoadedTimestamp : obj7.fullProfileLoadedTimestamp , collectibles : obj7.collectibles , displayNameStyles : obj7.displayNameStyles } = tmp3 ) ;
tmp2 [ id ] = createMember ( obj ) ;
}
}
} ,
GUILD_MEMBERS_CHUNK_BATCH : function handleGuildMembersChunkBatch ( chunks ) {
let iter3 ;
const tmp = _createForOfIteratorHelperLoose ( chunks . chunks ) ;
const iter = tmp ( ) ;
let iter2 = iter ;
let flag = false ;
let flag2 = false ;
if ( ! iter . done ) {
do {
let value = iter2 . value ;
2026-07-23 10:11:24 +00:00
let tmp2 = batchUpdateGuildMembers ;
let tmp3 = batchUpdateGuildMembers ( value . guildId , value . members ) || flag ;
2026-07-20 16:05:17 +00:00
iter3 = tmp ( ) ;
flag = tmp3 ;
iter2 = iter3 ;
flag2 = tmp3 ;
} while ( ! iter3 . done ) ;
}
return flag2 ;
} ,
GUILD_MEMBER_REMOVE : function handleGuildMemberRemove ( guildId ) {
_removeMemberFromGuild ( guildId . guildId , guildId . user . id ) ;
} ,
GUILD_MEMBER_REMOVE_LOCAL : function handleGuildMemberRemoveLocal ( guildId ) {
_removeMemberFromGuild ( guildId . guildId , guildId . userId ) ;
} ,
THREAD_MEMBER_LIST_UPDATE : function handleThreadMemberListUpdate ( members ) {
members = members . members ;
const mapped = members . map ( ( member ) = > member . member ) ;
2026-07-23 10:11:24 +00:00
return batchUpdateGuildMembers ( members . guildId , mapped . filter ( require ( 1327 ) /* isDiscordFrontendDevelopment */ . isNotNullish ) ) ;
2026-07-20 16:05:17 +00:00
} ,
THREAD_MEMBERS_UPDATE : function handleThreadMembersUpdate ( addedMembers ) {
addedMembers = addedMembers . addedMembers ;
let tmp2 = null != addedMembers ;
if ( tmp2 ) {
const mapped = addedMembers . map ( ( member ) = > member . member ) ;
2026-07-23 10:11:24 +00:00
tmp2 = batchUpdateGuildMembers ( tmp , mapped . filter ( require ( 1327 ) /* isDiscordFrontendDevelopment */ . isNotNullish ) ) ;
2026-07-20 16:05:17 +00:00
}
return tmp2 ;
} ,
LOAD_ARCHIVED_THREADS_SUCCESS : function handleLoadArchivedThreadsSuccess ( guildId ) {
return batchUpdateGuildMembers ( guildId . guildId , guildId . owners ) ;
} ,
LOAD_FORUM_POSTS : function handleLoadForumPosts ( threads ) {
const values = Object . values ( threads . threads ) ;
return batchUpdateGuildMembers ( threads . guildId , values . reduce ( ( arr , owner ) = > {
if ( null != owner . owner ) {
arr . push ( owner . owner ) ;
}
let message_snapshots ;
if ( null != owner ) {
const first_message = owner . first_message ;
if ( null != first_message ) {
message_snapshots = first_message . message_snapshots ;
}
}
if ( null != message_snapshots ) {
const first = owner . first_message . message_snapshots [ 0 ] ;
const moderator_report = first . moderator_report ;
let reported_member ;
if ( null != moderator_report ) {
reported_member = moderator_report . reported_member ;
}
if ( null != reported_member ) {
arr . push ( first . moderator_report . reported_member ) ;
}
const moderator_report2 = first . moderator_report ;
let reporting_member ;
if ( null != moderator_report2 ) {
reporting_member = moderator_report2 . reporting_member ;
}
if ( null != reporting_member ) {
arr . push ( first . moderator_report . reporting_member ) ;
}
}
return arr ;
} , [ ] ) ) ;
} ,
GUILD_ROLE_UPDATE : handleGuildRoleUpdateOrDelete ,
GUILD_ROLE_DELETE : handleGuildRoleUpdateOrDelete ,
GUILD_ROLE_MEMBER_REMOVE : function handleGuildMemberRoleRemove ( arg0 ) {
let guildId ;
let roleId ;
let userId ;
( { guildId , userId , roleId } = arg0 ) ;
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId + " not found during GUILD_MEMBER_UPDATE." ) ;
return false ;
} else if ( null == tmp [ userId ] ) {
return false ;
} else {
let roles = tmp16 . roles ;
if ( roles . includes ( roleId ) ) {
roles = tmp16 . roles ;
tmp16 . roles = roles . filter ( ( arg0 ) = > arg0 !== roleId ) ;
const tmp4 = computeDerivedMemberState ( store4 . getUnsafeMutableRoles ( guild . id ) , tmp16 . roles ) ;
const obj = { } ;
const merged = Object . assign ( tmp16 ) ;
const merged1 = Object . assign ( tmp4 ) ;
tmp [ userId ] = obj ;
return true ;
} else {
return false ;
}
}
}
} ,
GUILD_ROLE_MEMBER_ADD : function handleGuildMemberRoleAdd ( arg0 ) {
let guildId ;
let roleId ;
let userId ;
( { guildId , userId , roleId } = arg0 ) ;
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId + " not found during GUILD_MEMBER_UPDATE." ) ;
return false ;
} else if ( null == tmp [ userId ] ) {
return false ;
} else {
const roles = tmp19 . roles ;
if ( roles . includes ( roleId ) ) {
return false ;
} else {
const items = [ ] ;
const arraySpreadResult = HermesBuiltin . arraySpread ( tmp19 . roles , 0 ) ;
items [ arraySpreadResult ] = roleId ;
const sum = arraySpreadResult + 1 ;
tmp19 . roles = items ;
const tmp7 = computeDerivedMemberState ( store4 . getUnsafeMutableRoles ( guild . id ) , tmp19 . roles ) ;
const obj = { } ;
const merged = Object . assign ( tmp19 ) ;
const merged1 = Object . assign ( tmp7 ) ;
tmp [ userId ] = obj ;
return true ;
}
}
}
} ,
GUILD_MEMBER_PROFILE_UPDATE : function handleGuildMemberProfileUpdate ( arg0 ) {
let guildId ;
let guildMember ;
( { guildMember , guildId } = arg0 ) ;
2026-07-23 10:11:24 +00:00
if ( null == dependencyMap [ guildId ] ) {
2026-07-20 16:05:17 +00:00
return false ;
} else {
const guild = store5 . getGuild ( guildId ) ;
if ( null == guild ) {
const _HermesInternal = HermesInternal ;
importDefaultResult . warn ( "Guild " + guildId + " not found during GUILD_MEMBER_UPDATE." ) ;
return false ;
} else {
const obj = { userId : guildMember.user.id , nick : guildMember.nick , guildId , avatar : guildMember.avatar , avatarDecoration : getAvatarDecorationFromServerMember ( guildMember ) , guildRoles : store4.getUnsafeMutableRoles ( guild . id ) } ;
( { roles : obj.roles , premium_since : obj.premiumSince , pending : obj.isPending , joined_at : obj.joinedAt , communication_disabled_until : obj.communicationDisabledUntil , unusual_dm_activity_until : obj.unusualDMActivityUntil , flags : obj.flags } = guildMember ) ;
const _Date = Date ;
obj . fullProfileLoadedTimestamp = Date . now ( ) ;
2026-07-23 10:11:24 +00:00
obj . collectibles = require ( 1829 ) /* parseSkuIdFromServerData */ . parseServerUserCollectibles ( guildMember . collectibles ) ;
const obj2 = require ( 1829 ) /* parseSkuIdFromServerData */ ;
obj . displayNameStyles = require ( 1860 ) /* wrapHue */ . parseServerDisplayNameStyles ( guildMember . display_name_styles ) ;
2026-07-20 16:05:17 +00:00
tmp [ guildMember . user . id ] = createMember ( obj ) ;
trackCommunicationDisabled ( guildId , tmp [ guildMember . user . id ] ) ;
}
}
} ,
IMPERSONATE_UPDATE : handleImpersonateUpdate ,
IMPERSONATE_STOP : handleImpersonateUpdate ,
PASSIVE_UPDATE_V2 : function handlePassiveUpdateV2 ( members ) {
let tmp = members . members . length > 0 ;
if ( tmp ) {
tmp = batchUpdateGuildMembers ( members . guildId , members . members ) ;
}
return tmp ;
} ,
CLEAR_PENDING_CHANNEL_AND_ROLE_UPDATES : function handleClearPendingUpdates ( guildId ) {
if ( null == guildId . guildId ) {
return false ;
} else {
2026-07-23 10:11:24 +00:00
delete tmp [ tmp2 ] ;
2026-07-20 16:05:17 +00:00
}
} ,
LOCAL_MESSAGES_LOADED : function handleLocalMessagesLoaded ( guildId ) {
let iter2 ;
if ( null != guildId . guildId ) {
if ( null != store5 . getGuild ( guildId . guildId ) ) {
2026-07-23 10:11:24 +00:00
let c21 = true ;
let obj = dependencyMap [ guildId . guildId ] ;
2026-07-20 16:05:17 +00:00
if ( null == obj ) {
obj = { } ;
}
2026-07-23 10:11:24 +00:00
dependencyMap [ guildId . guildId ] = obj ;
c21 = true ;
obj = dependencyMap [ guildId . guildId ] ;
2026-07-20 16:05:17 +00:00
if ( null == obj ) {
obj = { } ;
}
2026-07-23 10:11:24 +00:00
dependencyMap [ guildId . guildId ] = obj ;
2026-07-20 16:05:17 +00:00
const tmp4 = _createForOfIteratorHelperLoose ( guildId . members ) ;
let iter = tmp4 ( ) ;
let flag = false ;
let flag2 = false ;
if ( ! iter . done ) {
do {
let value = iter . value ;
2026-07-23 10:11:24 +00:00
let tmp5 = dependencyMap ;
if ( null == dependencyMap [ guildId . guildId ] [ value . userId ] ) {
let tmp6 = dependencyMap ;
dependencyMap [ guildId . guildId ] [ value . userId ] = value ;
2026-07-20 16:05:17 +00:00
flag = true ;
}
iter2 = tmp4 ( ) ;
iter = iter2 ;
flag2 = flag ;
} while ( ! iter2 . done ) ;
}
return flag2 ;
}
}
return false ;
} ,
MESSAGE_CREATE : handleIncomingMessage ,
MESSAGE_UPDATE : handleIncomingMessage ,
LOAD_MESSAGES_SUCCESS : handleLoadMessages ,
LOAD_MESSAGES_AROUND_SUCCESS : handleLoadMessages ,
LOAD_RECENT_MENTIONS_SUCCESS : handleLoadMessages ,
LOAD_PINNED_MESSAGES_SUCCESS : function handleLoadPinnedMessages ( pins ) {
pins = pins . pins ;
const item = pins . forEach ( ( message ) = > {
2026-07-23 10:11:24 +00:00
outer1_48 ( message . message ) ;
2026-07-20 16:05:17 +00:00
} ) ;
} ,
SEARCH_MESSAGES_SUCCESS : handleLoadSearchResults ,
MOD_VIEW_SEARCH_MESSAGES_SUCCESS : handleLoadSearchResults ,
MEMBER_SAFETY_GUILD_MEMBER_SEARCH_SUCCESS : function hangdleMemberSafetyGuildMemberSearchSuccess ( members ) {
members = members . members ;
return batchUpdateGuildMembers ( members . guildId , members . map ( ( member ) = > member . member ) ) ;
} ,
EMBEDDED_ACTIVITY_UPDATE_V2 : function handleEmbeddedActivityUpdateV2 ( instance ) {
instance = instance . instance ;
2026-07-23 10:11:24 +00:00
const embeddedActivityLocationGuildId = require ( 3748 ) /* getEmbeddedActivityLocationChannelId */ . getEmbeddedActivityLocationGuildId ( instance . location ) ;
2026-07-20 16:05:17 +00:00
let tmp2 = null != embeddedActivityLocationGuildId ;
if ( tmp2 ) {
tmp2 = buildMembersFromActivityParticipants ( embeddedActivityLocationGuildId , instance . participants ) ;
}
return tmp2 ;
} ,
INTERACTION_MODAL_CREATE : function handleInteractionModalCreate ( channelId ) {
const channel = store3 . getChannel ( channelId . channelId ) ;
let guild_id ;
if ( null != channel ) {
guild_id = channel . guild_id ;
}
return processResolvedMembers ( channelId . resolved , guild_id ) ;
}
} ) ;
2026-07-23 10:11:24 +00:00
let result = require ( "_possibleConstructorReturn" ) . fileFinishedImporting ( "stores/GuildMemberStore.tsx" ) ;
2026-07-20 16:05:17 +00:00
export default tmp4 ;
export const getUserCommunicationDisabledVersion = function getUserCommunicationDisabledVersion ( guildId , userId ) {
const tmp = getCommunicationDisabledUserKey ( guildId , userId ) ;
let num = - 1 ;
2026-07-23 10:11:24 +00:00
if ( tmp in table3 ) {
num = table3 [ tmp ] ;
2026-07-20 16:05:17 +00:00
}
return num ;
} ;
export { getCommunicationDisabledUserKey } ;
export { getUserIdFromCommunicationDisabledUserKey } ;
export { getGuildIdFromCommunicationDisabledUserKey } ;