Carbon/src/js/events/membership.js

14 lines
640 B
JavaScript
Raw Normal View History

2020-10-26 22:16:47 +00:00
const {simpleEvent} = require("./event")
2020-10-26 08:10:02 +00:00
2020-10-26 22:16:47 +00:00
const UnknownMembership = simpleEvent((e) => e.type == "m.room.member", (e) => "unknown membership event")
2020-10-26 21:55:27 +00:00
2020-10-26 22:16:47 +00:00
function createMembershipEvent(membership, message) {
return simpleEvent((e) => e.type == "m.room.member" && e.content.membership === membership, message)
2020-10-26 21:55:27 +00:00
}
2020-10-26 08:10:02 +00:00
2020-10-29 09:36:38 +00:00
const JoinedEvent = createMembershipEvent("join", (e) => "joined the room")
2020-10-26 08:10:02 +00:00
const InvitedEvent = createMembershipEvent("invite", (e) => `invited ${e.content.displayname} the room`)
const LeaveEvent = createMembershipEvent("leave", () => "left the room")
2020-10-26 21:55:27 +00:00
module.exports = [JoinedEvent, InvitedEvent, LeaveEvent, UnknownMembership]