39 lines
883 B
TypeScript
Raw Normal View History

2019-09-25 17:26:19 +09:00
import { Selector, createSelector } from '@ngrx/store';
2019-09-25 18:08:50 +09:00
import { UserInfo, GroupDetailData } from '@ucap-webmessenger/protocol-sync';
2019-09-25 17:26:19 +09:00
export interface State {
buddyInfoList: UserInfo[];
buddy2SyncDate: string;
2019-09-25 18:08:50 +09:00
groupList: GroupDetailData[];
group2SyncDate: string;
2019-09-25 17:26:19 +09:00
}
export const initialState: State = {
buddyInfoList: [],
2019-09-25 18:08:50 +09:00
buddy2SyncDate: '',
groupList: [],
group2SyncDate: ''
2019-09-25 17:26:19 +09:00
};
export function selectors<S>(selector: Selector<any, State>) {
return {
buddyInfoList: createSelector(
selector,
(state: State) => state.buddyInfoList
2019-09-25 18:08:50 +09:00
),
buddy2SyncDate: createSelector(
selector,
(state: State) => state.buddy2SyncDate
),
groupList: createSelector(
selector,
(state: State) => state.groupList
),
group2SyncDate: createSelector(
selector,
(state: State) => state.group2SyncDate
2019-09-25 17:26:19 +09:00
)
};
}