import { createAction, props } from '@ngrx/store'; import { BuddyRequest, GroupRequest, GroupDetailData, GroupResponse, UserInfo, RoomRequest } from '@ucap-webmessenger/protocol-sync'; import { RoomInfo, UserInfoShort, UserInfo as RoomUserInfo, InfoRequest } from '@ucap-webmessenger/protocol-room'; import { Info } from '@ucap-webmessenger/protocol-event'; export const buddy2 = createAction( '[Messenger::Sync] Buddy2', props() ); export const buddy2Success = createAction( '[Messenger::Sync] Buddy2 Success', props<{ buddyList: UserInfo[]; syncDate: string }>() ); export const buddy2Failure = createAction( '[Messenger::Sync] Buddy2 Failure', props<{ error: any }>() ); export const group2 = createAction( '[Messenger::Sync] Group2', props() ); export const group2Success = createAction( '[Messenger::Sync] Group2 Success', props<{ groupList: GroupDetailData[]; syncDate: string }>() ); export const group2Failure = createAction( '[Messenger::Sync] Group2 Failure', props<{ error: any }>() ); export const room = createAction( '[Messenger::Sync] Room', props() ); export const roomSuccess = createAction( '[Messenger::Sync] Room Success', props<{ roomList: RoomInfo[]; roomUserInfoMap: { [param: string]: { userInfoShortList: UserInfoShort[]; userInfoList: RoomUserInfo[]; }; }; syncDate: string; }>() ); export const roomFailure = createAction( '[Messenger::Sync] Room Failure', props<{ error: any }>() ); export const updateRoomForNewEventMessage = createAction( '[Messenger::Sync] updateRoomForNewEventMessage', props<{ roomSeq: string; info: Info; }>() ); export const refreshRoom = createAction( '[Messenger::Sync] refresh room in sync', props() ); export const refreshRoomSuccess = createAction( '[Messenger::Sync] refresh room in sync Success', props<{ roomInfo: RoomInfo; userInfoShortList: UserInfoShort[]; userInfoList: RoomUserInfo[]; }>() ); export const refreshRoomFailure = createAction( '[Messenger::Sync] refresh room in sync Failure', props<{ error: any }>() ); export const updateUnreadCount = createAction( '[Messenger::Sync] Update unread count', props<{ roomSeq: string; noReadCnt?: number; }>() );