import { createSelector, createFeatureSelector, } from '@ngrx/store'; import { MODULE } from '../member.constant'; import * as MemberEntityStore from './entity/member'; import * as MemberTOTPEntityStore from './entity/member-totp'; import * as MemberSigninContainerStore from './container/signin'; import * as MemberModifyContainerStore from './container/modify'; import * as MemberSignoutContainerStore from './container/signout'; export interface State { member_signin_container: MemberSigninContainerStore.State; member_modify_container: MemberModifyContainerStore.State; member_signout_container: MemberSignoutContainerStore.State; } export const REDUCERS = { member_signin_container: MemberSigninContainerStore.reducer, member_modify_container: MemberModifyContainerStore.reducer, member_signout_container: MemberSignoutContainerStore.reducer, }; export const EFFECTS = [ MemberEntityStore.Effects, MemberTOTPEntityStore.Effects, ]; export const selectState = createFeatureSelector(MODULE.name); export const MemberSigninContainerSelector = MemberSigninContainerStore.getSelectors(createSelector( selectState, (state: State) => state.member_signin_container )); export const MemberModifyContainerSelector = MemberModifyContainerStore.getSelectors(createSelector( selectState, (state: State) => state.member_modify_container )); export const MemberSignoutContainerSelector = MemberSignoutContainerStore.getSelectors(createSelector( selectState, (state: State) => state.member_signout_container ));