Skip to content

Commit

Permalink
Added MessageRemoveEvent
Browse files Browse the repository at this point in the history
  • Loading branch information
Bjornskjald committed Jun 5, 2019
1 parent 1e9421b commit 400073a
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 8 deletions.
5 changes: 4 additions & 1 deletion src/ClientEvents.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ import {
ChangeThreadThemeEvent,
DeliveryReceiptEvent,
ReadReceiptEvent,
EventType
EventType,
MessageRemoveEvent
} from './types/Events'

export default interface ClientEvents {
Expand Down Expand Up @@ -46,4 +47,6 @@ export default interface ClientEvents {

deliveryReceiptEvent: (deliveryReceiptEvent: DeliveryReceiptEvent) => void,
readReceiptEvent: (readReceiptEvent: ReadReceiptEvent) => void

messageRemoveEvent: (messageRemoveEvent: MessageRemoveEvent) => void
}
5 changes: 4 additions & 1 deletion src/types/Events.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ export type EventType = (
'changeThreadThemeEvent' |

'deliveryReceiptEvent' |
'readReceiptEvent'
'readReceiptEvent' |
'messageRemoveEvent'
)

export interface Event {
Expand Down Expand Up @@ -70,3 +71,5 @@ export interface DeliveryReceiptEvent extends Event {
export interface ReadReceiptEvent extends Event {
receiverId: string
}

export interface MessageRemoveEvent extends MessageEvent {}
23 changes: 17 additions & 6 deletions src/types/events/parseDeltaEvent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,28 @@ import {
ThreadNameEvent
} from './ThreadEvents'
import {
Event,
DeliveryReceiptEvent,
ReadReceiptEvent,
EventType
Event,
DeliveryReceiptEvent,
ReadReceiptEvent,
EventType,
MessageRemoveEvent
} from '../Events'
import parseAdminMessage from './parseAdminMessage'
import { getThreadId } from '../Message'

export default function parseDeltaEvent (event: any): { type: EventType, event: Event } {
if (event.deltaAdminTextMessage) return parseAdminMessage(event.deltaAdminTextMessage)

if (event.deltaReplaceMessage) {
const delta = event.deltaReplaceMessage
if (delta.newMessage.messageMetadata.unsendType) {
return {
type: 'messageRemoveEvent',
event: getEventMetadata(delta.newMessage) as MessageRemoveEvent
}
}
}

if (event.deltaThreadName) {
const delta = event.deltaThreadName
return {
Expand All @@ -32,7 +43,7 @@ export default function parseDeltaEvent (event: any): { type: EventType, event:
type: 'deliveryReceiptEvent',
event: {
threadId: getThreadId(delta),
receiverId: delta.actorFbId || getThreadId(delta)
receiverId: delta.actorFbId.toString() || getThreadId(delta)
} as DeliveryReceiptEvent
}
}
Expand All @@ -43,7 +54,7 @@ export default function parseDeltaEvent (event: any): { type: EventType, event:
type: 'readReceiptEvent',
event: {
threadId: getThreadId(delta),
receiverId: delta.actorFbId || getThreadId(delta)
receiverId: delta.actorFbId.toString() || getThreadId(delta)
} as ReadReceiptEvent
}
}
Expand Down

0 comments on commit 400073a

Please sign in to comment.