Class: Rubycord::Events::ThreadMembersUpdateEvent

Inherits:
Event
  • Object
show all
Defined in:
lib/rubycord/events/threads.rb

Overview

Raised when members are added or removed from a thread.

Instance Attribute Summary collapse

Attributes inherited from Event

#bot

Instance Method Summary collapse

Constructor Details

#initialize(data, bot) ⇒ ThreadMembersUpdateEvent

Returns a new instance of ThreadMembersUpdateEvent.



74
75
76
77
78
79
80
81
82
# File 'lib/rubycord/events/threads.rb', line 74

def initialize(data, bot)
  @bot = bot
  @thread = data.is_a?(Rubycord::Channel) ? data : bot.channel(data["id"].to_i)
  @added_members = data["added_members"]&.map do |member|
    data["guild_id"] ? bot.member(data["guild_id"], member["user_id"]) : bot.user(member["user_id"])
  end || []
  @removed_member_ids = data["removed_member_ids"]&.map(&:resolve_id) || []
  @member_count = data["member_count"]
end

Instance Attribute Details

#added_membersArray<Member, User> (readonly)

Returns:



64
65
66
# File 'lib/rubycord/events/threads.rb', line 64

def added_members
  @added_members
end

#member_countInteger (readonly)

Returns:



70
71
72
# File 'lib/rubycord/events/threads.rb', line 70

def member_count
  @member_count
end

#removed_member_idsArray<Integer> (readonly)

Returns:



67
68
69
# File 'lib/rubycord/events/threads.rb', line 67

def removed_member_ids
  @removed_member_ids
end

#threadChannel (readonly)

Returns:



61
62
63
# File 'lib/rubycord/events/threads.rb', line 61

def thread
  @thread
end