1+ import { IEventRepository , IUserRepository } from '../@types/repositories'
12import { isDeleteEvent , isEphemeralEvent , isParameterizedReplaceableEvent , isReplaceableEvent , isRequestToVanishEvent } from '../utils/event'
23import { DefaultEventStrategy } from '../handlers/event-strategies/default-event-strategy'
34import { DeleteEventStrategy } from '../handlers/event-strategies/delete-event-strategy'
45import { EphemeralEventStrategy } from '../handlers/event-strategies/ephemeral-event-strategy'
56import { Event } from '../@types/event'
67import { Factory } from '../@types/base'
7- import { IEventRepository } from '../@types/repositories'
88import { IEventStrategy } from '../@types/message-handlers'
99import { IWebSocketAdapter } from '../@types/adapters'
1010import { ParameterizedReplaceableEventStrategy } from '../handlers/event-strategies/parameterized-replaceable-event-strategy'
@@ -13,10 +13,11 @@ import { VanishEventStrategy } from '../handlers/event-strategies/vanish-event-s
1313
1414export const eventStrategyFactory = (
1515 eventRepository : IEventRepository ,
16+ userRepository : IUserRepository ,
1617) : Factory < IEventStrategy < Event , Promise < void > > , [ Event , IWebSocketAdapter ] > =>
1718 ( [ event , adapter ] : [ Event , IWebSocketAdapter ] ) => {
1819 if ( isRequestToVanishEvent ( event ) ) {
19- return new VanishEventStrategy ( adapter , eventRepository )
20+ return new VanishEventStrategy ( adapter , eventRepository , userRepository )
2021 } else if ( isReplaceableEvent ( event ) ) {
2122 return new ReplaceableEventStrategy ( adapter , eventRepository )
2223 } else if ( isEphemeralEvent ( event ) ) {
0 commit comments