import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { EffectsModule } from '@ngrx/effects';
import { StoreModule } from '@ngrx/store';
import { StateModule } from '../../state/state.module';
import { CartEntryEffects } from './effects/cart-entry.effect';
import { CartVoucherEffects } from './effects/cart-voucher.effect';
import { CartEffects } from './effects/cart.effect';
import { MultiCartEffects } from './effects/multi-cart.effect';
import { WishListEffects } from './effects/wish-list.effect';
import { MULTI_CART_FEATURE } from './multi-cart-state';
import {
multiCartMetaReducers,
multiCartReducerProvider,
multiCartReducerToken,
} from './reducers/index';
const effects: any[] = [
CartEffects,
CartEntryEffects,
CartVoucherEffects,
WishListEffects,
MultiCartEffects,
];
@NgModule({
imports: [
CommonModule,
StateModule,
StoreModule.forFeature(MULTI_CART_FEATURE, multiCartReducerToken, {
metaReducers: multiCartMetaReducers,
}),
EffectsModule.forFeature(effects),
],
providers: [multiCartReducerProvider],
})
export class MultiCartStoreModule {}