import { Selector, createSelector } from '@ngrx/store'; import { UserInfo, GroupDetailData } from '@ucap-webmessenger/protocol-sync'; export interface State { buddyInfoList: UserInfo[]; buddy2SyncDate: string; groupList: GroupDetailData[]; group2SyncDate: string; } export const initialState: State = { buddyInfoList: [], buddy2SyncDate: '', groupList: [], group2SyncDate: '' }; export function selectors(selector: Selector) { return { buddyInfoList: createSelector( selector, (state: State) => state.buddyInfoList ), buddy2SyncDate: createSelector( selector, (state: State) => state.buddy2SyncDate ), groupList: createSelector( selector, (state: State) => state.groupList ), group2SyncDate: createSelector( selector, (state: State) => state.group2SyncDate ) }; }