import { createAction, props } from '@ngrx/store'; import { Info, EventJson, FileEventJson } from '@ucap-webmessenger/protocol-event'; import { MassTalkDownloadRequest, MassTalkDownloadResponse, FileTalkDownloadRequest } from '@ucap-webmessenger/api-common'; import { RightDrawer } from '@app/types'; import { FileDownloadItem } from '@ucap-webmessenger/api'; export const selectedRoom = createAction( '[Messenger::Chat] selectedRoom', props<{ roomSeq: string }>() ); export const clearSelectedRoom = createAction( '[Messenger::Chat] clearSelectedRoom' ); export const clearEvent = createAction('[Messenger::Room] Clear Event'); export const newEventMessage = createAction( '[Messenger::Chat] newEventMessage', props<{ roomSeq: string; info: Info; }>() ); export const selectedMassDetail = createAction( '[Messenger::Chat] selectedMassDetail', props<{ massEventSeq: number }>() ); export const massTalkDownload = createAction( '[Messenger::Chat] massTalkDownload', props() ); export const massTalkDownloadSuccess = createAction( '[Messenger::Chat] massTalkDownload Success', props() ); export const massTalkDownloadFailure = createAction( '[Messenger::Chat] massTalkDownload Failure', props<{ error: any }>() ); export const openRoom = createAction( '[Messenger::Chat] Open Room', props<{ userSeqList: number[]; isTimeRoom?: boolean }>() ); export const selectedRightDrawer = createAction( '[Messenger::Chat] Selected Right Drawer', props<{ req: RightDrawer }>() ); export const clearRightDrawer = createAction( '[Messenger::Chat] Clear Right Drawer', props() ); export const toggleLeftSideDrawer = createAction( '[Messenger::Chat] Toggle Left Side Drawer' ); export const toggleLeftSideDrawerIndicator = createAction( '[Messenger::Chat] Toggle Left Side Drawer Indicator', props<{ show: boolean }>() );